table of contents
other versions
- jessie 1.8-1
- stretch 1.22-1
- testing 2.11-1
- stretch-backports 2.11-1~bpo9+2
- unstable 2.12-1
other languages
other sections
LISTEN(2) | Linux-Programmierhandbuch | LISTEN(2) |
BEZEICHNUNG¶
listen - auf einem Socket auf Verbindungen wartenÜBERSICHT¶
#include <sys/types.h> /* Siehe ANMERKUNGEN */#include <sys/socket.h> int listen(int sockfd, int backlog);
BESCHREIBUNG¶
listen() markiert das Socket, das sockfd angibt, als ein passives Socket, das wie ein Socket benutzt wird, das eingehende Verbindungsanfragen unter Benutzung von accept(2) akzeptiert. Das Argument sockfd ist ein Dateideskriptor, der sich auf ein Socket des Typs SOCK_STREAM oder SOCK_SEQPACKET bezieht. Das Argument backlog spezifiziert die maximale Länge der Warteschlange für sockfd, die noch nicht angenommene Verbindungen aufnimmt. Wenn eine Verbindungsanfrage eintrifft und die Warteschlange bereits voll ist, dann erhält der Client einen Fehler mit der Angabe ECONNREFUSED oder die Anfrage wird ignoriert, wenn das zugrundeliegende Protokoll »erneutes Übertragen« unterstützt, damit weitere Verbindungsversuche erfolgreich sind.RÜCKGABEWERT¶
Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird -1 zurückgegeben und errno entsprechend gesetzt.FEHLER¶
- EADDRINUSE
- Ein anderes Socket wartet bereits auf dem gleichen Port auf Verbindungen.
- EADDRINUSE
- (Internet-Domain-Sockets) Das Socket, auf das sich sockfd bezieht, wurde nicht vorher an eine Adresse gebunden und bei dem Versuch, es an einen kurzlebigen Port zu binden, wurde festgestellt, dass alle Portnummern im kurzlebigen Portbereich derzeit verwendet werden. Lesen Sie die Erörterung von /proc/sys/net/ipv4/ip_local_port_range in ip(7).
- EBADF
- Das Argument sockfd ist kein zulässiger Deskriptor.
- ENOTSOCK
- Das Argument sockfd ist kein Socket.
- EOPNOTSUPP
- Der Typ des Sockets unterstützt die Operation listen() nicht.
KONFORM ZU¶
4.4BSD, POSIX.1-2001. Der Funktionsaufruf listen() erschien erstmals in 4.2BSD.ANMERKUNGEN¶
Um Verbindungen zu akzeptieren, werden die folgenden Schritte ausgeführt:- 1.
- Es wird mittels socket(2) ein Socket erstellt.
- 2.
- Das Socket wird mittels bind(2) mit einer lokalen Adresse verknüpft, so dass andere Sockets mittels connect(2) damit verbunden werden können.
- 3.
- Mit listen() werden eine Bereitschaft ankommende Verbindungen anzunehmen und eine Warteschlangenbeschränkung für eingehende Verbindungen angegeben.
- 4.
- Verbindungen werden mit accept(2) akzeptiert.
BEISPIEL¶
Siehe bind(2).SIEHE AUCH¶
accept(2), bind(2), connect(2), socket(2), socket(7)KOLOPHON¶
Diese Seite ist Teil der Veröffentlichung 3.74 des Projekts Linux- man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter http://www.kernel.org/doc/man-pages/.ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze <joey@infodrom.org> und Chris Leick <c.leick@vollbio.de> 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>.10. Mai 2014 | Linux |