listen(3N)
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(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().
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| MT-Level | Safe |
SEE ALSO
accept(3N), connect(3N), socket(3N), attributes(5), socket(5)
NOTES
There is currently no backlog limit.
SunOS 5.6 — Last change: 16 May 1997