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>.

Linux                                           12. Februar 2013                                  GETPEERNAME(2)