Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_rcvconnect(3N) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fcntl(2)

intro(3)

t_accept(3N)

t_bind(3N)

t_connect(3N)

t_listen(3N)

t_open(3N)

t_optmgmt(3N)






       t_rcvconnect(3N)                                    t_rcvconnect(3N)


       NAME
             t_rcvconnect - receive the confirmation from a connect request

       SYNOPSIS
             cc [options] file -lnsl
             #include <xti.h>
             int t_rcvconnect(int fd, struct t_call *call)

          Parameters
             fd    the file descriptor for the transport endpoint where
                   communication will be established.

             call  points to the t_call structure used to identify the
                   transport user that will receive the connection
                   indication.

       DESCRIPTION
             This function is a routine for establishing a transport
             connection.  t_rcvconnect enables a calling transport user to
             determine the status of a connect request that it issued to a
             responding transport endpoint.  On successful completion of
             t_rcvconnect, the connection is initiated with an asynchronous
             t_connect is established.

             By default, t_rcvconnect executes in synchronous mode and
             waits for the connection to be established before returning.

             fd identifies the responding transport endpoint, and on return
             call contains information associated with the newly
             established connection.

          Structure Definitions
             The call argument points to a t_call structure which contains
             the following members:

                         struct netbuf addr;             /* address*/
                         struct netbuf opt;              /* options*/
                         struct netbuf udata;            /* user data*/
                         int sequence;    /* sequence number*/

             netbuf is described in intro(3).  In call,  addr  returns  the
             protocol  address  associated  with  the  responding transport
             endpoint,  opt  presents  any  protocol-specific   information
             associated  with the connection, udata points to optional user
             data that may be returned by the  destination  transport  user
             during  connection  establishment, and sequence has no meaning


                           Copyright 1994 Novell, Inc.               Page 1













      t_rcvconnect(3N)                                    t_rcvconnect(3N)


            for this function.

            The maxlen field of each argument must be set  before  issuing
            this  function  to indicate the maximum size of the buffer for
            each.  However, call may be NULL, in which case no information
            is given to the user on return from t_rcvconnect.

            On return, the addr, opt,  and  udata  fields  reflect  values
            associated with the connection.

            If O_NONBLOCK is  set  (via  t_open  or  fcntl),  t_rcvconnect
            executes  in  asynchronous  mode,  and  reduces  to a poll for
            existing  connect  confirmations.   If  none  are   available,
            t_rcvconnect  fails on a TNODATA error and returns immediately
            without waiting for the connection to be established.

         Return Values
            t_rcvconnect returns 0 on success and -1 on failure and
            t_errno is set to indicate the error.

         Errors
            On failure, t_errno may be set to one of the following:

            TBADF     The specified file descriptor does not refer to a
                      transport endpoint.

            TBUFOVFLW The number of bytes (maxlen) allocated for an
                      incoming argument is greater than zero but not
                      sufficient to store the value of that argument.  The
                      connect information to be returned in call will be
                      discarded.  The provider's state, as seen by the
                      user, will be changed to DATAXFER.

            TNODATA   O_NONBLOCK was set, but a connect confirmation has
                      not yet arrived.

            TLOOK     An asynchronous event has occurred on the transport
                      connection specified by fd and requires immediate
                      attention.

            TNOTSUPPORT
                      This function is not supported by the underlying
                      transport provider.





                          Copyright 1994 Novell, Inc.               Page 2













       t_rcvconnect(3N)                                    t_rcvconnect(3N)


             TSYSERR   A system error has occurred during execution of this
                       function.

             TOUTSTATE The function was issued in the wrong sequence on the
                       transport endpoint referenced by fd.

             TPROTO    A communication problem has been detected with the
                       transport provider and there is no other value of
                       t_errno to describe the error condition.

          State Transitions
             On entry, T_OUTCON; T_DATAXFER (successful) or T_OUTCON
             (failed) on exit.

          Files
             /usr/lib/libxti.so
                               X/Open Transport Interface Library (shared
                               object)
             /usr/lib/libnsl.so
                               Network Services Library (shared object)

       USAGE
             A subsequent call to t_rcvconnect is required to complete the
             connection establishment phase and retrieve the information
             returned in call.

       REFERENCES
             fcntl(2), intro(3), t_accept(3N), t_bind(3N), t_connect(3N),
             t_listen(3N), t_open(3N), t_optmgmt(3N)



















                           Copyright 1994 Novell, Inc.               Page 3








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