Scroll to navigation

GETPEERNAME(2) Linux-Programmierhandbuch GETPEERNAME(2)

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, wenn der übergebene Puffer zu klein ist vorgesehen. 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 gültiger Descriptor.
EFAULT
Das Argument addr zeigt aus dem vom Prozess adressierbaren Adressraum heraus.
EINVAL
addrlen ist ungültig (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

Der dritte Parameter von getpeername() ist in Wirklichkeit ein int * (und dies ist in 4.x-BSD und libc4 sowie libc5 so umgesetzt). Einige Verwirrungen durch POSIX bewirkten das aktuelle socklen_t, das ebenfalls von Glibc verwendet wird. Siehe auch accept(2).

SIEHE AUCH

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

KOLOPHON

Diese Seite ist Teil der Veröffentlichung 3.42 des Projekts Linux- man-pages. Eine Beschreibung des Projekts und Informationen, wie Fehler gemeldet werden können, finden sich unter 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>.
3. Dezember 2008 Linux