Provided by: manpages-de-dev_1.4-1_all bug

BEZEICHNUNG

       getpeername - holt den Namen einer verbundenen Gegenstelle

ÜBERSICHT

       #include <sys/socket.h>

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

BESCHREIBUNG

       getpeername()  schreibt  die  Adresse der Gegenstelle, die mit dem Socket sockfd verbunden
       ist, in den Puffer, auf den addr zeigt. Der Parameter addrlen sollte die Größe des  freien
       Speicherplatzes  an  der Adresse addr enthalten. Nach dem Aufruf enthält addrlen die Größe
       des zurückgegebenen Namens (in Byte). Der Name wird abgeschnitten, wenn der zur  Verfügung
       gestellte Puffer zu klein ist.

       Die zurückgegebene Adresse wird gekürzt, falls der bereitgestellte Puffer zu klein ist. In
       diesem Fall gibt addrlen einen Wert zurück, der größer als der übergebene Wert ist.

RÜCKGABEWERT

       Bei Erfolg wird Null zurückgegeben. Bei einem  Fehler  wird  -1  zurückgegeben  und  errno
       entsprechend gesetzt.

FEHLER

       EBADF  Das Argument sockfd ist kein zulässiger Deskriptor.

       EFAULT Das Argument addr zeigt aus dem vom Prozess adressierbaren Adressraum heraus.

       EINVAL addrlen ist nicht zulässig (ist z. B. negativ).

       ENOBUFS
              Es  waren  im  System  zu  wenig  Ressourcen  für  die  Ausführung  dieses Vorgangs
              verfügbar.

       ENOTCONN
              Der Socket ist nicht verbunden.

       ENOTSOCK
              Der Parameter sockfd ist eine Datei, kein Socket.

KONFORM ZU

       SVr4, 4.4BSD (der  Funktionsaufruf  getpeername()  war  erstmals  in  4.2BSD  zu  finden),
       POSIX.1-2001.

ANMERKUNGEN

       The  third argument of getpeername()  is in reality an int * (and this is what 4.x BSD and
       libc4 and libc5 have). Some POSIX confusion resulted in the present socklen_t,  also  used
       by glibc. See also accept(2).

       For  stream  sockets,  once  a  connect(2)   has  been  performed,  either socket can call
       getpeername()  to obtain the address of the peer  socket.  On  the  other  hand,  datagram
       sockets  are connectionless. Calling connect(2)  on a datagram socket merely sets the peer
       address for outgoing datagrams sent with write(2)  or recv(2). The  caller  of  connect(2)
       can  use  getpeername()   to  obtain  the peer address that it earlier set for the socket.
       However, the peer socket is unaware of this information, and calling getpeername()  on the
       peer socket will return no useful information (unless a connect(2)  call was also executed
       on the peer). Note also that the receiver of a datagram can  obtain  the  address  of  the
       sender when using recvfrom(2).

SIEHE AUCH

       accept(2), bind(2), getsockname(2), ip(7), socket(7), unix(7)

KOLOPHON

       This  page  is  part  of release 3.54 of the Linux man-pages project. A description of the
       project,    and    information    about    reporting    bugs,    can    be    found     at
       http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die    deutsche    Übersetzung    dieser   Handbuchseite   wurde   von   Dennis   Stampfer
       <kontakt@dstampfer.de> und Tobias Quathamer <toddy@debian.org> erstellt.

       Diese Übersetzung ist Freie Dokumentation;  lesen  Sie  die  GNU  General  Public  License
       Version   3  oder  neuer  bezüglich  der  Copyright-Bedingungen.  Es  wird  KEINE  HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an <debian-l10n-german@lists.debian.org>.