Provided by: manpages-fr-dev_3.65d1p1-1_all 

NOM
listen - Attendre des connexions sur une socket
SYNOPSIS
#include <sys/types.h> /* Consultez NOTES */
#include <sys/socket.h>
int listen(int sockfd, int backlog);
DESCRIPTION
listen() marque la socket référencée par sockfd comme une socket passive, c'est-à-dire comme une socket
qui sera utilisée pour accepter les demandes de connexions entrantes en utilisant accept(2).
Le paramètre sockfd est un descripteur de fichier qui fait référence à une socket de type SOCK_STREAM ou
SOCK_SEQPACKET.
Le paramètre backlog définit une longueur maximale pour la file des connexions en attente pour sockfd. Si
une nouvelle connexion arrive alors que la file est pleine, le client reçoit une erreur indiquant
ECONNREFUSED, ou, si le protocole sous‐jacent supporte les retransmissions, la requête peut être ignorée
afin qu'un nouvel essai réussisse.
VALEUR RENVOYÉE
S'il réussit, cet appel système renvoie 0. S'il échoue, il renvoie -1 et remplit errno en conséquence.
ERREURS
EADDRINUSE
Une autre socket est déjà à l'écoute sur le même port.
EBADF sockfd n'est pas un descripteur valable.
ENOTSOCK
Le paramètre sockfd n'est pas une socket.
EOPNOTSUPP
Le type de socket ne supporte pas l'appel système listen().
CONFORMITÉ
BSD 4.4, POSIX.1-2001. La fonction listen() est apparue dans BSD 4.2.
NOTES
Pour accepter des connexions, les étapes suivantes sont effectuées :
1. Une socket est créée avec socket(2).
2. La socket est limitée à une adresse locale avec bind(2), ainsi d'autres sockets peuvent y être
connect(2)ées.
3. La volonté d'accepter des connexions entrantes et une limite de file pour les connexions
entrantes sont spécifiées avec listen().
4. Les connexions sont acceptées avec accept(2).
POSIX.1-2001 ne requiert pas l'inclusion de <sys/types.h>, et cet en‐tête n'est pas nécessaire sous
Linux. Cependant, il doit être inclus sous certaines implémentations historiques (BSD), et les
applications portables devraient probablement l'utiliser.
Le comportement de backlog a été modifié sur les sockets TCP dans Linux 2.2. Il s'agit à présent de la
longueur de la file d'attente pour les socket totalement établies en attente d'acceptation, plutôt que
les requêtes de connexion incomplètes. La longueur maximale de la file d'attente des connexions
incomplètes peut être configurée avec /proc/sys/net/ipv4/tcp_max_syn_backlog. Lorsque les syncookies sont
activés, il n'y a pas de longueur maximale et la configuration est ignorée. Consultez tcp(7) pour plus de
détails.
Si l'argument backlog est plus grand que la valeur indiquée dans le fichier /proc/sys/net/core/somaxconn,
il est tronqué à cette valeur ; la valeur par défaut dans ce fichier est 128. Dans les noyaux précédant
2.4.25, cette limite était une valeur fixe, SOMAXCONN, qui valait également 128.
EXEMPLE
Consultez bind(2).
VOIR AUSSI
accept(2), bind(2), connect(2), socket(2), socket(7)
COLOPHON
Cette page fait partie de la publication 3.65 du projet man-pages Linux. Une description du projet et des
instructions pour signaler des anomalies peuvent être trouvées à l'adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par
l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.
Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal
<http://manpagesfr.free.fr/> (2003-2006). Julien Cristau et l'équipe francophone de traduction de
Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <debian-l10n-french@lists.debian.org> ou par
un rapport de bogue sur le paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man -L C
<section> <page_de_man> ».
Linux 20 novembre 2008 LISTEN(2)