Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_sndudt(NSL) — OpenDesktop Software Development System 1.0.0d

Media Vault

Software Library

Restoration Projects

Artifacts Sought

     Name
          t_sndudata - send a data unit

     Syntax
          #include <tiuser.h>

          int t_sndudata(fd, unitdata)
          int fd;
          struct t_unitdata *unitdata;

     Description
          This function is used in connectionless mode to send a data
          unit to another transport user.  fd identifies the local
          transport endpoint through which data will be sent, and
          unitdata points to a t_unitdata structure containing the
          following members:

            struct netbuf addr;
            struct netbuf opt;
            struct netbuf udata;

          netbuf is described in intro(NSL).  In unitdata, addr
          specifies the protocol address of the destination user, opt
          identifies protocol-specific options that the user wants
          associated with this request, and udata specifies the user
          data to be sent.  The user may choose not to specify what
          protocol options are associated with the transfer by setting
          the len field of opt to zero.  In this case, the provider
          may use default options.

          If the len field of udata is zero, no data unit will be
          passed to the transport provider; t_sndudata will not send
          zero-length data units.

          By default, t_sndudata operates in synchronous mode and may
          wait if flow control restrictions prevent the data from
          being accepted by the local transport provider at the time
          the call is made.  However, if O_NDELAY is set (via t_open
          or fcntl), t_sndudata will execute in asynchronous mode and
          will fail under such conditions.

          If t_sndudata is issued from an invalid state, or if the
          amount of data specified in udata exceeds the TSDU size as
          returned by t_open or t_getinfo, the provider will generate
          an EPROTO protocol error.  (See TSYSERR below.)

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

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

          [TFLOW]           O_NDELAY was set, but the flow control
                            mechanism prevented the transport provider
                            from accepting data at this time.

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

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

     See Also
          intro(NSL), t_rcvudata(NSL), t_rcvuderr(NSL).
          Network Programmer's Guide.

     Diagnostics
          The t_sndudata function returns 0 on successful completion
          and -1 on failure, and t_errno is set to indicate the error.

     Standards Conformance
          t_sndudata is conformant with:
          AT&T SVID Issue 2, Select Code 307-127.

                                                (printed 6/18/89)



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