gelf_getrelagelf_update_rela
- read and update ELF relocation entries with addends
LIBRARY
Lb libelf
SYNOPSIS
#include <gelf.h> GElf_Rela *
gelf_getrela (Elf_Data *data int ndx GElf_Rela *rela); int
gelf_update_rela (Elf_Data *data int ndx GElf_Rela *rela);
DESCRIPTION
These convenience functions are used to retrieve and update class-dependent
Vt Elf32_Rela
or
Vt Elf64_Rela
structures in an ELF object.
Argument
data
is an
Vt Elf_Data
descriptor associated with a section of type
SHT_RELA
Argument
ndx
is the index of the entry being retrieved or updated.
The class-independent
Vt GElf_Rela
structure is described in
gelf(3).
Function
gelf_getrela ();
retrieves the class-dependent entry at index
ndx
in data buffer
data
and copies it to the destination pointed to by argument
rela
after translation to class-independent form.
Function
gelf_update_rela ();
converts the class-independent entry pointed to
by argument
rela
to class-dependent form, and writes it to the entry at index
ndx
in the data buffer described by argument
data
Function
gelf_update_rela ();
signals an error if any of the values in the class-independent
representation exceeds the representable limits of the target
type.
RETURN VALUES
Function
gelf_getrela ();
returns the value of argument
rela
if successful, or NULL in case of an error.
Function
gelf_update_rela ();
returns a non-zero value if successful, or zero in case of an error.
ERRORS
These functions may fail with the following errors:
Bq Er ELF_E_ARGUMENT
Arguments
data
or
rela
were NULL.
Bq Er ELF_E_ARGUMENT
Argument
ndx
was less than zero or larger than the number of entries in the data
descriptor.
Bq Er ELF_E_ARGUMENT
Data descriptor
data
was not associated with a section of type
SHT_RELA