LISTEN(2)

JMÉNO
listen - čekej na spojení na soketu

SYNTAXE
#include <sys/socket.h>

int listen(int s, int backlog);

POPIS
K přijetí spojení na soketu je nejdříve třeba tento soket vytvořit funkcí socket(2), ochota akceptovat příchozí spojení a délka fronty čekajících požadavků je specifikována funkcí listen, a poté jsou požadavky na spojení akceptovány funkcí accept(2). Volání listen lze aplikovat pouze na sokety typů SOCK_STREAM nebo SOCK_SEQPACKET. Parametr backlog specifikuje délku fronty čekajících požadavků na spojení. Je-li fronta zaplněna, obdrží klient zprávu ECONNREFUSED.

NÁVRATOVÁ HODNOTA
V případě úspěchu je vrácena nula, jinak -1 a je příslušně nastavena proměnná errno

CHYBY

EBADF
    Argument s není platným deskriptorem.

ENOTSOCK
    Argument s není deskriptorem soketu.

EOPNOTSUPP
    Typ soketu není podporován voláním listen.

SPLŇUJE STANDARDY
SVr4, 4.4BSD (volání listen se poprvé objevilo ve 4.2BSD).

CHYBY
Je-li soket typu AF_INET a argument backlog je větší než konstanta SOMAXCONN (128 v 2.0.29), je tiše zmenšen na SOMAXCONN. Budete-li psát přenositelné aplikace, tak si z této konstanty nic nedělejte, protože např. některé BSD systémy limitují backlog na 5.

DALŠÍ INFORMACE
accept(2), connect(2), socket(2)