accept man page on SunOS

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

accept(3XNET)	 X/Open Networking Services Library Functions	 accept(3XNET)

NAME
       accept - accept a new connection on a socket

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

       int  accept(int	socket,	 struct	 sockaddr *restrict address, socklen_t
       *restrict address_len);

DESCRIPTION
       The accept() function extracts the first connection  on	the  queue  of
       pending	connections,  creates  a  new socket with the same socket type
       protocol and address family as the specified socket,  and  allocates  a
       new file descriptor for that socket.

       The function takes the following arguments:

       socket	       Specifies a socket that was created with socket(3XNET),
		       has been bound to an address with bind(3XNET), and  has
		       issued a successful call to listen(3XNET).

       address	       Either  a  null	pointer,  or  a	 pointer to a sockaddr
		       structure where the address of  the  connecting	socket
		       will be returned.

       address_len     Points  to  a  socklen_t	 which	on input specifies the
		       length of the supplied sockaddr structure, and on  out‐
		       put specifies the length of the stored address.

       If  address  is	not  a	null  pointer, the address of the peer for the
       accepted connection is stored in the sockaddr structure pointed	to  by
       address, and the length of this address is stored in the object pointed
       to by address_len.

       If the actual length of the address is greater than the length  of  the
       supplied sockaddr structure, the stored address will be truncated.

       If the protocol permits connections by unbound clients, and the peer is
       not bound, then the value stored in the object pointed to by address is
       unspecified.

       If  the	listen queue is empty of connection requests and O_NONBLOCK is
       not set on the file descriptor for  the	socket,	 accept()  will	 block
       until  a	 connection is present. If the listen(3XNET) queue is empty of
       connection requests and O_NONBLOCK is set on the	 file  descriptor  for
       the socket, accept() will fail and set errno to EAGAIN or EWOULDBLOCK.

       The  accepted socket cannot itself accept more connections.  The origi‐
       nal socket remains open and can accept more connections.

USAGE
       When a connection is available, select(3C) will indicate that the  file
       descriptor for the socket is ready for reading.

RETURN VALUES
       Upon  successful	 completion,  accept()	returns	 the  nonnegative file
       descriptor of the accepted socket.  Otherwise, −1 is returned and errno
       is set to indicate the error.

ERRORS
       The accept() function will fail if:

       EAGAIN		       O_NONBLOCK  is set for the socket file descrip‐
       EWOULDBLOCK	       tor  and	 no  connections  are  present	to  be
			       accepted.

       EBADF		       The   socket  argument  is  not	a  valid  file
			       descriptor.

       ECONNABORTED	       A connection has been aborted.

       EFAULT		       The  address or	address_len parameter can  not
			       be accessed or written.

       EINTR		       The accept() function was interrupted by a sig‐
			       nal that was caught before a  valid  connection
			       arrived.

       EINVAL		       The socket is not accepting connections.

       EMFILE		       OPEN_MAX file descriptors are currently open in
			       the calling process.

       ENFILE		       The maximum number of file descriptors  in  the
			       system are already open.

       ENOTSOCK		       The socket argument does not refer to a socket.

       EOPNOTSUPP	       The  socket  type  of the specified socket does
			       not support accepting connections.

       The accept() function may fail if:

       ENOBUFS		       No buffer space is available.

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

       ENOSR		       There was insufficient STREAMS resources avail‐
			       able to complete the operation.

       EPROTO		       A protocol error has occurred; for example, the
			       STREAMS	protocol  stack	 has not been initial‐
			       ized.

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

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

SEE ALSO
       bind(3XNET),	connect(3XNET),	    listen(3XNET),	socket(3XNET),
       attributes(5), standards(5)

SunOS 5.10			  1 Nov 2003			 accept(3XNET)
[top]

List of man pages available for SunOS

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