[Go to CFHT Home Page] Man Pages
Back to Software Index  BORDER=0Manpage Top Level
    listen(3N) manual page Table of Contents

Name

listen - listen for connections on a socket

Synopsis

cc [ flag ... ] file ... -lsocket -lnsl [ library ... ]

#include <sys/types.h>
#include <sys/socket.h>

int listen(int s, int backlog);

MT-Level

Safe

Description

To accept connections, a socket is first created with socket(3N) , a backlog for incoming connections is specified with listen() and then the connections are accepted with accept(3N) . The listen() call applies only to sockets of type SOCK_STREAM or SOCK_SEQPACKET .

The backlog parameter defines the maximum length the queue of pending connections may grow to.

If a connection request arrives with the queue full, the client will receive an error with an indication of ECONNREFUSED for AF_UNIX sockets. If the underlying protocol supports retransmission, the connection request may be ignored so that retries may succeed. For AF_INET sockets, the tcp will retry the connection. If the backlog is not cleared by the time the tcp times out, the connect will fail with ETIMEDOUT .

Return Values

A 0 return value indicates success; -1 indicates an error.

Errors

The call fails if:

EBADF
The argument s is not a valid file descriptor.
ENOTSOCK
The argument s is not a socket.
EOPNOTSUPP
The socket is not of a type that supports the operation listen().

See Also

accept(3N) , connect(3N) , socket(3N)

Notes

There is currently no backlog limit.


Table of Contents