Attention is currently required from: neels, pespin.
1 comment:
File src/stream.c:
Patch Set #1, Line 282: ret = sctp_recvmsg(fd, msg->tail, msgb_tailroom(msg), NULL, NULL, &sinfo, &flags);
man sctp_recvmsg is a bit blurry on whether sinfo needs to be initialized, so I think it's fine to b […]
I would assume that any such socket related call will not need zero-initialization of pure output arguments. If it's an input, it needs initialization. But it's exclusively a caller-allocated chunk of memory for output.
Lookig at the actual implementation at https://github.com/sctp/lksctp-tools/blob/master/src/lib/recvmsg.c - there is a code path in case recvmsg returns a non-error resposne but then no cmsg for SCTP_SNDRCV is found. In that case it's not initialized by sctp_recvmsg. But then it is a kernel bug and zero-initialization is just plastering over it. Our code needs the sctp_sndrcvinfo to know which stream / PPID the message was received on.
So I think this change is "side-ways development" and not addressing the actual issue: There should probably be an ASSERT or soemthing in libsctp... I'll raise a bug there.
To view, visit change 37991. To unsubscribe, or for help writing mail filters, visit settings.