|Linux Programmer's Manual
sctp_recvmsg - Receive a message from a SCTP socket.
#include <sys/types.h> #include <sys/socket.h> #include <netinet/sctp.h> int sctp_recvmsg(int sd, void * msg, size_t len, struct sockaddr * from, socklen_t * fromlen, struct sctp_sndrcvinfo * sinfo, int * msg_flags);
sctp_recvmsg is a wrapper library function that can be used to receive a message from a socket while using the advanced features of SCTP. sd is the socket descriptor on which the message pointed to by msg of length len is received.
If from is not NULL, the source address of the message is filled in. The argument fromlen is a value-result parameter. initialized to the size of the buffer associated with from , and modified on return to indicate the actual size of the address stored.
sinfo is a pointer to a sctp_sndrcvinfo structure to be filled upon receipt of the message. msg_flags is a pointer to a integer that is filled with any message flags like MSG_NOTIFICATION or MSG_EOR. The value of msg_flags pointer should be initialized to 0 to avoid unexpected behavior; msg_flags is also used as an input flags argument to recvmsg function.
On success, sctp_recvmsg returns the number of bytes received or -1 if an error occurred.