table of contents
other languages
other sections
LISTEN(2) | Manuel du programmeur Linux | LISTEN(2) |
NOM¶
listen - Attendre des connexions sur une socketSYNOPSIS¶
#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).
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> ».20 novembre 2008 | Linux |