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)
VAROVÁNÍ
Překlad je pravděpodobně zastaralý. Pokud chcete pomoci s jeho aktualizací, zamiřte na http://man-pages-cs-wiki.homelinux.net/