|
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | SEE ALSO | COLOPHON |
|
|
|
SCTP_SENDMSG(3) Linux Programmer's Manual SCTP_SENDMSG(3)
sctp_sendmsg - Send a message from a SCTP socket.
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/sctp.h>
int sctp_sendmsg(int sd, const void * msg, size_t len,
struct sockaddr *to, socklen_t tolen,
uint32_t ppid, uint32_t flags,
uint16_t stream_no, uint32_t timetolive,
uint32_t context);
sctp_sendmsg is a wrapper library function that can be used to
send a message from a socket while using the advanced features of
SCTP. sd is the socket descriptor from which the message pointed
to by msg of length len is sent. to is the destination address of
the message and tolen is the length of the destination address.
stream_no identifies the stream number that the application wishes
to send this message to. flags parameter is composed of a bitwise
OR of the following values.
SCTP_UNORDERED
This flags requests the un-ordered delivery of the message.
SCTP_ADDR_OVER
This flag, in the one-to-many style, requests the SCTP
stack to override the primary destination address with
address specified in to.
SCTP_ABORT
Setting this flag causes the specified association to abort
by sending an ABORT message to the peer(one-to-many style
only). The ABORT chunk will contain an error cause 'User
Initiated Abort' with cause code 12. The cause specific
information of this error cause is provided in msg.
SCTP_EOF
Setting this flag invokes the SCTP graceful shutdown
procedure on the specific association(one-to-many style
only).
SCTP_SENDALL
This flag, if set, will cause a one-to-many style socket to
send the message to all associations that are currently
established on this socket. For the one-to-one style
socket, this flag has no effect.
SCTP_SACK_IMMEDIATELY
This flag allows the application to set the I bit of the
last DATA chunk when sending each user message to make sure
the corresponding SACK can be sent by peer without delay.
SCTP_PR_SCTP_{TTL|RTX|PRIO}
One of these 3 pr_policies can be used through this flag
with its pr_value set in timetolive parameter for this
message. Note that sctp_sendv(3) with infotype
SCTP_SENDV_PRINFO also works for PR-SCTP.
timetolive specifies the time duration in milliseconds. The
sending side will expire the message if the message has not been
sent to the peer within this time period. A value of 0 indicates
that no timeout should occur on this message. It also works as the
pr_value if flags parameter is set to pr_policy. ppid is an
opaque unsigned value that is passed to the remote end along with
the message. context is a 32 bit opaque value that is passed back
to the upper layer along with the undelivered message if an error
occurs on the send of the message.
On success, sctp_sendmsg returns the number of bytes sent or -1 if
an error occurred.
sctp(7) sctp_bindx(3), sctp_connectx(3), sctp_sendv(3),
sctp_send(3), sctp_recvmsg(3), sctp_recvv(3), sctp_peeloff(3),
sctp_getpaddrs(3), sctp_getladdrs(3), sctp_opt_info(3),
This page is part of the lksctp-tools (Linux kernel SCTP tools)
project. Information about the project can be found at [unknown
-- if you know, please contact [email protected]] If you have a
bug report for this manual page, send it to [email protected].
This page was obtained from the project's upstream Git repository
⟨https://github.com/sctp/lksctp-tools.git⟩ on 2025-08-11. (At
that time, the date of the most recent commit that was found in
the repository was 2024-09-26.) If you discover any rendering
problems in this HTML version of the page, or you believe there is
a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to
[email protected]
Linux 2.6 2004-10-25 SCTP_SENDMSG(3)
Pages that refer to this page: sctp_bindx(3), sctp_connectx(3), sctp_getladdrs(3), sctp_getpaddrs(3), sctp_opt_info(3), sctp_peeloff(3), sctp_recvmsg(3), sctp_recvv(3), sctp_send(3), sctp(7)