FreeBSD Manual Pages
GELF_GETSYMSHNDX(3) BSD Library Functions Manual GELF_GETSYMSHNDX(3) NAME gelf_getsymshndx, gelf_update_symshndx -- read and update symbol informa- tion using extended section indices LIBRARY ELF Access Library (libelf, -lelf) SYNOPSIS #include <gelf.h> GElf_Sym * gelf_getsymshndx(Elf_Data *symdata, Elf_Data *xndxdata, int ndx, GElf_Sym *sym, Elf32_Word *xndxptr); int gelf_update_symshndx(Elf_Data *symdata, Elf_Data *xndxdata, int ndx, GElf_Sym *sym, Elf32_Word xndx); DESCRIPTION These functions are analogous to gelf_getsym() and gelf_update_sym() re- spectively, but are capable of handling symbol tables using extended sec- tion numbering. Argument symdata is an Elf_Data descriptor associated with a section of type SHT_SYMTAB. Argument xndxdata is an Elf_Data descriptor associated with a section of type SHT_SYMTAB_SHNDX. Argument ndx is the index of the symbol table entry being retrieved or updated. Argument sym is a pointer to a class-independent GElf_Sym structure. GElf_Sym structures are described in detail in gelf(3). Function gelf_getsymshndx() retrieves symbol information at index ndx from the data descriptor specified by argument symdata and stores in class-independent form in argument sym. In addition it retrieves the ex- tended section index for the symbol from data buffer xndxdata and stores it into the location pointed to by argument xndxptr. Function gelf_update_symshndx() updates the underlying symbol table entry in data descriptor symdata with the information in argument sym. In ad- dition it sets the extended section index in data buffer xndxdata to the value of argument xndx. RETURN VALUES Function gelf_getsymshndx() returns the value of argument sym if success- ful, or NULL in case of an error. Function gelf_update_symshndx() 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 symdata, xndxdata, xndxptr or sym were NULL. [ELF_E_ARGUMENT] Argument ndx was less than zero, or too large for ei- ther of descriptors symdata or xndxdata. [ELF_E_ARGUMENT] Data descriptor symdata was not associated with a sec- tion of type SHT_SYMTAB. [ELF_E_ARGUMENT] Data descriptor xndxdata was not associated with a sec- tion of type SHT_SYMTAB_SHNDX. [ELF_E_ARGUMENT] Data descriptor symdata and xndxdata were associated with different ELF objects. [ELF_E_VERSION] The Elf_Data descriptors denoted by arguments symdata and xndxdata are associated with an ELF object with an unsupported version. SEE ALSO elf(3), elf_getdata(3), elf_getscn(3), gelf(3), gelf_getsym(3), gelf_update_sym(3) BSD April 22, 2019 BSD
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gelf_getsymshndx&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>