Путеводитель по Руководству Linux

  User  |  Syst  |  Libr  |  Device  |  Files  |  Other  |  Admin  |  Head  |



   sctp_peeloff    ( 3 )

разветвите ассоциацию в отдельный сокет (Branch off an association into a separate socket.)

Имя (Name)

sctp_peeloff - Branch off an association into a separate socket.

Синопсис (Synopsis)

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

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)

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

Ошибки (Error)

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.


Примечание (Note)

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)

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