Provided by: manpages-cs-dev_4.14.0-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
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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⟩.