Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ connect(3N) — svr4 — mips UMIPS RISC/os 5.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

accept(3N)

connect(3N)

getsockname(3N)

socket(3N)



CONNECT(3N-SVR4)    RISC/os Reference Manual     CONNECT(3N-SVR4)



NAME
     connect - initiate a connection on a socket

SYNOPSIS
     #include <sys/types.h>
     #include <sys/socket.h>

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

DESCRIPTION
     The parameter s is a socket.  If it is of type SOCK_DGRAM,
     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;
     it is the only address from which datagrams are to be
     received.  If the socket s is of type SOCK_STREAM, connect()
     attempts to make a connection to another socket.  The other
     socket is specified by name.  name is an address in the com-
     munications space of the socket.  Each communications space
     interprets the name parameter in its own way. If s is not
     bound, then it will be bound to an address selected by the
     underlying transport provider.  Generally, stream sockets
     may successfully connect() only once; datagram sockets may
     use connect() multiple times to change their association.
     Datagram sockets may dissolve the association by connecting
     to a null address.

RETURN VALUE
     If the connection or binding succeeds, then 0 is returned.
     Otherwise a -1 is returned and a more specific error code is
     stored in errno.

ERRORS
     The call fails if:

     EBADF               s is not a valid descriptor.

     ENOTSOCK            s is a descriptor for a file, not a
                         socket.

     EINVAL              namelen is not the size of a valid
                         address for the specified address fam-
                         ily.

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

     EAFNOSUPPORT        Addresses in the specified address fam-
                         ily cannot be used with this socket.



                        Printed 11/19/92                   Page 1





CONNECT(3N-SVR4)    RISC/os Reference Manual     CONNECT(3N-SVR4)



     EISCONN             The socket is already connected.

     ETIMEDOUT           Connection establishment timed out
                         without establishing a connection.

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

     ENETUNREACH         The network is not reachable from this
                         host.

     EADDRINUSE          The address is already in use.

     EINPROGRESS         The socket is non-blocking and the con-
                         nection cannot be completed immediately.
                         It is possible to select(3N) for comple-
                         tion by selecting the socket for writ-
                         ing.  However, this is only possible if
                         the socket STREAMS module is the topmost
                         module on the protocol stack with a
                         write service procedure.  This will be
                         the normal case.

     EALREADY            The socket is non-blocking and a previ-
                         ous connection attempt has not yet been
                         completed.

     EINTR               The connection attempt was interrupted
                         before any data arrived by the delivery
                         of a signal.

     ENOTSOCK            The file referred to by name is not a
                         socket.

     EPROTOTYPE          The file referred to by name is a socket
                         of a type other than type s (for exam-
                         ple, s is a SOCK_DGRAM socket, while
                         name refers to a SOCK_STREAM socket).

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

     The following errors are specific to connecting names in the
     UNIX domain. These errors may not apply in future versions
     of the UNIX IPC domain.

     ENOTDIR             A component of the path prefix of the



 Page 2                 Printed 11/19/92





CONNECT(3N-SVR4)    RISC/os Reference Manual     CONNECT(3N-SVR4)



                         pathname in name is not a directory.

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

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

     EACCES              Search permission is denied for a com-
                         ponent of the path prefix of the path-
                         name in name.

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

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

SEE ALSO
     accept(3N), connect(3N), getsockname(3N), socket(3N).



































                        Printed 11/19/92                   Page 3



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026