unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (SunOS-4.1.3)
Page:
Section:
Apropos / Subsearch:
optional field

T_OPTMGMT(3N)                                                    T_OPTMGMT(3N)



NAME
       t_optmgmt - manage options for a transport endpoint

SYNOPSIS
       #include <&lt;tiuser.h>&gt;

       int t_optmgmt(fd, req, ret)
       int fd;
       struct t_optmgmt *req;
       struct t_optmgmt *ret;

DESCRIPTION
       t_optmgmt()  enables a transport user to retrieve, verify, or negotiate
       protocol options with the transport provider.  fd  identifies  a  bound
       transport endpoint.

       The  req  and ret arguments point to a t_optmgmt() structure containing
       the following members:
            struct netbuf opt;
            long flags;

       The opt field identifies protocol options and the flags field  is  used
       to specify the action to take with those options.

       The  options are represented by a netbuff structure in a manner similar
       to the address in t_bind(3N).  The maxlen, len, and buf members of  the
       netbuf structure are described in t_accept(3N).  req is used to request
       a specific action of the provider and to send options to the  provider.
       len  specifies  the  number  of bytes in the options, buf points to the
       options buffer, and maxlen has no meaning for the  req  argument.   The
       transport  provider  may  return  options  and  flag values to the user
       through ret.  For ret, maxlen specifies the maximum size of the options
       buffer and buf points to the buffer where the options are to be placed.
       On return, len specifies the  number  of  bytes  of  options  returned.
       maxlen  has no meaning for the req argument, but must be set in the ret
       argument to specify the maximum number of bytes the options buffer  can
       hold.   The  actual  structure and content of the options is imposed by
       the transport provider.

       The flags field of req can specify one of the following actions:

       T_NEGOTIATE         Enables the user to negotiate  the  values  of  the
                           options   specified   in  req  with  the  transport
                           provider.  The provider will evaluate the requested
                           options  and  negotiate  the  values, returning the
                           negotiated values through ret.

       T_CHECK             Enables the user  to  verify  whether  the  options
                           specified  in  req  are  supported by the transport
                           provider.  On return, the flags field of  ret  will
                           have  either T_SUCCESS or T_FAILURE set to indicate
                           to the user  whether  the  options  are  supported.
                           These  flags  are  only  meaningful for the T_CHECK
                           request.

       T_DEFAULT           Enables a user to retrieve the default options sup-
                           ported by the transport provider into the opt field
                           of ret.  In req, the len field of opt must be  zero
                           and the buf field may be NULL.

       If  issued  as part of the connectionless-mode service, t_optmgmt() may
       block due to flow control constraints.  t_optmgmt() will  not  complete
       until  the  transport  provider  has processed all previously sent data
       units.

RETURN VALUES
       t_optmgmt() returns:

       0      on success.

       -1     on failure and sets t_errno to indicate the error.

ERRORS
       TACCES              The user does not have permission to negotiate  the
                           specified options.

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

       TBADFLAG            An invalid flag was specified.

       TBADOPT             The specified protocol options were in an incorrect
                           format or contained illegal information.

       TBUFOVFLW           The  number  of bytes allowed for an incoming argu-
                           ment is not sufficient to store the value  of  that
                           argument.   The  information  to be returned in ret
                           will be discarded.

       TOUTSTATE           The function was issued in the wrong sequence.

       TSYSERR             The function failed due to a system error  and  set
                           errno to indicate the error.

SEE ALSO
       intro(3), t_getinfo(3N), t_open(3N)

                                21 January 1990                  T_OPTMGMT(3N)