connect man page on DigitalUNIX

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

connect(2)							    connect(2)

NAME
       connect - Connect two sockets

SYNOPSIS
       #include <sys/socket.h>

       int connect(
	       int socket,
	       const struct sockaddr *address,
	       socklen_t address_len );

       [XNS4.0]	 The  definition  of  the  connect() function in XNS4.0 uses a
       size_t data type instead of a  socklen_t	 data  type  as	 specified  in
       XNS5.0 (the previous definition).

       [Tru64  UNIX]  The  following definition of the connect() function does
       not conform to current standards and is	supported  only	 for  backward
       compatibility (see standards(5) ).  int connect(
	       int socket,
	       struct sockaddr *address,
	       int address_len );

STANDARDS
       Interfaces  documented on this reference page conform to industry stan‐
       dards as follows:

       connect(): XNS4.0, XNS5.0

       Refer to the standards(5) reference page	 for  more  information	 about
       industry standards and associated tags.

PARAMETERS
       Specifies  a  file  descriptor  for  the	 socket.  Points to a sockaddr
       structure, the format of which is determined by the domain and  by  the
       behavior requested for the socket. The sockaddr structure is an overlay
       for  a  sockaddr_in,  sockaddr_un,  sockaddr_in6,  or  sockaddr_storage
       structure,  depending  on  which	 of  the supported address families is
       active.

	      [Tru64 UNIX]    If  the  compile-time  option  _SOCKADDR_LEN  is
	      defined  before  the  sys/socket.h  header file is included, the
	      sockaddr structure takes 4.4BSD behavior, with a field for spec‐
	      ifying  the length of the socket address. Otherwise, the default
	      4.3BSD sockaddr structure is used, with the length of the socket
	      address assumed to be 14 bytes or less.

	      If  _SOCKADDR_LEN	 is  defined, the 4.3BSD sockaddr structure is
	      defined with the name osockaddr.	Specifies the  length  of  the
	      sockaddr structure pointed to by the address parameter.

DESCRIPTION
       The  connect()  function requests a connection between two sockets. The
       kernel sets up the communications links between the sockets; both sock‐
       ets must use the same address format and protocol.

       The connect() function performs a different action for each of the fol‐
       lowing types  of	 initiating  sockets:  If  the	initiating  socket  is
       SOCK_DGRAM,  the	 connect()  function establishes the peer address. The
       peer address identifies the socket where all datagrams are sent on sub‐
       sequent	send()	functions.  It	also  identifies the socket from where
       datagrams can be received; datagrams from other peer addresses are  not
       delivered.  If address is a null address for the protocol, the socket's
       peer address is reset.

	      No connections are made by this connect() function.  If the ini‐
	      tiating  socket  is SOCK_STREAM, the connect() function attempts
	      to make a connection to the  socket  specified  by  the  address
	      parameter.  Each	communication  space  interprets  the  address
	      parameter differently.

       If the function fails for a connection mode socket, applications should
       use  the	 close() function to deallocate the socket and descriptor.  If
       attempting to reinitiate the connection, applications should  create  a
       new socket.

       If the connection cannot be established immediately, one of the follow‐
       ing occurs: If the socket file descriptor is marked  non-blocking,  the
       connect() function fails and sets errno to [EINPROGRESS].  However, the
       connection request is not aborted; the connection will  be  established
       asynchronously.	If  you	 make  a call to connect() for the same socket
       before the connection is established, the function fails and sets errno
       to  [EALREADY].	 If the socket file descriptor is marked blocking, the
       connect() function blocks for an unspecified amount of time  until  the
       connection  is  established. If the timeout interval expires before the
       connection is established, the function fails and aborts the connection
       attempt.	  While	 blocked,  if connect() is interrupted by a signal, it
       fails and sets errno to [EINTR]. However, the connection request is not
       aborted; the connection is established asynchronously.

RETURN VALUES
       Upon successful completion, the connect() function returns a value of 0
       (zero). Otherwise, a value of -1 is returned and errno is set to	 indi‐
       cate the error.

ERRORS
       If the connect() function fails, errno may be set to one of the follow‐
       ing values: Search permission is denied for a  component	 of  the  path
       prefix; or write access to the named socket is denied.

	      [XNS4.0]	This error applies to AF_UNIX sockets only.  The spec‐
	      ified address is already in use.	The specified address  is  not
	      available	 from  the local machine.  The addresses in the speci‐
	      fied address family cannot be used with this socket.  A  connec‐
	      tion  request  is	 already in progress for the specified socket.
	      The socket parameter is not valid.  The attempt to  connect  was
	      rejected.	  The  remote  host reset the connection request.  The
	      address parameter is not in a readable part of the user  address
	      space.   The specified host is not reachable.  O_NONBLOCK is set
	      for the file descriptor for the socket and the connection cannot
	      be  immediately  established; the connection will be established
	      asynchronously.  The connect() function  was  interrupted	 by  a
	      signal  while  waiting for the connection to be established. The
	      connection establishment may continue asynchronously.  The value
	      of  the  address_len  parameter  is  invalid  for	 the specified
	      address family; or the sa_family field  in  the  socket  address
	      structure	 is  invalid for the protocol.	For an AF_UNIX socket,
	      an I/O error occurred while reading from or writing to the  file
	      system.	The  socket  is	 already  connected.   For  an AF_UNIX
	      socket, too many symbolic links were encountered in  translating
	      the  pathname  in address.  A component of the pathname exceeded
	      NAME_MAX characters, or an  entire  pathname  exceeded  PATH_MAX
	      characters.   The	 local	network connection is not operational.
	      No route to  the	network	 or  host  is  present.	  Insufficient
	      resources are available in the system to complete the call.  For
	      an AF_UNIX socket, a component of the pathname does not name  an
	      existing file or the pathname is an empty string.	 The available
	      STREAMS resources were insufficient for the  operation  to  com‐
	      plete.  For an AF_UNIX socket, a component of the path prefix of
	      the pathname in address is not a directory.  The socket  parame‐
	      ter refers to a file, not a socket.  The socket is listening and
	      cannot be connected.  The specified address has a different type
	      than the socket bound to the specified peer address.  The estab‐
	      lishment of a connection timed out before a connection was made.
	      [Tru64  UNIX]  The  socket is marked nonblocking, so the connec‐
	      tion cannot be immediately completed.  The  application  program
	      can select the socket for writing during the connection process.

SEE ALSO
       Functions:  accept(2),  bind(2),	 socket(2), getsockname(2), select(2),
       send(2).

       Standards: standards(5).

       Network Programmer's Guide

								    connect(2)
[top]

List of man pages available for DigitalUNIX

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