net: sctp: implement rfc6458, 5.3.4. SCTP_SNDINFO cmsg support
This patch implements section 5.3.4. of RFC6458, that is, support for 'SCTP Send Information Structure' (SCTP_SNDINFO) which can be placed into ancillary data cmsghdr structure for sendmsg() calls. The sctp_sndinfo structure is defined as per RFC as below ... struct sctp_sndinfo { uint16_t snd_sid; uint16_t snd_flags; uint32_t snd_ppid; uint32_t snd_context; sctp_assoc_t snd_assoc_id; }; ... and supplied under cmsg_level IPPROTO_SCTP, cmsg_type SCTP_SNDINFO, while cmsg_data[] contains struct sctp_sndinfo. An sctp_sndinfo item always corresponds to the data in msg_iov. Joint work with Daniel Borkmann. Signed-off-by: Geir Ola Vaagland <geirola@gmail.com> Signed-off-by: Daniel Borkmann <dborkman@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
1a98c69af1
commit
63b949382c
@@ -1919,7 +1919,8 @@ struct sctp_chunk *sctp_get_ecne_prepend(struct sctp_association *asoc);
|
||||
/* A convenience structure to parse out SCTP specific CMSGs. */
|
||||
typedef struct sctp_cmsgs {
|
||||
struct sctp_initmsg *init;
|
||||
struct sctp_sndrcvinfo *info;
|
||||
struct sctp_sndrcvinfo *srinfo;
|
||||
struct sctp_sndinfo *sinfo;
|
||||
} sctp_cmsgs_t;
|
||||
|
||||
/* Structure for tracking memory objects */
|
||||
|
Reference in New Issue
Block a user