Provided by: manpages-de-dev_2.16-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 Dateideskriptor.

       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 Dateideskriptor sockfd zeigt nicht auf ein Socket.

KONFORM ZU

       POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD (getpeername() erschien erstmals in 4.2BSD).

ANMERKUNGEN

       Für Hintergrundinformationen zum Typ socklen_t siehe accept(2).

       Bei Datenstrom-Sockets  kann,  sobald  connect(2)  aufgerufen  wurde,  jeder  der  Sockets
       getpeername()  ausführen,  um die Adresse des Peer-Sockets zu ermitteln. Andererseits sind
       Datagramm-Sockets ohne Verbindung. Der Aufruf von connect(2)  mit  einem  Datagramm-Socket
       setzt  vielmehr  die Peer-Adresse für ausgehende Datagramme, die mit write(2) oder recv(2)
       gesendet wurden. Der Aufruf von connect(2) kann getpeername() nutzen, um die zuvor für den
       Socket   gesetzte  Peer-Adresse  zu  ermitteln.  Der  Peer-Socket  jedoch  beachtet  diese
       Information nicht und der Aufruf von getpeername() dort wird keine verwertbare Information
       liefern,  es  sei  denn,  connect(2) wurde ebenfalls auf dem Peer aufgerufen. Beachten Sie
       auch,  dass  der  Empfänger  eines  Datagramms  die  Absenderadresse  mittels  recvfrom(2)
       ermitteln kann.

SIEHE AUCH

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

KOLOPHON

       Diese  Seite  ist  Teil  der  Veröffentlichung  5.03  des  Projekts  Linux-man-pages. Eine
       Beschreibung des Projekts, Informationen, wie Fehler  gemeldet  werden  können  sowie  die
       aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die    deutsche    Übersetzung    dieser   Handbuchseite   wurde   von   Dennis   Stampfer
       <kontakt@dstampfer.de>, Dr. Tobias  Quathamer  <toddy@debian.org>  und  Mario  Blättermann
       <mario.blaettermann@gmail.com> 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>.