sctp_peeloff(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | NOTES | SEE ALSO | COLOPHON

SCTP_PEELOFF(3)         Linux Programmer's Manual        SCTP_PEELOFF(3)

NAME         top

       sctp_peeloff - Branch off an association into a separate socket.

SYNOPSIS         top

       #include <sys/types.h>
       #include <sys/socket.h>
       #include <netinet/sctp.h>

       int sctp_peeloff(int sd, sctp_assoc_t assoc_id);
       int sctp_peeloff_flags(int sd, sctp_assoc_t assoc_id, unsigned flags);

DESCRIPTION         top

       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.

RETURN VALUE         top

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

ERRORS         top

       EBADF  sd 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.

NOTES         top

       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.

SEE ALSO         top

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

COLOPHON         top

       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 man-pages@man7.org] If you have a
       bug report for this manual page, send it to sctp@vger.kernel.org.
       This page was obtained from the project's upstream Git repository
       ⟨https://github.com/sctp/lksctp-tools.git⟩ on 2023-12-22.  (At
       that time, the date of the most recent commit that was found in
       the repository was 2023-04-04.)  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
       man-pages@man7.org

Linux 2.6                      2005-10-25                SCTP_PEELOFF(3)

Pages that refer to this page: sctp_bindx(3)sctp_connectx(3)sctp_getladdrs(3)sctp_getpaddrs(3)sctp_opt_info(3)sctp_recvmsg(3)sctp_recvv(3)sctp_send(3)sctp_sendmsg(3)sctp_sendv(3)sctp(7)