Don't use msg on error.
Don't attempt to access msg structure if recvmsg returns an error. PR#3483 Reviewed-by: Stephen Henson <steve@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org>
This commit is contained in:
parent
32bb5c3953
commit
012aa9ec76
@ -1082,6 +1082,13 @@ static int dgram_sctp_read(BIO *b, char *out, int outl)
|
|||||||
msg.msg_flags = 0;
|
msg.msg_flags = 0;
|
||||||
n = recvmsg(b->num, &msg, 0);
|
n = recvmsg(b->num, &msg, 0);
|
||||||
|
|
||||||
|
if (n <= 0)
|
||||||
|
{
|
||||||
|
if (n < 0)
|
||||||
|
ret = n;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
if (msg.msg_controllen > 0)
|
if (msg.msg_controllen > 0)
|
||||||
{
|
{
|
||||||
for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg))
|
for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg))
|
||||||
@ -1121,13 +1128,6 @@ static int dgram_sctp_read(BIO *b, char *out, int outl)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (n <= 0)
|
|
||||||
{
|
|
||||||
if (n < 0)
|
|
||||||
ret = n;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (msg.msg_flags & MSG_NOTIFICATION)
|
if (msg.msg_flags & MSG_NOTIFICATION)
|
||||||
{
|
{
|
||||||
snp = (union sctp_notification*) out;
|
snp = (union sctp_notification*) out;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user