bionic (2) bind.2.gz

Provided by: manpages-pl-dev_0.7-1_all bug

NAZWA

       bind - przywiązanie nazwy do gniazda

SKŁADNIA

       #include <sys/types.h>
       #include <sys/socket.h>

       int bind(int sockfd, struct sockaddr *my_addr, socklen_t addrlen);

OPIS

        Uwaga! To tłumaczenie może być nieaktualne!

       bind  nadaje  gniazdu,  sockfd,  lokalny  adres  my_addr.  my_addr ma długość addrlen bajtów. Tradycyjnie
       nazywa się to "przyznaniem gniazdu nazwy". Gdy gniazdo jest  utworzone  za  pomocą  polecenia  socket(2),
       istnieje ono w przestrzeni nazw (rodzina adresów), ale nie ma przyznanej żadnej nazwy.

       Normalnie,  zanim  gniazdo  SOCKET_STREAM  będzie mogło odbierać połączenia (zobacz accept(2)), niezbędne
       jest przypisanie mu lokalnego adresu za pomocą bind.

       Reguły dotyczące przywiązywania nazw są  różne  w  różnych  rodzinach  adresów.   Szczegółowe  informacje
       znajdują  się  na  stronach  podręcznika  man  w  sekcji 7.  Dla AF_INET zobacz ip(7), dla AF_UNIX zobacz
       unix(7), dla AF_APPLETALK zobacz ddp(7), dla AF_PACKET zobacz packet(7), dla AF_X25 zobacz x25(7), a  dla
       AF_NETLINK zobacz netlink(7).

WARTOŚĆ ZWRACANA

       Po  pomyślnym  zakończeniu,  zwracane  jest  zero.  W  przeciwnym  wypadku zwracane jest -1 i odpowiednio
       ustawiane errno .

BŁĘDY

       EBADF  sockfd nie jest prawidłowym deskryptorem.

       EINVAL Gniazdo już jest przywiązane do adresu. Może to się zmienić w przyszłości: szczegóły można znaleźć
              w linux/unix/sock.c.

       EACCES Adres jest chroniony, a użytkownik nie jest superużytkownikiem.

       ENOTSOCK
              Argument jest deskryptorem pliku, a nie gniazda.

       Następujące błędy odnoszą się do gniazd domeny UNIX-owej (AF_UNIX):

       EINVAL Parametr addrlen jest nieprawidłowy, lub gniazdo nie należy do rodziny AF_UNIX.

       EROFS  I-węzeł gniazda rezyduje na systemie plików przeznaczonym tylko do odczytu.

       EFAULT my_addr wskazuje poza dostępną dla użytkownika przestrzeń adresową.

       ENAMETOOLONG
              my_addr jest zbyt długie.

       ENOENT Plik nie istnieje.

       ENOMEM Brak pamięci kernela.

       ENOTDIR
              Element składowy ścieżki nie jest katalogiem.

       EACCES Brak praw do przeszukiwania dla składnika ścieżki.

       ELOOP  Podczas rozwiązywania my_addr napotkano zbyt wiele dowiązań symbolicznych.

USTERKI

       Nie opisano opcji przezroczystych proxy.

ZGODNE Z

       SVr4,  4.4BSD  (funkcja  bind  pojawiła się najpierw w BSD 4.2). SVr4 dokumentuje dodatkowe ogólne błędy,
       EADDRNOTAVAIL, EADDRINUSE i ENOSR oraz dodatkowe błędy domeny UNIX-owej, EIO i EISDIR.

UWAGA

       Trzeci argument bind jest w rzeczywistości typu int (i tak  jest  w  BSD  4.*,  libc4  i  libc5).   Pewne
       zamieszanie w POSIX doprowadziło jego zmiany na obecny socklen_t.  Zobacz także accept(2).

ZOBACZ TAKŻE

       accept(2), connect(2), listen(2), socket(2), getsockname(2), ip(7), socket(7)

INFORMACJE O TŁUMACZENIU

       Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne.
       W razie zauważenia różnic między powyższym opisem a rzeczywistym  zachowaniem  opisywanego  programu  lub
       funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:

              man --locale=C 2 bind

       Prosimy   o   pomoc   w   aktualizacji   stron   man  -  więcej  informacji  można  znaleźć  pod  adresem
       http://sourceforge.net/projects/manpages-pl/.