ELF_STRPTR(3)

NAME
elf_strptr - retrieve a string pointer in a string table

LIBRARY
libelf

SYNOPSIS
#include <libelf.h>
char *
elf_strptr(Elf *elf, size_t scndx, size_t stroffset);

DESCRIPTION
Function elf_strptr() allows an application to convert a string table offset to a string pointer, correctly translating the offset in the presence of multiple Elf_Data descriptors covering the contents of the section.

Argument elf is a descriptor for an ELF object. Argument scndx is the section index for an ELF string table. Argument stroffset is the index of the desired string in the string table.

RETURN VALUES
Function elf_strptr() returns a valid pointer on success or NULL in case an error was encountered.

ERRORS

[ELF_E_ARGUMENT]
    Argument elf was NULL.

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

[ELF_E_ARGUMENT]
    Argument scndx was not the section index for a string table.

[ELF_E_ARGUMENT]
    Argument stroffset exceeded the size of the string table.

[ELF_E_ARGUMENT]
    Argument stroffset index an unallocated region of the string table.

[ELF_E_DATA]
    Offset stroffset indexed a region that was not covered by any Elf_Data descriptor.

[ELF_E_DATA]
    An erroneous Elf_Data descriptor was part of the section specified by argument scndx.

[ELF_E_HEADER]
    ELF descriptor elf contained an invalid section header.

[ELF_E_RESOURCE]
    An out of memory condition was detected.

[ELF_E_SECTION]
    Section scndx contained a malformed section header.

[ELF_E_SECTION]
    The ELF descriptor in argument elf did not adhere to the conventions used for extended numbering.

SEE ALSO
elf(3), elf32_getshdr(3), elf64_getshdr(3), elf_getdata(3), elf_rawdata(3), gelf(3), gelf_getshdr(3)