Provided by: libsctp-dev_1.0.21+dfsg-1_amd64 bug

NAME

       sctp_sendmsg - Send a message from a SCTP socket.

SYNOPSIS

       #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);

DESCRIPTION

       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.

RETURN VALUE

       On success, sctp_sendmsg returns the number of bytes sent or -1 if an error occurred.

SEE ALSO

       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),