diff options
author | Raimo Niskanen <[email protected]> | 2010-09-02 11:36:37 +0200 |
---|---|---|
committer | Raimo Niskanen <[email protected]> | 2010-09-02 11:36:37 +0200 |
commit | 9ea58dff408c0c72f5a6ad0e11b521a80292b024 (patch) | |
tree | baa9d1b156746ad1d1e0312ffb989218c54fd3d2 /erts/emulator/drivers/common/inet_drv.c | |
parent | 9a30a97f07a68fc5a2f1c0095bdd88818e94089a (diff) | |
parent | 8a0e1429ef2099378cdab0288224207d4d64332d (diff) | |
download | otp-9ea58dff408c0c72f5a6ad0e11b521a80292b024.tar.gz otp-9ea58dff408c0c72f5a6ad0e11b521a80292b024.tar.bz2 otp-9ea58dff408c0c72f5a6ad0e11b521a80292b024.zip |
Merge branch 'rani/sctp-sndrcvinfo/OTP-8795' into dev
* rani/sctp-sndrcvinfo/OTP-8795:
Fix xfer_active close expection for Solaris behaviour
Keep default #sctp_sndrcvinfo{} fields on gen_sctp:send/4
Fill in sinfo_assoc_id in struct sctp_sndrcvinfo for getopt()
Conflicts:
lib/kernel/test/gen_sctp_SUITE.erl
Diffstat (limited to 'erts/emulator/drivers/common/inet_drv.c')
-rw-r--r-- | erts/emulator/drivers/common/inet_drv.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/erts/emulator/drivers/common/inet_drv.c b/erts/emulator/drivers/common/inet_drv.c index 221904c114..79e58beb40 100644 --- a/erts/emulator/drivers/common/inet_drv.c +++ b/erts/emulator/drivers/common/inet_drv.c @@ -6193,6 +6193,10 @@ static int sctp_fill_opts(inet_descriptor* desc, char* buf, int buflen, struct sctp_sndrcvinfo sri; unsigned int sz = sizeof(sri); + if (buflen < ASSOC_ID_LEN) RETURN_ERROR(spec, -EINVAL); + sri.sinfo_assoc_id = GET_ASSOC_ID(buf); + buf += ASSOC_ID_LEN; + buflen -= ASSOC_ID_LEN; if (sock_getopt(desc->s, IPPROTO_SCTP, SCTP_DEFAULT_SEND_PARAM, &sri, &sz) < 0) continue; /* Fill in the response: */ |