LISTEN(3SOCKET) Sockets Library Functions LISTEN(3SOCKET)
listen - listen for connections on a socket
cc [ flag ... ] file ... -lsocket -lnsl [ library ... ]
#include <sys/types.h>
#include <sys/socket.h>
int listen(int s, int backlog);
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.
A 0 return value indicates success; -1 indicates an error.
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 attributes(7) for descriptions of the following attributes:
+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT-Level | Safe |
+---------------+-----------------+
socket.h(3HEAD), accept(3SOCKET), connect(3SOCKET), socket(3SOCKET),
attributes(7)
There is currently no backlog limit.
November 8, 1999 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(7) for descriptions of the following attributes:
+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT-Level | Safe |
+---------------+-----------------+
SEE ALSO
socket.h(3HEAD), accept(3SOCKET), connect(3SOCKET), socket(3SOCKET),
attributes(7)
NOTES
There is currently no backlog limit.
November 8, 1999 LISTEN(3SOCKET)