Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_getinfo(3N) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

close(2)

open(2)

t_alloc(3N)

t_close(3N)

t_open(3N)

netconfig(4)






       t_getinfo(3N)                                          t_getinfo(3N)


       NAME
             t_getinfo - get protocol-specific service information

       SYNOPSIS
             cc [options] file -lnsl
             #include <xti.h>
             int t_getinfo(int fd, struct t_info *info);

          Parameters
             fd    the file descriptor for the transport endpoint

             info  points to the t_info structure used to identify a
                   transport provider.

       DESCRIPTION
             This function is a TLI/XTI local management routine used to
             return the current characteristics of the underlying transport
             protocol associated with file descriptor fd.  The t_info
             structure is used to return the same information returned by
             t_open, although not necessarily precisely the same values.
             This function enables a transport user to access this
             information during any phase of communication.

          Structure Definitions
             This argument points to a struct t_info which contains the
             following members:

             long addr;                                   /* max size of the transport protocol address*/
             long options;                                /* max num of bytes of protocol-specific options*/
             long tsdu;                                   /* max size of a transport service data unit (TSDU)*/
             long etsdu;                                  /* max size of an expedited TSDU (ETSDU)*/
             long connect;                                /* max amt of data allowed on connect establishment*/
             long discon;                                 /* max amt of data allowed on t_snddis, t_rcvdis*/
             long servtype;                               /* service type supported by transport provider*/
             long flags;                                  /* provides more info about transport provider*/

             The values of the fields have the following meanings:

             addr          A value greater than or equal to 0 indicates the
                           maximum  size  of  a transport protocol address,
                           and a value of -2 specifies that  the  transport
                           provider   does   not  provide  user  access  to
                           transport protocol addresses.





                           Copyright 1994 Novell, Inc.               Page 1













      t_getinfo(3N)                                          t_getinfo(3N)


            options       A value greater than or equal to 0 indicates the
                          maximum  number  of  bytes  of protocol-specific
                          options supported by the provider, and  a  value
                          of -2 specifies that the transport provider does
                          not support user-settable options.

            tsdu          A value greater than  0  specifies  the  maximum
                          size  of a transport service data unit (TSDU); a
                          value of 0 specifies that the transport provider
                          does  not  support the concept of TSDU, although
                          it does support the sending  of  a  data  stream
                          with  no  logical  boundaries preserved across a
                          connection; a value of -1 specifies  that  there
                          is  no  limit on the size of a TSDU; and a value
                          of -2 specifies that the transfer of normal data
                          is not supported by the transport provider.

            etsdu         A value greater than  0  specifies  the  maximum
                          size of an expedited transport service data unit
                          (ETSDU);  a  value  of  0  specifies  that   the
                          transport  provider does not support the concept
                          of ETSDU, although it does support  the  sending
                          of  an  expedited  data  stream  with no logical
                          boundaries  preserved  across  a  connection;  a
                          value  of -1 specifies that there is no limit on
                          the  size  of  an  ETSDU;  and  a  value  of  -2
                          specifies that the transfer of expedited data is
                          not supported by the transport provider.

            connect       A value greater than  0  specifies  the  maximum
                          amount  of  data  that  may  be  associated with
                          connection establishment functions; and a  value
                          of -2 specifies that the transport provider does
                          not  allow  data  to  be  sent  with  connection
                          establishment functions.

            discon        A value greater than  0  specifies  the  maximum
                          amount  of  data that may be associated with the
                          t_snddis and t_rcvdis functions, and a value  of
                          -2  specifies  that  the transport provider does
                          not allow data to  be  sent  with  the  abortive
                          release functions.

            servtype      This field specifies the service type  supported
                          by  the  transport provider.  A single transport
                          endpoint may support only one of  the  following


                          Copyright 1994 Novell, Inc.               Page 2













       t_getinfo(3N)                                          t_getinfo(3N)


                           services at one time.

                           T_COTS        The transport provider supports  a
                                         connection-mode  service  but does
                                         not support the  optional  orderly
                                         release facility.

                           T_COTS_ORD    The transport provider supports  a
                                         connection-mode  service  with the
                                         optional orderly release facility.

                           T_CLTS        The transport provider supports  a
                                         connectionless  service.  For this
                                         service type, t_open  will  return
                                         -2 for etsdu, connect, and discon.

             flags         This field specifies other  information  in  the
                           form of bit indicators as follows: If T_SENDZERO
                           is  on,  this  indicates  that  the   underlying
                           transport  provider  supports  the sending of 0-
                           length TSDUs.

          Return Values
             t_getinfo 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 the following:

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

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

             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
             t_getinfo may be issued from any valid state except T_UNINIT
             and has no effect on the state.





                           Copyright 1994 Novell, Inc.               Page 3













      t_getinfo(3N)                                          t_getinfo(3N)


         Files
            /usr/lib/libxti.so
                              X/Open Transport Interface Library (shared
                              object)
            /usr/lib/libnsl.so
                              Network Services Library (shared object)
            Examine your system's /etc/netconfig file for device files
            associated with a transport protocol provider.

      USAGE
            If a transport user is concerned with protocol independence,
            the sizes specified in t_info may be accessed to determine how
            large the buffers must be to hold each piece of information.
            Alternatively, the t_alloc function may be used to allocate
            these buffers.

            The value of each field may change as a result of protocol
            option negotiation during connection establishment.  These
            values will only change from the values presented to t_open
            after the endpoint enters the T_DATAXFER state.

         Warnings
            An error will result if the data size allowed is exceeded by
            the transport user on any function.

      REFERENCES
            close(2), open(2), t_alloc(3N), t_close(3N), t_open(3N),
            netconfig(4)




















                          Copyright 1994 Novell, Inc.               Page 4








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