Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_alloc(3N) — Amiga System V Release 4 Version 2.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(3)



t_alloc(3N)             NETWORK FUNCTIONS             t_alloc(3N)



NAME
     talloc - allocate a library structure

SYNOPSIS
     #include <tiuser.h>

     char *talloc(fd, structtype, fields)
     int fd;
     int structtype;
     int fields;

DESCRIPTION
     The talloc function dynamically allocates  memory  for  the
     various  transport function argument structures as specified
     below.  This function will allocate memory for the specified
     structure,  and will also allocate memory for buffers refer-
     enced by the structure.

     The structure to allocate is specified by  structtype,  and
     can be one of the following:

     TBIND           struct tbind

     TCALL           struct tcall

     TOPTMGMT        struct toptmgmt

     TDIS            struct tdiscon

     TUNITDATA       struct tunitdata

     TUDERROR        struct tuderr

     TINFO           struct tinfo

     where each of these structures may subsequently be  used  as
     an argument to one or more transport functions.

     Each of the above structures,  except  TINFO,  contains  at
     least  one field of type struct netbuf.  netbuf is described
     in intro(3).  For each field of  this  type,  the  user  may
     specify  that  the buffer for that field should be allocated
     as well.  The fields argument specifies this  option,  where
     the argument is the bitwise-OR of any of the following:

     TADDR    The addr field of the tbind, tcall,  tunitdata,
               or tuderr structures.

     TOPT     The  opt   field   of   the   toptmgmt,   tcall,
               tunitdata, or tuderr structures.

     TUDATA   The  udata  field  of  the  tcall,  tdiscon,  or



            Last change: Networking Support Utilities           1





t_alloc(3N)             NETWORK FUNCTIONS             t_alloc(3N)



               tunitdata structures.

     TALL     All relevant fields of the given structure.

     For each field specified in fields,  talloc  will  allocate
     memory  for  the  buffer associated with the field, and ini-
     tialize the buf pointer and maxlen [see netbuf  in  intro(3)
     for  description  of buf and maxlen] field accordingly.  The
     length of the buffer allocated will be  based  on  the  same
     size  information that is returned to the user on topen and
     tgetinfo.  Thus, fd must refer to  the  transport  endpoint
     through  which the newly allocated structure will be passed,
     so that the appropriate size information  can  be  accessed.
     If  the size value associated with any specified field is -1
     or -2 (see topen or tgetinfo), talloc will be  unable  to
     determine  the size of the buffer to allocate and will fail,
     setting terrno to TSYSERR and errno  to  EINVAL.   For  any
     field  not  specified in fields, buf will be set to NULL and
     maxlen will be set to zero.

     Use of talloc to allocate structures will help  ensure  the
     compatibility  of  user programs with future releases of the
     transport interface.  On failure, terrno may be set to  one
     of the following:

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

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

SEE ALSO
     intro(3), tfree(3N), tgetinfo(3N), topen(3N).
     UNIX System V Network Programmer's Guide.

DIAGNOSTICS
     On successful completion, talloc returns a pointer  to  the
     newly allocated structure.  On failure, NULL is returned.

















            Last change: Networking Support Utilities           2



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