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