Scroll to navigation

CONNECT(2) Linux - příručka programátora CONNECT(2)

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.

Špatný deskriptor.
Adresa soketu je mimo adresový prostor procesu.
Deskriptor není platným deskriptorem soketu.
Soket je již spojen.
Spojení bylo serverem odmítnuto.
Časový limit pro spojení vypršel.
Síť není dosažitelná.
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/

5. dubna 1997 Linux 0.99.11