Reference

gelf_update_phdr(3)

copy a class-independent program header table entry into an ELF descriptor

NAME

gelf_update_phdr - copy a class-independent program header table entry into an ELF descriptor

SYNOPSIS

#include <gelf.h>
int gelf_update_phdr (Elf *elf, int ndx, GElf_Phdr *src);

DESCRIPTION

gelf_update_phdr() copies the class-independent program header table entry from the structure pointed to by src into the program header table of elf at index ndx . The program header table entry is translated as necessary to match the class (ELFCLASS32 or ELFCLASS64) of the underlying object file.

If elf has class ELFCLASS32 then p_offset, p_vaddr, p_paddr, p_filesz, p_memsz, and p_align must fit within unsigned 32-bit values.

PARAMETERS

elf

Pointer to an ELF descriptor of kind ELF_K_ELF.

ndx

Index of the program header table entry to be updated. The number of program header table entries associated with elf can be obtained with elf_getphdrnum().

src

Pointer to a GElf_Phdr structure that holds the caller's desired program header table entry contents. src must not be NULL.

RETURN VALUE

On success, this function returns a non-zero value and updates the program header table entry at index ndx. The program header table will be flagged with ELF_F_DIRTY. On failure, it returns 0 and sets elf_errno. If elf is NULL then 0 is returned without setting elf_errno.

SEE ALSO

elf_flagphdr(3), elf_getphdrnum(3), gelf_getphdr(3), gelf_newphdr(3), libelf(3), elf(5)

ATTRIBUTES

InterfaceAttributeValue
gelf_update_phdr()Thread safetyMT-Safe

REPORTING BUGS

Report bugs to <[email protected]> or https://sourceware.org/bugzilla/.