Provided by: manpages-cs-dev_4.13-4_all bug

JMÉNO

       connect - inicializuj spojení soketu

POUŽITÍ

       #include <sys/types.h>          /* Viz POZNÁMKY */
       #include <sys/socket.h>

       int connect(int sockfd, const struct sockaddr *addr,
                   socklen_t addrlen);

POPIS

       Systémové  volání  connect() připojí soket specifikovaný v sockfd k adrese specifikované v addr. Parametr
       addrlen udává velikost addr. Formát adresy v addr je dán adresovým prostorem deskriptoru  v  sockfd.  Viz
       socket(2) pro více detailů.

       Parametr  sockfd  je  soket.  Je-li  jeho  typ  SOCK_DGRAM, pak je addr jediným místem, odkud a kam budou
       přijímány, resp. posílány datagramy. Je-li typ soketu SOCK_STREAM,  nebo  SOCK_SEQPACKET  potom  se  toto
       volání  pokusí navázat spojení se soketem, který je specifikován v addr, což je adresa v jmenném prostoru
       soketu. Každý jmenný prostor interpretuje adresu v addr.

       Some protocol sockets (e.g., UNIX domain stream sockets)  may successfully connect()  only once.

       Some protocol sockets (e.g., datagram sockets in the  UNIX  and  Internet  domains)   may  use  connect()
       multiple times to change their association.

       Some  protocol  sockets  (e.g., TCP sockets as well as datagram sockets in the UNIX and Internet domains)
       may dissolve the association by connecting to an address with the sa_family member  of  sockaddr  set  to
       AF_UNSPEC;  thereafter,  the socket can be connected to another address. (AF_UNSPEC is supported on Linux
       since kernel 2.2.)

NÁVRATOVÉ HODNOTY

       Je-li spojení navázáno, je vrácena 0, jinak -1 a externí proměnná errno je příslušně nastavena.

CHYBOVÉ STAVY

       Tento seznam je pouze všeobecný. Mohou existovat další specifické chyby pro použitý jmenný prostor.

       EACCES Pro sokety UNIXové domény, které jsou identifikovány jménem: je odmítnuto  zapisování  do  souboru
              specifikovaného  soketem,  nebo je odmítnuto právo vyhledávat v adresářích specifikovaných cestou.
              (Viz path_resolution(7).)

       EACCES, EPERM
              Uživatel se pokusil připojit k broadcastové adrese, aniž by měl povolen  broadcastový  příznak  na
              soketu, nebo požadavek na spojení byl odmítnut kvůli lokálnímu pravidlu firewallu.

              EACCES  can  also be returned if an SELinux policy denied a connection (for example, if there is a
              policy saying that an HTTP proxy can only connect to ports associated with HTTP servers,  and  the
              proxy tries to connect to a different port). dd

       EADDRINUSE
              Adresa je již používána.

       EADDRNOTAVAIL
              (Internet  domain  sockets)   The socket referred to by sockfd had not previously been bound to an
              address and, upon attempting to bind it to an ephemeral port, it  was  determined  that  all  port
              numbers   in   the   ephemeral   port   range   are  currently  in  use.  See  the  discussion  of
              /proc/sys/net/ipv4/ip_local_port_range in ip(7).

       EAFNOSUPPORT
              Poskytnutá adresa nemá správně specifikovanou rodinu adres v poli sa_family.

       EAGAIN For nonblocking UNIX domain sockets, the socket is  nonblocking,  and  the  connection  cannot  be
              completed  immediately.  For  other socket families, there are insufficient entries in the routing
              cache.

       EALREADY
              Soket je neblokující a předchozí pokus o spojení ještě nebyl dokončen.

       EBADF  sockfd is not a valid open file descriptor.

       ECONNREFUSED
              A connect()  on a stream socket found no one listening on the remote address.

       EFAULT Adresa soketu je mimo adresový prostor procesu.

       EINPROGRESS
              The socket is nonblocking and the connection cannot be completed immediately. (UNIX domain sockets
              failed with EAGAIN instead.) It is possible to select(2)  or poll(2)  for completion by  selecting
              the  socket  for  writing.  After select(2)  indicates writability, use getsockopt(2)  to read the
              SO_ERROR option at  level  SOL_SOCKET  to  determine  whether  connect()   completed  successfully
              (SO_ERROR  is  zero)  or  unsuccessfully  (SO_ERROR  is  one of the usual error codes listed here,
              explaining the reason for the failure).

       EINTR  Systémové volání bylo přerušeno doručením signálu. Viz signal(7).

       EISCONN
              Soket je již spojen.

       ENETUNREACH
              Síť není dosažitelná.

       ENOTSOCK
              The file descriptor sockfd does not refer to a socket.

       EPROTOTYPE
              The socket type does not support the requested communications protocol. This error can occur,  for
              example, on an attempt to connect a UNIX domain datagram socket to a stream socket.

       ETIMEDOUT
              Timeout  při pokusu o navázání spojení. Server může být příliš zaneprázdněn a není schopen přijmou
              další spojení. Vězte, že pro IP sokety může  být  timeout  velmi  dlouhý,  pokud  jsou  syncookies
              povoleny na straně serveru.

SPLŇUJE STANDARDY

       POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD, (connect() se poprvé objevila ve 4.2BSD).

POZNÁMKY

       POSIX.1 nevyžaduje vložení <sys/types.h> a proto není tento hlavičkový soubor v Linuxu vyžadován. Nicméně
       některé  starší  (BSD)  implementace  jej  vyžadují  a  v  přenositelných  aplikacích  by také bylo tento
       hlavičkový soubor zachovat.

       For background on the socklen_t type, see accept(2).

       If connect()  fails, consider the state of the socket as unspecified. Portable applications should  close
       the socket and create a new one for reconnecting.

PŘÍKLADY

       Příklad použití connect() je v getaddrinfo(3).

DALŠÍ INFORMACE

       accept(2), bind(2), getsockname(2), listen(2), socket(2), path_resolution(7), selinux(8)

TIRÁŽ

       Tato  stránka  je  součástí  projektu  Linux  man-pages  v5.10. Popis projektu a informace o hlášení chyb
       najdete na https://www.kernel.org/doc/man-pages/.

P◈EKLAD

       Překlad této příručky do španělštiny vytvořili Pavel Heimlich <tropikhajma@gmail.com>

       Tento překlad je bezplatná dokumentace; Přečtěte  si  GNU General Public License Version 3  nebo  novější
       ohledně podmínek autorských práv. Neexistuje ŽÁDNÁ ODPOVĚDNOST.

       Pokud  narazíte  na  nějaké  chyby  v  překladu této příručky, pošlete e-mail na adresu translation-team-
       cs@lists.sourceforge.net.

Linux                                            11. dubna 2020                                       CONNECT(2)