LISTEN(3SOCKET) Sockets Library Functions LISTEN(3SOCKET)


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);


DESCRIPTION


To accept connections, a socket is first created with socket(3SOCKET), a
backlog for incoming connections is specified with listen() and then the
connections are accepted with accept(3SOCKET). 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 and
AF_INET6sockets, 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().


ATTRIBUTES


See attributes(5) for descriptions of the following attributes:


+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT-Level | Safe |
+---------------+-----------------+

SEE ALSO


accept(3SOCKET), connect(3SOCKET), socket(3SOCKET), attributes(5),
socket.h(3HEAD)

NOTES


There is currently no backlog limit.


November 8, 1999 LISTEN(3SOCKET)