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. 12*921ca2fdSEd Maste.\" 3. Neither the name of the University nor the names of its contributors 13d8b5fd91SRandall Stewart.\" may be used to endorse or promote products derived from this software 14d8b5fd91SRandall Stewart.\" without specific prior written permission. 15d8b5fd91SRandall Stewart.\" 16d8b5fd91SRandall Stewart.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 17d8b5fd91SRandall Stewart.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18d8b5fd91SRandall Stewart.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19d8b5fd91SRandall Stewart.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 20d8b5fd91SRandall Stewart.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21d8b5fd91SRandall Stewart.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22d8b5fd91SRandall Stewart.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23d8b5fd91SRandall Stewart.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24d8b5fd91SRandall Stewart.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25d8b5fd91SRandall Stewart.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26d8b5fd91SRandall Stewart.\" SUCH DAMAGE. 27d8b5fd91SRandall Stewart.\" 28d8b5fd91SRandall Stewart.\" $FreeBSD$ 29d8b5fd91SRandall Stewart.\" 30c8918191SChristian Brueffer.Dd June 19, 2007 31d8b5fd91SRandall Stewart.Dt SCTP_CONNECTX 3 32d8b5fd91SRandall Stewart.Os 33d8b5fd91SRandall Stewart.Sh NAME 34d8b5fd91SRandall Stewart.Nm sctp_connectx 35a3fb6da9SGlen Barber.Nd connect an SCTP socket with multiple destination addresses 36d8b5fd91SRandall Stewart.Sh LIBRARY 37d8b5fd91SRandall Stewart.Lb libc 38d8b5fd91SRandall Stewart.Sh SYNOPSIS 39d8b5fd91SRandall Stewart.In sys/types.h 40d8b5fd91SRandall Stewart.In sys/socket.h 417c376800SRandall Stewart.In netinet/sctp.h 42d8b5fd91SRandall Stewart.Ft int 43a47698f8SChristian Brueffer.Fn sctp_connectx "int sd" "struct sockaddr *addrs" "int addrcnt" "sctp_assoc_t *id" 44d8b5fd91SRandall Stewart.Sh DESCRIPTION 45d8b5fd91SRandall StewartThe 46d8b5fd91SRandall Stewart.Fn sctp_connectx 47d8b5fd91SRandall Stewartcall attempts to initiate an association to a peer SCTP 4816c90ceeSChristian Bruefferendpoint. 4916c90ceeSChristian BruefferThe call operates similarly to 50d8b5fd91SRandall Stewart.Fn connect 51d8b5fd91SRandall Stewartbut it also provides the ability to specify multiple destination 5216c90ceeSChristian Bruefferaddresses for the peer. 5316c90ceeSChristian BruefferThis allows a fault tolerant method 5416c90ceeSChristian Bruefferof initiating an association. 5516c90ceeSChristian BruefferWhen one of the peers addresses 56d8b5fd91SRandall Stewartis unreachable, the subsequent listed addresses will also be used 57d8b5fd91SRandall Stewartto set up the association with the peer. 58d8b5fd91SRandall Stewart.Pp 59d8b5fd91SRandall StewartThe user also needs to consider that any address listed in an 60d8b5fd91SRandall Stewart.Fn sctp_connectx 6116c90ceeSChristian Brueffercall is also considered "confirmed". 62d8b5fd91SRandall StewartA confirmed address is one in 63d8b5fd91SRandall Stewartwhich the SCTP transport will trust is a part of the association 64d8b5fd91SRandall Stewartand it will not send a confirmation heartbeat to it with 65d8b5fd91SRandall Stewarta random nonce. 66d8b5fd91SRandall Stewart.Pp 67d8b5fd91SRandall StewartIf the peer SCTP stack does not list one or more of 68d8b5fd91SRandall Stewartthe provided addresses in its response message then 69d8b5fd91SRandall Stewartthe extra addresses sent in the 70d8b5fd91SRandall Stewart.Fn sctp_connectx 71c8918191SChristian Brueffercall will be silently discarded from the association. 72c8918191SChristian BruefferOn 73c8918191SChristian Brueffersuccessful completion the provided 74a47698f8SChristian Brueffer.Fa id 75c8918191SChristian Bruefferwill be 767e94ae79SRandall Stewartfilled in with the association identification of the newly 777e94ae79SRandall Stewartforming association. 78d8b5fd91SRandall Stewart.Sh RETURN VALUES 79d8b5fd91SRandall StewartThe call returns 0 on success and -1 upon failure. 80d8b5fd91SRandall Stewart.Sh ERRORS 81d8b5fd91SRandall StewartThe 82d8b5fd91SRandall Stewart.Fn sctp_connectx 83a47698f8SChristian Bruefferfunction can return the following errors: 84d8b5fd91SRandall Stewart.Bl -tag -width Er 85d8b5fd91SRandall Stewart.It Bq Er EINVAL 86d8b5fd91SRandall StewartAn address listed has an invalid family or no 87d8b5fd91SRandall Stewartaddresses were provided. 88d8b5fd91SRandall Stewart.It Bq Er E2BIG 89d8b5fd91SRandall StewartThe size of the address list exceeds the amount of 90d8b5fd91SRandall Stewartdata provided. 91d8b5fd91SRandall Stewart.It Bq Er EBADF 92d8b5fd91SRandall StewartThe argument 93d8b5fd91SRandall Stewart.Fa s 94d8b5fd91SRandall Stewartis not a valid descriptor. 95d8b5fd91SRandall Stewart.It Bq Er ENOTSOCK 96d8b5fd91SRandall StewartThe argument 97d8b5fd91SRandall Stewart.Fa s 98d8b5fd91SRandall Stewartis not a socket. 99d8b5fd91SRandall Stewart.El 100d8b5fd91SRandall Stewart.Sh SEE ALSO 101d8b5fd91SRandall Stewart.Xr connect 2 , 10216c90ceeSChristian Brueffer.Xr sctp 4 103