Copyright (c) 2004, Sun Microsystems, Inc.
All Rights Reserved.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
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
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. EBADF
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:
ATTRIBUTE TYPE ATTRIBUTE VALUE |
Interface Stability Evolving |
MT-Level Safe |
accept(3SOCKET), bind(3SOCKET), connect(3SOCKET), in.h(3HEAD), libsctp(3LIB), listen(3SOCKET), recvmsg(3SOCKET), sctp_opt_info(3SOCKET), setsockopt(3SOCKET), sockaddr(3SOCKET), socket(3SOCKET), socket.h(3HEAD), sctp(7P)