JMÉNO
connect − inicializuj spojení soketu
SYNTAXE
#include
<sys/types.h>
#include <sys/socket.h>
int connect(int sockfd, struct sockaddr *serv_addr, int addrlen );
POPIS
Parametr sockfd je soket. Je-li jeho typ SOCK_DGRAM, potom toto volání specifikuje, kam má tento soket standardně posílat data. Tato adresa je jediným místem, odkud a kam budou přijímány, resp. posílány datagramy. Je-li typ soketu SOCK_STREAM , potom se toto volání pokusí navázat spojení s jiným soketem, který je specifikován v serv_addr, což je adresa v jmenném prostoru soketu. Každý jmenný prostor interpretuje adresu v serv_addr podle svého. Obvykle se mohou proudové sokety spojit pouze jednou; datagramové sokety mohou použít volání connect vícekrát. Datagramové sokety mohou zrušit asociovaný soket tak, že se pokusí spojit s nějakou neplatnou adresou (nebo s adesou NULL).
NÁVRATOVÁ HODNOTA
Je-li spojení navázáno, je vrácena 0, jinak −1 a externí proměnná errno je příslušně nastavena.
CHYBY
Tento seznam je pouze všeobecný. Mohou existovat další specifické chyby pro použitý jmenný prostor.
EBADF |
Špatný deskriptor. |
|||
EFAULT |
Adresa soketu je mimo adresový prostor procesu. |
ENOTSOCK
Deskriptor není platným deskriptorem soketu.
EISCONN
Soket je již spojen.
ECONNREFUSED
Spojení bylo serverem odmítnuto.
ETIMEDOUT
Časový limit pro spojení vypršel.
ENETUNREACH
Síť není dosažitelná.
EADDRINUSE
Adresa je již používána.
SPLŇUJE STANDARDY
SVr4, 4.4BSD (volání connect se poprvé objevilo v BSD 4.2). SVr4 dokumentuje další chybové kódy: EADDRNOTAVAIL, EINVAL, EAFNOSUPPORT, EALREADY, EINTR, EPROTOTYPE, ENOSR.
DALŠÍ INFORMACE
accept(2), bind(2), listen(2), socket(2), getsockname(2)
VAROVÁNÍ
Překlad je pravděpodobně zastaralý. Pokud chcete pomoci s jeho aktualizací, zamiřte na http://man-pages-cs-wiki.homelinux.net/