logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

sctp_peeloff - Branch off an association into a separate socket.

Description

sctp_peeloff  branches  off  an  existing  association  assoc_id  on a one-to-many style socket sd into a
       separate socket. The new socket is a one-to-one style socket.

       This is particularly desirable when, for instance, the application wishes to have a  number  of  sporadic
       message  senders/receivers  remain  under  the  original  one-to-many  style socket, but branch off those
       assocations carrying high volume data traffic into their own separate socket descriptors.

       sctp_peeloff_flags is a variant of sctp_peeloff, in which flags describing  the  behavior  of  the  newly
       peeled off socket can be specified.  Currently the supported flags are:

       SOCK_NONBLOCK
              Specifies that the new socket should not block on io operations.

       SOCK_CLOEXEC
              Specifies that the new socket should be closed when the owning process calls exec.

Errors

EBADFsd is not a valid descriptor.

       EINVAL The assoc id passed is invalid or if the socket is a one-to-one style socket.

       ENOTSOCK
              Argument is a descriptor for a file, not a socket.

Name

       sctp_peeloff - Branch off an association into a separate socket.

Notes

       sctp_peeloff_flags is a linux specific variant of sctp_peeloff.  While it will compile on other systems,
       its use will result in an error return.  Portable code should use sctp_peeloff.

Return Value

       On success, the new socket descriptor representing the branched-off asociation is returned.  On error, -1
       is returned, and errno is set appropriately.

See Also

sctp(7)  sctp_bindx(3),  sctp_connectx(3), sctp_sendmsg(3), sctp_sendv(3), sctp_send(3), sctp_recvmsg(3),
       sctp_recvv(3), sctp_getpaddrs(3), sctp_getladdrs(3), sctp_opt_info(3),

Linux 2.6                                          2005-10-25                                    SCTP_PEELOFF(3)

Synopsis

#include<sys/types.h>#include<sys/socket.h>#include<netinet/sctp.h>intsctp_peeloff(intsd,sctp_assoc_tassoc_id);intsctp_peeloff_flags(intsd,sctp_assoc_tassoc_id,unsignedflags);

See Also