SCTP_RECVMSG(3SOCKET) Sockets Library Functions SCTP_RECVMSG(3SOCKET)

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)
July 14, 2004 OmniOS