MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Sockets Library Functions                        connect(3SOCKET)



NAME
     connect - initiate a connection on a socket

SYNOPSIS
     cc [ flag ... ] file ... -lsocket  -lnsl  [ library ... ]
     #include 
     #include 



     int connect(int s, const struct sockaddr *name, int namelen);


DESCRIPTION
     The parameter s is a socket. If it is  of  type  SOCKDGRAM,
     connect()  specifies the peer with which the socket is to be
     associated. This address is the address to  which  datagrams
     are  to  be sent if a receiver is not explicitly designated.
     This address is the only address from which datagrams are to
     be  received.  If  the socket s is of type SOCKSTREAM, con-
     nect() attempts to make a connection to another socket.  The
     other socket is specified by name. name is an address in the
     communication space of the socket. Each communication  space
     interprets  the  name  parameter in its own way. If s is not
     bound, then s will be bound to an address  selected  by  the
     underlying transport provider. Generally, stream sockets can
     successfully connect() only once. Datagram sockets  can  use
     connect()   multiple  times  to  change  their  association.
     Datagram sockets can dissolve the association by  connecting
     to a null address.

RETURN VALUES
     If the connection or binding succeeds, 0 is returned. Other-
     wise, -1 is returned and sets errno to indicate the error.

ERORS
     The call fails if:

     EACES           Search permission is denied for a component
                      of the path prefix of the pathname in name.


     EADRINUSE       The address is already in use.


     EADRNOTAVAIL    The specified address is not  available  on
                      the remote machine.


     EAFNOSUPORT     Addresses in the specified  address  family
                      cannot be used with this socket.




SunOS 5.11          Last change: 08 Mar 2005                    1






Sockets Library Functions                        connect(3SOCKET)



     EALREADY         The socket is non-blocking,  and a previous
                      connection  attempt  has  not yet been com-
                      pleted.


     EBADF            s is not a valid descriptor.


     ECONREFUSED     The  attempt  to  connect  was   forcefully
                      rejected.   The   calling   program  should
                      close(2) the socket descriptor,  and  issue
                      another  socket(3SOCKET)  call  to obtain a
                      new descriptor  before  attempting  another
                      connect() call.


     EINPROGRES      The socket is non-blocking, and the connec-
                      tion  cannot  be completed immediately. You
                      can use  select(3C) to complete the connec-
                      tion by selecting the socket for writing.


     EINTR            The  connection  attempt  was   interrupted
                      before  any data arrived by the delivery of
                      a signal. The connection, however, will  be
                      established asynchronously.


     EINVAL           namelen is not the size of a valid  address
                      for the specified address family.


     EIO              An I/O error occurred while reading from or
                      writing to the file system.


     EISCON          The socket is already connected.


     ELOP            Too many symbolic links were encountered in
                      translating the pathname in name.


     ENETUNREACH      The network  is  not  reachable  from  this
                      host.


     EHOSTUNREACH     The remote host is not reachable from  this
                      host.






SunOS 5.11          Last change: 08 Mar 2005                    2






Sockets Library Functions                        connect(3SOCKET)



     ENOENT           A component of the path prefix of the path-
                      name in name does not exist.


     ENOENT           The socket referred to by the  pathname  in
                      name does not exist.


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


     ENXIO            The server exited before the connection was
                      complete.


     ETIMEDOUT        Connection establishment timed out  without
                      establishing a connection.


     EWOULDBLOCK      The socket is marked as  non-blocking,  and
                      the requested operation would block.



     The following errors are specific to connecting names in the
     UNIX  domain.   These  errors might not apply in future ver-
     sions of the UNIX  IPC domain.

     ENOTDIR       A component of the path prefix of the pathname
                   in name is not a directory.


     ENOTSOCK      s is not a socket.


     ENOTSOCK      name is not a socket.


     EPROTOTYPE    The file that is referred  to  by  name  is  a
                   socket  of a type other than type s. For exam-
                   ple, s is  a  SOCKDGRAM  socket,  while  name
                   refers to a SOCKSTREAM socket.


ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:







SunOS 5.11          Last change: 08 Mar 2005                    3






Sockets Library Functions                        connect(3SOCKET)



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     MT-Level                     Safe                        
    


SEE ALSO
     close(2), accept(3SOCKET), getsockname(3SOCKET), select(3C),
     socket(3SOCKET), socket.h(3HEAD), attributes(5)













































SunOS 5.11          Last change: 08 Mar 2005                    4



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™