listen(3sock)
listen --
listen for connections on a socket
Synopsis
cc [options] file -lsocket -lnsl
#include <sys/socket.h>
int listen(int socket, int backlog);
Description
To accept connections, a socket is first created with socket,
a backlog for incoming connections is specified with listen
and then the connections are accepted with accept.
The listen call applies only to sockets of type
SOCK_STREAM or SOCK_SEQPACKET.
If the
inconfig(1Mtcp)
parameter tcp_q0limit is set to 0, the backlog
parameter defines the maximum length to which the queues of
pending (3-way handshake incomplete) and established
(3-way handshake complete) connections may grow.
A connection request is silently dropped if it
arrives when the pending queue is full.
If the value of tcp_q0limit is greater than 0,
it determines the maximum length of the pending connection queue.
If a connection request arrives when the queue is full,
an existing pending connection is dropped at random
(RST is sent to the peer)
and the new request is placed on the queue.
In this case, the backlog parameter
defines only the maximum length to which the
established connection queue may grow.
If the value of backlog is less than 0,
the length of the socket's listen queue (or queues) is set to 0.
Files
/usr/lib/locale/locale/LC_MESSAGES/uxnsl
Return values
A value of 0 indicates success;
-1 indicates an error.
Errors
The call fails if:
EBADF-
socket
is not a valid descriptor.
ENOTSOCK-
socket
is not a socket.
EOPNOTSUPP-
The socket is not of a type that supports the operation listen.
EINVAL-
The socket is already connected or has been shut down.
EDESTADDRREQ-
The socket is not bound to a local address, and the protocol does not
support listening on an unbound socket.
ENOBUFS-
System resources are insufficient to complete the call.
References
accept(3sock),
connect(3sock),
inconfig(1Mtcp),
socket(3sock)
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004