Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ elf_getarsym(3E) — DG/UX R4.11MU05

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

elf(3E)

ar(4)



elf_getarsym(3E)               DG/UX R4.11MU05              elf_getarsym(3E)


NAME
       elfgetarsym - retrieve archive symbol table

SYNOPSIS
       cc [flag ...] file ...  -lelf [library ...]

       #include <libelf.h>
       ElfArsym *elfgetarsym(Elf *elf, sizet *ptr);

DESCRIPTION
       elfgetarsym returns a pointer to the archive symbol table, if one is
       available for the ELF descriptor elf.  Otherwise, the archive doesn't
       have a symbol table, an error occurred, or elf was null; elfgetarsym
       then returns  a  null  value.   The  symbol  table  is  an  array  of
       structures that include the following members.

                    char            *asname;
                    sizet          asoff;
                    unsigned long   ashash;

       These members have the following semantics.

       asname   A pointer to a null-terminated symbol name resides here.

       asoff    This  value  is  a  byte  offset  from the beginning of the
                 archive  to  the  member's  header.   The  archive   member
                 residing at the given offset defines the associated symbol.
                 Values in asoff may be passed as arguments to elfrand  to
                 access the desired archive member.

       ashash   This is a hash value for the name, as computed by elfhash.

       If ptr is non-null, the library stores the number of table entries in
       the location to which ptr points.  This value is set to zero when the
       return value is null.  The table's last entry, which is  included  in
       the  count, has a null asname, a zero value for asoff, and ~0UL for
       ashash.

SEE ALSO
       elf(3E), elfgetarhdr(3E), elfhash(3E), elfrand(3E), ar(4).


Licensed material--property of copyright holder(s)

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