Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


GELF_GETSHDR(3)            Library Functions Manual            GELF_GETSHDR(3)

NAME
     elf32_getshdr, elf64_getshdr, gelf_getshdr - retrieve the class-dependent
     section header

LIBRARY
     ELF Access Library (libelf, -lelf)

SYNOPSIS
     #include <libelf.h>

     Elf32_Shdr *
     elf32_getshdr(Elf_Scn *scn);

     Elf64_Shdr *
     elf64_getshdr(Elf_Scn *scn);

     #include <gelf.h>

     GElf_Shdr *
     gelf_getshdr(Elf_Scn *scn, GElf_Shdr *shdr);

DESCRIPTION
     These functions return a pointer to the ELF Section Header data structure
     associated with section descriptor scn.

     Function elf32_getshdr() retrieves a pointer to an Elf32_Shdr structure.
     Section descriptor scn must be associated with an ELF descriptor of class
     ELFCLASS32.

     Function elf64_getshdr() retrieves a pointer to an Elf64_Shdr structure.
     Section descriptor scn must be associated with an ELF descriptor of class
     ELFCLASS64.

     Function gelf_getshdr() copies the values in the section header
     associated with argument scn to the structure pointed to be argument dst.
     The GElf_Shdr data structure is described in gelf(3).

RETURN VALUES
     Functions elf32_getshdr() and elf64_getshdr() return a valid pointer to
     the appropriate section header on success or NULL if an error was
     encountered.

     Function gelf_getshdr() returns argument dst if successful, or NULL if an
     error was encountered.

ERRORS
     These functions may fail with the following errors:

     [ELF_E_ARGUMENT]  Arguments scn or shdr were NULL.

     [ELF_E_ARGUMENT]  Argument scn was not associated a descriptor for an ELF
                       object.

     [ELF_E_CLASS]     The ELF class associated with the section descriptor
                       scn did not match the class expected by the API.

SEE ALSO
     elf(3), elf_getscn(3), gelf(3), gelf_update_shdr(3)

NetBSD 10.99                    August 27, 2006                   NetBSD 10.99