.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" and Copyright (C) 2007, Michael Kerrisk .\" All rights reserved. .\" .\" %%%LICENSE_START(BSD_4_CLAUSE_UCB) .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" %%%LICENSE_END .\" .\" $Id: listen.2,v 1.6 1999/05/18 14:10:32 freitag Exp $ .\" .\" Modified Fri Jul 23 22:07:54 1993 by Rik Faith .\" Modified 950727 by aeb, following a suggestion by Urs Thuermann .\" .\" Modified Tue Oct 22 08:11:14 EDT 1996 by Eric S. Raymond .\" Modified 1998 by Andi Kleen .\" Modified 11 May 2001 by Sam Varshavchik .\" .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH LISTEN 2 "15. September 2017" Linux Linux\-Programmierhandbuch .SH BEZEICHNUNG listen \- auf einem Socket auf Verbindungen warten .SH ÜBERSICHT .nf \fB#include \fP /* Siehe ANMERKUNGEN */ \fB#include \fP .PP \fBint listen(int \fP\fIsockfd\fP\fB, int \fP\fIbacklog\fP\fB);\fP .fi .SH BESCHREIBUNG \fBlisten\fP() markiert das Socket, das \fIsockfd\fP angibt, als ein passives Socket, das wie ein Socket benutzt wird, das eingehende Verbindungsanfragen unter Benutzung von \fBaccept\fP(2) akzeptiert. .PP Das Argument \fIsockfd\fP ist ein Dateideskriptor, der sich auf ein Socket des Typs \fBSOCK_STREAM\fP oder \fBSOCK_SEQPACKET\fP bezieht. .PP Das Argument \fIbacklog\fP spezifiziert die maximale Länge der Warteschlange für \fIsockfd\fP, 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 \fBECONNREFUSED\fP oder die Anfrage wird ignoriert, wenn das zugrundeliegende Protokoll »erneutes Übertragen« unterstützt, damit weitere Verbindungsversuche erfolgreich sind. .SH RÜCKGABEWERT Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird \-1 zurückgegeben und \fIerrno\fP entsprechend gesetzt. .SH FEHLER .TP \fBEADDRINUSE\fP Ein anderes Socket wartet bereits auf dem gleichen Port auf Verbindungen. .TP \fBEADDRINUSE\fP (Internet Domain Sockets) Das durch \fIsockfd\fP referenzierte Socket war bisher nicht an eine Adresse gebunden und beim Versuch, es an einen kurzlebigen Port zu binden, wurde festgestellt, dass alle Portnummern in dem Portbereich für kurzlebige Portnummern derzeit verwendet werden. Lesen Sie die Erörterung von \fI/proc/sys/net/ipv4/ip_local_port_range\fP in \fBip\fP(7). .TP \fBEBADF\fP Das Argument \fIsockfd\fP ist kein zulässiger Dateideskriptor. .TP \fBENOTSOCK\fP Der Dateideskriptor \fIsockfd\fP zeigt nicht auf ein Socket. .TP \fBEOPNOTSUPP\fP Der Typ des Sockets unterstützt die Operation \fBlisten\fP() nicht. .SH "KONFORM ZU" POSIX.1\-2001, POSIX.1\-2008, 4.4BSD (\fBlisten\fP() erschien erstmals in 4.2BSD.) .SH ANMERKUNGEN Um Verbindungen zu akzeptieren, werden die folgenden Schritte ausgeführt: .RS 4 .IP 1. 4 Es wird mittels \fBsocket\fP(2) ein Socket erstellt. .IP 2. Das Socket wird mittels \fBbind\fP(2) mit einer lokalen Adresse verknüpft, so dass andere Sockets mittels \fBconnect\fP(2) damit verbunden werden können. .IP 3. Mit \fBlisten\fP() werden eine Bereitschaft ankommende Verbindungen anzunehmen und eine Warteschlangenbeschränkung für eingehende Verbindungen angegeben. .IP 4. Verbindungen werden mit \fBaccept\fP(2) akzeptiert. .RE .PP POSIX.1 erfordert nicht, dass \fI\fP eingebunden wird. Diese Header\-Datei ist in Linux nicht erforderlich. Allerdings benötigen einige historische Implementierungen (BSD) diese Header\-Datei. Es wird empfohlen, sie für portierbare Anwendungen einzubinden. .PP Das Verhalten des Arguments \fIbacklog\fP auf TCP\-Sockets änderte sich mit Linux 2.2. Nun gibt es die Länge der Warteschlange für \fIkomplett\fP etablierte Sockets an, die darauf warten akzeptiert zu werden, anstatt der Anzahl der unvollständigen Verbindungsanfragen. Die maximale Länge der Warteschlange für unvollständige Sockets kann in \fI/proc/sys/net/ipv4/tcp_max_syn_backlog\fP gesetzt werden. Wenn dort SYN\-Cookies eingeschaltet sind, gibt es keine maximale Länge und diese Einstellung wird ignoriert. Lesen Sie \fBtcp\fP(7), um weitere Informationen zu erhalten. .PP .\" The following is now rather historic information (MTK, Jun 05) .\" Don't rely on this value in portable applications since BSD .\" (and some BSD-derived systems) limit the backlog to 5. Falls das Argument \fIbacklog\fP größer ist, als der Wert in \fI/proc/sys/net/core/somaxconn\fP, dann wird es stillschweigend auf diesen Wert heruntergesetzt; der Standardwert in dieser Datei ist 128. In Kerneln vor 2.4.25 war diese Beschränkung ein hart kodierter Wert \fBSOMAXCONN\fP von 128. .SH BEISPIEL Siehe \fBbind\fP(2). .SH "SIEHE AUCH" \fBaccept\fP(2), \fBbind\fP(2), \fBconnect\fP(2), \fBsocket\fP(2), \fBsocket\fP(7) .SH KOLOPHON Diese Seite ist Teil der Veröffentlichung 4.16 des Projekts Linux\-\fIman\-pages\fP. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter \%https://www.kernel.org/doc/man\-pages/. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze und Chris Leick 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 .