Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_sndudata(3n) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(3)



t_sndudata(3N)          LIBRARY FUNCTIONS          t_sndudata(3N)



NAME
     tsndudata - send a data unit

SYNOPSIS
     #include <tiuser.h>

     int tsndudata (int fd, struct tunitdata *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  tunitdata structure containing the
     following members:

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

     netbuf is described in intro(3).  In unitdata,  addr  speci-
     fies the protocol address of the destination user, opt iden-
     tifies protocol-specific options that the user wants associ-
     ated 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, and the sending  of  zero
     bytes is not supported by the underlying transport provider,
     tsndudata will return -1 with terrno set to TBADDATA.

     By default, tsndudata 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 ONDELAY or ONONBLOCK is set
     (via topen or fcntl), tsndudata will execute in  asynchro-
     nous mode and will fail under such conditions.

     If tsndudata is issued from an invalid  state,  or  if  the
     amount  of  data specified in udata exceeds the TSDU size as
     returned in the tsdu field of the info argument of topen or
     tgetinfo,  the  provider  will  generate an EPROTO protocol
     error.  (See TSYSERR below.)  If the state is invalid,  this
     error  may not occur until a subsequent reference is made to
     the transport endpoint.  On failure, terrno may be  set  to
     one of the following:

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

     [TFLOW]           ONDELAY or ONONBLOCK was  set,  but  the



                                                                1





t_sndudata(3N)          LIBRARY FUNCTIONS          t_sndudata(3N)



                       flow control mechanism prevented the tran-
                       sport 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  execu-
                       tion of this function.

     [TBADDATA]        nbytes is zero and sending zero  bytes  is
                       not supported by the transport provider.

SEE ALSO
     intro(3), trcvudata(3N), trcvuderr(3N).
     UNIX System V Network Programmer's Guide.

DIAGNOSTICS
     tsndudata returns 0 on  successful  completion  and  -1  on
     failure terrno is set to indicate the error.



































                                                                2



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