GELF_UPDATE_PHDR(3)

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
Interface | Attribute | Value
 | Thread safety | MT-Safe

REPORTING BUGS
Report bugs to <elfutils-devel@sourceware.org> or https://sourceware.org/bugzilla/.