gelf_getdyn(3): gelf_getdyn - read and update ELF dynamic entries

GELF_GETDYN(3) FreeBSD Library Functions Manual GELF_GETDYN(3)

NAME

gelf_getdyn, gelf_update_dynread and update ELF dynamic entries

LIBRARY

ELF Access Library (libelf, -lelf)

SYNOPSIS

#include <gelf.h>
GElf_Dyn *
gelf_getdyn(Elf_Data *data, int ndx, GElf_Dyn *dyn);
int
gelf_update_dyn(Elf_Data *data, int ndx, GElf_Dyn *dyn);

DESCRIPTION

These convenience functions are used to retrieve and update class-dependent Elf32_Dyn or Elf64_Dyn information in the dynamic table of an ELF object.
Argument data is an Elf_Data descriptor associated with a section of type SHT_DYNAMIC. Argument ndx is the index of the entry being retrieved or updated. The class-independent GElf_Dyn structure is described in gelf(3).
Function gelf_getdyn() retrieves the class-dependent entry at index ndx in data buffer data and copies it to the destination pointed to by argument dyn after translation to class-independent form.
Function gelf_update_dyn() converts the class-independent entry pointed to by argument dyn to class-dependent form, and writes it to the entry at index ndx in the data buffer described by argument data. Function gelf_update_dyn() 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_getdyn() returns the value of argument dyn if successful, or NULL in case of an error. Function gelf_update_dyn() returns a non-zero value if successful, or zero in case of an error.

ERRORS

These functions may fail with the following errors:
[ELF_E_ARGUMENT]
Arguments data or dyn were NULL.
[ELF_E_ARGUMENT]
Argument ndx was less than zero or larger than the number of entries in the data descriptor.
[ELF_E_ARGUMENT]
Data descriptor data was not associated with a section of type SHT_DYNAMIC.
[ELF_E_RANGE]
A value was not representable in the target type.
August 29, 2006 FreeBSD 9.0


Categories

  1. System (20)
    1. FreeBSD (5)
    2. Linux (9)
  2. Email (2)
  3. DNS (2)
  4. Databases (1)
  5. WebServer (27)
 
Copyright © 2012-2015 HowToUnix - *nix Howtos and Tutorials
All Rights Reserved.