xref: /freebsd/lib/libc/net/sctp_bindx.3 (revision f0a75d274af375d15b97b830966b99a02b7db911)
1.\" Copyright (c) 1983, 1991, 1993
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\" 3. All advertising materials mentioning features or use of this software
13.\"    must display the following acknowledgement:
14.\"	This product includes software developed by the University of
15.\"	California, Berkeley and its contributors.
16.\" 4. Neither the name of the University nor the names of its contributors
17.\"    may be used to endorse or promote products derived from this software
18.\"    without specific prior written permission.
19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE.
31.\"
32.\"     From: @(#)send.2	8.2 (Berkeley) 2/21/94
33.\" $FreeBSD$
34.\"
35.Dd December 15, 2006
36.Dt SCTP_BINDX 3
37.Os
38.Sh NAME
39.Nm sctp_bindx
40.Nd bind or unbind an SCTP socket to a list of addresses.
41.Sh LIBRARY
42.Lb libc
43.Sh SYNOPSIS
44.In sys/types.h
45.In sys/socket.h
46.In netinet/sctp.h
47.Ft int
48.Fn sctp_bindx "int s" "struct sockaddr *addrs" "int num" "int type"
49.Sh DESCRIPTION
50The
51.Fn sctp_bindx
52call binds or unbinds a address or a list of addresses to an
53SCTP endpoint. This allows a user to bind a subset of
54addresses. The
55.Fn sctp_bindx
56call operates similarly to
57.Fn bind
58but allows a list of addresses and also allows a bind or an
59unbind. The argument
60.Fa s
61must be a valid SCTP socket descriptor. The argument
62.Fa addrs
63is a list of addresses (where the list may be only 1 in
64length) that the user wishes to bind or unbind to the
65socket. The argument
66.Fa type
67must be one of the following values.
68.Pp
69.Dv SCTP_BINDX_ADD_ADDR
70This value indicates that the listed address(es) need to
71be added to the endpoint.
72.Pp
73.Dv SCTP_BINDX_DEL_ADDR
74This value indicates that the listed address(es) need to
75be removed from the endpoint.
76.Pp
77Note that when a user adds or deletes an address to an
78association if the dynamic address flag "net.inet.sctp.auto_asconf"
79is enabled any associations in the endpoint will attempt to
80have the address(es) added dynamically to the existing
81association.
82.Sh RETURN VALUES
83The call returns 0 on success and -1 upon failure.
84.Sh ERRORS
85The
86.Fn sctp_bindx
87can return the following errors.
88.Bl -tag -width Er
89.It Bq Er EINVAL
90This value is returned if the
91.Fa type
92field is not one of the allowed values (see above).
93.It Bq Er ENOMEM
94This value is returned if the number of addresses
95being added causes a memory allocation failure in
96the call.
97.It Bq Er EBADF
98The argument
99.Fa s
100is not a valid descriptor.
101.It Bq Er ENOTSOCK
102The argument
103.Fa s
104is not a socket.
105.El
106.Sh SEE ALSO
107.Xr sctp 4 ,
108.Xr bind 2 ,
109
110