accept man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

accept(3SOCKET)		   Sockets Library Functions	       accept(3SOCKET)

NAME
       accept - accept a connection on a socket

SYNOPSIS
       cc [ flag ... ] file ... -lsocket  -lnsl	 [ library ... ]
       #include <sys/types.h>
       #include <sys/socket.h>

       int accept(int s, struct sockaddr *addr, socklen_t *addrlen);

DESCRIPTION
       The  argument  s is a socket that has been created with socket(3SOCKET)
       and bound to an address with bind(3SOCKET), and that is	listening  for
       connections  after  a  call  to	listen(3SOCKET). The accept() function
       extracts the first connection on the queue of pending connections, cre‐
       ates  a	new  socket with the properties of s, and allocates a new file
       descriptor, ns, for the socket. If no pending connections  are  present
       on  the	queue  and  the socket is not marked as non-blocking, accept()
       blocks the caller until a connection  is	 present.  If  the  socket  is
       marked  as  non-blocking	 and no pending connections are present on the
       queue, accept() returns an error	 as  described	below.	 The  accept()
       function	 uses  the  netconfig(4)  file to determine the STREAMS device
       file name associated with s.  This is the device on which  the  connect
       indication  will	 be accepted. The accepted socket, ns, is used to read
       and write data to and from the socket that connected to ns. It  is  not
       used  to	 accept more connections. The original socket (s) remains open
       for accepting further connections.

       The argument addr is a result parameter that  is	 filled	 in  with  the
       address	of  the connecting entity as it is known to the communications
       layer. The exact format of the addr  parameter  is  determined  by  the
       domain in which the communication occurs.

       The  argument  addrlen  is a value-result parameter. Initially, it con‐
       tains the amount of space pointed to by addr; on return it contains the
       length in bytes of the address returned.

       The  accept() function is used with connection-based socket types, cur‐
       rently with SOCK_STREAM.

       It is possible to select(3C) or poll(2) a socket for the purpose of  an
       accept() by selecting or polling it for a read. However, this will only
       indicate when a connect indication is pending; it is still necessary to
       call accept().

RETURN VALUES
       The accept() function returns −1 on error. If it succeeds, it returns a
       non-negative integer that is a descriptor for the accepted socket.

ERRORS
       accept() will fail if:

       EBADF	       The descriptor is invalid.

       ECONNABORTED    The remote  side	 aborted  the  connection  before  the
		       accept() operation completed.

       EFAULT	       The addr parameter or the addrlen parameter is invalid.

       EINTR	       The accept() attempt was interrupted by the delivery of
		       a signal.

       EMFILE	       The per-process descriptor table is full.

       ENODEV	       The protocol family and type corresponding to  s	 could
		       not be found in the netconfig file.

       ENOMEM	       There  was  insufficient	 user memory available to com‐
		       plete the operation.

       ENOSR	       There were insufficient STREAMS resources available  to
		       complete the operation.

       ENOTSOCK	       The descriptor does not reference a socket.

       EOPNOTSUPP      The referenced socket is not of type SOCK_STREAM.

       EPROTO	       A protocol error has occurred; for example, the STREAMS
		       protocol stack has not been initialized or the  connec‐
		       tion has already been released.

       EWOULDBLOCK     The socket is marked as non-blocking and no connections
		       are present to be accepted.

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

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │Safe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       poll(2), bind(3SOCKET), connect(3SOCKET), listen(3SOCKET),  select(3C),
       socket.h(3HEAD), socket(3SOCKET), netconfig(4), attributes(5)

SunOS 5.11			  24 Jan 2002		       accept(3SOCKET)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net