Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ldgetaux(3x) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ldclose(3X)

ldopen(3X)

ldtbseek(3X)

ldtbread(3X)

ldfcn(4)



ldgetaux(3X)            LIBRARY FUNCTIONS            ldgetaux(3X)



NAME
     ldgetaux - retrieve an auxiliary entry, given an index

SYNOPSIS
     #include <stdio.h>
     #include <filehdr.h>
     #include <sym.h>
     #include <ldfcn.h>

     pAUXU ldgetaux (ldptr, iaux)
     LDFILE ldptr;
     long iaux;

DESCRIPTION
     Ldgetaux returns a pointer to an auxiliary table entry asso-
     ciated with iaux.  The AUXU is contained in a static buffer.
     Because the buffer can be  overwritten  by  later  calls  to
     ldgetaux,  it  must be copied by the caller if the aux is to
     be saved or changed.

     Note that auxiliary entries are not swapped as this  routine
     cannot  detect  what  manifestation  of  the  AUXU  union is
     retrieved. If LDAUXSWAP(ldptr, ldf) is non-zero,  a  further
     call  to  swap_aux is required.  Before calling the swap_aux
     routine, the caller should copy the aux.

     If the auxiliary cannot be retrieved, Ldgetaux returns  NULL
     (defined  in  <stdio.h>)  for  an  object file.  This occurs
     when:


     ⊕       the auxiliary table cannot be found

     ⊕       the iaux offset into the auxiliary table  is  beyond
             the end of the table


     Typically, ldgetaux is called immediately after a successful
     call to ldtbread to retrieve the data type information asso-
     ciated with the symbol table entry filled by  ldtbread.  The
     index field of the symbol, pSYMR, is the iaux when data type
     information is required. If the data type information for  a
     symbol  is  not  present,  the  index  field is indexNil and
     ldgetaux should not be called.

     The program must be loaded with the object file access  rou-
     tine library libmld.a.

SEE ALSO
     ldclose(3X),   ldopen(3X),    ldtbseek(3X),    ldtbread(3X),
     ldfcn(4).




                                                                1



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