cc [ flag... ] file... –lsocket –lnsl – lsctp [ library... ] #include <sys/types.h> #include <sys/socket.h> #include <netinet/sctp.h> ssize_t sctp_recvmsg(int s, void *msg, size_t len, struct sockaddr *from, socklen_t *fromlen, struct sctp_sndrcvinfo *sinfo, int *msg_flags);
The sctp_recvmsg() function receives a message from the SCTP endpoint s.
In addition to specifying the message buffer msg and the length len of the buffer, the following parameters can be set:
Pointer to an address, filled in with the sender's address
Size of the buffer associated with the from parameter
Pointer to an sctp_sndrcvinfo structure, filled in upon the receipt of the message
Message flags such as MSG_CTRUNC, MSG_NOTIFICATION , MSG_EOR
The sinfo parameter is filled in only when the caller has enabled sctp_data_io_events by calling setsockopt() with the socket option SCTP_EVENTS.
Upon successful completion, the sctp_recvmsg() function returns the number of bytes received. The function returns -1 if an error occurs.
The sctp_recvmsg() function fails under the following conditions.
The s argument is an invalid file descriptor.
The s argument is not a socket.
MSG_OOB is set as a flag.
There is no established association.
See attributes(5) for descriptions of the following attributes:
|
accept(3SOCKET), bind(3SOCKET), connect(3SOCKET), in.h( 3HEAD), libsctp(3LIB), listen(3SOCKET), recvmsg(3SOCKET), sctp_opt_info(3SOCKET), setsockopt(3SOCKET), socket(3SOCKET), socket.h (3HEAD), sctp( 7P)