sctp_recvmsg - receive message from an SCTP socket
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:
from
Pointer to an address, filled in with the sender's
address
fromlen
Size of the buffer associated with the from
parameter
sinfo
Pointer to an sctp_sndrcvinfo structure, filled in
upon the receipt of the message
msg_flags
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.
EBADF
The s argument is an invalid file
descriptor.
ENOTSOCK
The s argument is not a socket.
EOPNOTSUPP
MSG_OOB is set as a flag.
ENOTCONN
There is no established association.
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE
TYPE |
ATTRIBUTE VALUE |
Interface Stability |
Evolving |
MT-Level |
Safe |
in.h(3HEAD), socket.h(3HEAD), libsctp(3LIB),
accept(3SOCKET), bind(3SOCKET), connect(3SOCKET),
listen(3SOCKET), recvmsg(3SOCKET),
sctp_opt_info(3SOCKET), setsockopt(3SOCKET),
sockaddr(3SOCKET), socket(3SOCKET), sctp(4P)