Provided by: manpages-de-dev_4.27.0-1_all 

BEZEICHNUNG
getpeername - holt den Namen einer verbundenen Gegenstelle
BIBLIOTHEK
Standard-C-Bibliothek (libc, -lc)
ÜBERSICHT
#include <sys/socket.h>
int getpeername(int sockfd, struct sockaddr *restrict Adr,
socklen_t *restrict adresslaenge);
BESCHREIBUNG
getpeername() schreibt die Adresse der Gegenstelle, die mit dem Socket sockfd verbunden ist, in den
Puffer, auf den Adr zeigt. Der Parameter adresslaenge sollte die Größe des freien Speicherplatzes an der
Adresse Adr enthalten. Nach dem Aufruf enthält adresslaenge 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 adresslaenge 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 gesetzt, um den
Fehler anzuzeigen.
FEHLER
EBADF Das Argument sockdd ist kein zulässiger Dateideskriptor.
EFAULT Das Argument Adr zeigt aus dem vom Prozess adressierbaren Adressraum heraus.
EINVAL adresslaenge 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 sockdd zeigt nicht auf ein Socket.
STANDARDS
POSIX.1-2008.
GESCHICHTE
POSIX.1-2001, SVr4, 4.4BSD (erschien zuerst in 4.2BSD).
ANMERKUNGEN
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)
Ü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 die
Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.
Linux man-pages 6.9.1 2. Mai 2024 getpeername(2)