GELF_GETSHDR(3) | NetBSD Library Functions Manual | GELF_GETSHDR(3)

# NAME

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

# LIBRARY

ELF Parsing 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)

August 27, 2006 | NetBSD 5.99