Provided by: manpages-pl-dev_20060617-1_all bug

NAZWA

       getpeername - pobranie nazwy drugiej strony połączonego gniazda

SKŁADNIA

       #include <sys/socket.h>

       int getpeername(int s, struct sockaddr *name, socklen_t *namelen);

OPIS

       getpeername   zwraca  nazwę  drugiej  strony  równorzędnego  połączenia
       odbywającego się poprzez gniazdo  s.   Parametr  namelen  powinien  być
       zainicjalizowany  tak,  aby  podawać rozmiar obszaru wskazywanego przez
       name.  Po zakończeniu, będzie on zawierać rzeczywisty rozmiar zwróconej
       nazwy  (w  bajtach).  Nazwa jest obcinana, jeśli zadany bufor jest zbyt
       mały.

WARTOŚĆ ZWRACANA

       Po pomyślnym zakończeniu zwracane jest zero. Po błędzie  zwracane  jest
       -1 i odpowiednio ustawiane errno.

BŁĘDY

       EBADF  Argument s nie jest prawidłowym deskryptorem.

       ENOTSOCK
              Argument s jest plikiem, a nie gniazdem.

       ENOTCONN
              Gniazdo nie jest podłączone.

       ENOBUFS
              Brakło zasobów w systemie do wykonania tej operacji.

       EFAULT Parametr  name  wskazuje  na obszar pamięci nie będący dozwoloną
              przestrzenią adresową procesu.

ZGODNE Z

       SVr4, 4.4BSD (funkcja getpeername pojawiła się pierwotnie w 4.2BSD).

UWAGA

       Trzeci argument getpeername 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.  Szkic standardu  nie  sostał  jeszcze
       przyjęty, ale glibc2 już jest z nim zgodne i zawiera również socklen_t.
       Zobacz także accept(2).

ZOBACZ TAKŻE

       accept(2), bind(2), getsockname(2)