GETPEERNAME(2)

NOM
getpeername - Obtenir le nom d'un correspondant connecté sur une socket

SYNOPSIS
#include <sys/socket.h>

int getpeername(int s, struct sockaddr *name, socklen_t *namelen);

DESCRIPTION
La fonction getpeername() renvoie le nom du correspondant connecté sur une socket s. Le paramètre namelen doit être initialisé pour indiquer la taille de la zone pointée par name. En retour, il contiendra la longueur effective (en octets) du nom retourné. Le nom est tronqué si le tampon est trop petit.

VALEUR RENVOYÉE
getpeername() renvoie 0 s'il réussit, ou -1 s'il échoue, auquel cas errno contient le code d'erreur.

ERREURS

EBADF
    L'argument s n'est pas un descripteur valide.

EFAULT
    name pointe en dehors de l'espace d'adressage accessible.

EINVAL
    namelen n'est pas valide (par exemple, est négatif).

ENOBUFS
    Pas assez de ressources dans le système pour effectuer l'opération.

ENOTCONN
    La socket n'est pas connectée.

ENOTSOCK
    L'argument s est un fichier, pas une socket.

CONFORMITÉ
SVr4, BSD 4.4 (La fonction getpeername() est apparue dans BSD 4.2), POSIX.1-2001.

NOTES
Le troisième argument de getpeername() est en fait un int * (et c'est ce qu'utilisent BSD 4.*, libc4 et libc5). Une certaine confusion POSIX résulte du socklen_t actuel, également utilisé par la glibc. Pour plus de détails, voir accept(2).

VOIR AUSSI
accept(2), bind(2), getsockname(2)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 11 octobre 1996 et révisée le 22 décembre 2007.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 getpeername ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.