getsockopt(2) System Calls Manual getsockopt(2) NOM getsockopt, setsockopt - Lire et ecrire les options d'un socket BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include int getsockopt(int sockfd, int level, int optname, void optval[restrict *.optlen], socklen_t *restrict optlen); int setsockopt(int sockfd, int level, int optname, const void optval[.optlen], socklen_t optlen); DESCRIPTION getsockopt() et setsockopt() manipulent les options associees au socket a laquelle fait reference le descripteur de fichier sockfd. Ces options peuvent exister aux divers niveaux de protocole, et sont toujours presentes au niveau socket le plus eleve. Quand on manipule une option d'un socket, il faut preciser le niveau ou il s'applique, et le nom de l'option. Au niveau de l'API des sockets, level prend la valeur SOL_SOCKET. Pour tous les autres niveaux, il faut fournir le numero de protocole approprie. Par exemple, pour une option interpretee par le protocole TCP, level prendra le numero du protocole TCP. Consultez getprotoent(3). Les parametres optval et optlen sont utilises pour determiner les options pour setsockopt(). Pour getsockopt ils identifient un tampon dans lequel la valeur de l'option desiree doit etre renvoyee. Pour getsockopt, optlen est un parametre resultat, contenant initialement la taille du tampon pointe par optval, et rempli en retour pour indiquer la taille effective des valeurs renvoyees. Si aucune option n'est fournie ou renvoyee, optval peut etre NULL. optname et toute autre option sont passes sans interpretation au protocole approprie, pour qu'il l'interprete lui-meme. Le fichier d'en-tete contient les definitions pour le niveau socket. Les options pour les autres niveaux de protocole peuvent varier tant en format qu'en nom, consultez les pages de manuel de la section 7 pour plus d'informations. La plupart des options au niveau socket utilisent un parametre de type int pour optval. Pour setsockopt(), un parametre non nul valide une option booleenne, et zero l'invalide. Pour une description des options disponibles consultez socket(7) et les pages correspondant au protocole concerne. VALEUR RENVOYEE En cas de succes, 0 est renvoye pour les options standards. En cas d'echec, -1 est renvoye et errno est positionne pour indiquer l'erreur. Netfilter permet au programmeur de definir des options personnalisees pour un socket avec des gestionnaires associes ; pour de telles options, le code de retour est la valeur renvoyee par le gestionnaire en cas de succes. ERREURS EBADF sockfd n'est pas un descripteur de fichier valable. EFAULT optval pointe en dehors de l'espace d'adressage accessible. Avec getsockopt(), ceci peut s'appliquer egalement a optlen. EINVAL optlen non valable pour setsockopt(). Dans certains cas cette erreur peut aussi se produire pour une valeur non valable de optval (par exemple, pour l'option IP_ADD_MEMBERSHIP decrite dans ip(7)). ENOPROTOOPT L'option est inconnue pour ce protocole. ENOTSOCK Le descripteur de fichier sockfd ne fait pas reference a un socket. STANDARDS POSIX.1-2008. HISTORIQUE POSIX.1-2001, SVr4, 4.4BSD (getpeername() est apparue dans 4.2BSD). BOGUES Plusieurs options sur les sockets devraient etre gerees a un niveau plus bas par le systeme. VOIR AUSSI ioctl(2), socket(2), getprotoent(3), protocols(5), ip(7), packet(7), socket(7), tcp(7), udp(7), unix(7) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot , Cedric Boutillier , Frederic Hantrais et Jean-Philippe MENGUAL Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.8 2 mai 2024 getsockopt(2)