socket man page on SmartOS

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

SOCKET(3XNET)							 SOCKET(3XNET)

NAME
       socket - create an endpoint for communication

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

       int socket(int domain, int type, int protocol);

DESCRIPTION
       The  socket()  function	creates	 an unbound socket in a communications
       domain, and returns a file descriptor that can be used in  later	 func‐
       tion calls that operate on sockets.

       The <sys/socket.h> header defines at least the following values for the
       domain argument:

       AF_UNIX
		   File system pathnames.

       AF_INET
		   Internet Protocol version 4 (IPv4) address.

       AF_INET6
		   Internet Protocol version 6 (IPv6) address.

       The type argument specifies  the	 socket	 type,	which  determines  the
       semantics of communication over the socket.  The socket types supported
       by the system  are  implementation-dependent.   Possible	 socket	 types
       include:

       SOCK_STREAM
			 Provides  sequenced, reliable, bidirectional, connec‐
			 tion-mode byte streams, and may provide  a  transmis‐
			 sion mechanism for out-of-band data.

       SOCK_DGRAM
			 Provides  datagrams,  which  are connectionless-mode,
			 unreliable messages of fixed maximum length.

       SOCK_SEQPACKET
			 Provides sequenced, reliable, bidirectional,  connec‐
			 tion-mode  transmission  path	for records.  A record
			 can be sent using one or more output  operations  and
			 received  using  one  or more input operations, but a
			 single operation never transfers part	of  more  than
			 one  record.	Record	boundaries  are visible to the
			 receiver via the MSG_EOR flag.

       If the protocol argument is non-zero, it must specify a	protocol  that
       is  supported  by  the  address family.	The protocols supported by the
       system are implementation-dependent.

       The process may need to have appropriate privileges to use the socket()
       function or to create some sockets.

PARAMETERS
       The function takes the following arguments:

       domain
		   Specifies the communications domain in which a socket is to
		   be created.

       type
		   Specifies the type of socket to be created.

       protocol
		   Specifies a particular protocol to be used with the socket.
		   Specifying  a  protocol  of	0  causes  socket()  to use an
		   unspecified default protocol appropriate for the  requested
		   socket type.

       The domain argument specifies the address family used in the communica‐
       tions domain.  The address families supported by the system are	imple‐
       mentation-dependent.

USAGE
       The documentation for specific address families specify which protocols
       each address family supports.  The documentation for specific protocols
       specify which socket types each protocol supports.

       The application can determine if an address family is supported by try‐
       ing to create a socket with domain set to the protocol in question.

RETURN VALUES
       Upon successful completion, socket() returns a nonnegative integer, the
       socket  file descriptor.	 Otherwise a value of -1 is returned and errno
       is set to indicate the error.

ERRORS
       The socket() function will fail if:

       EAFNOSUPPORT
			  The implementation does not  support	the  specified
			  address family.

       EMFILE
			  No  more  file  descriptors  are  available for this
			  process.

       ENFILE
			  No more file descriptors are available for the  sys‐
			  tem.

       EPROTONOSUPPORT
			  The protocol is not supported by the address family,
			  or the protocol is not supported by the  implementa‐
			  tion.

       EPROTOTYPE
			  The socket type is not supported by the protocol.

       The socket() function may fail if:

       EACCES
		  The process does not have appropriate privileges.

       ENOBUFS
		  Insufficient	resources were available in the system to per‐
		  form the operation.

       ENOMEM
		  Insufficient memory was available to fulfill the request.

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

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

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

SEE ALSO
       accept(3XNET),  bind(3XNET),  connect(3XNET),  getsockname(3XNET), get‐
       sockopt(3XNET),	  listen(3XNET),     recv(3XNET),     recvfrom(3XNET),
       recvmsg(3XNET),	send(3XNET),  sendmsg(3XNET), setsockopt(3XNET), shut‐
       down(3XNET), socketpair(3XNET), attributes(5), standards(5)

				 Jun 10, 2002			 SOCKET(3XNET)
[top]

List of man pages available for SmartOS

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