ELF Library Functions elf32_getphdr(3ELF)
NAME
elf32_getphdr, elf32_newphdr, elf64_getphdr, elf64_newphdr -
retrieve class-dependent program header table
SYNOPSIS
cc [ flag ... ] file... -lelf [ library ... ]
#include
Elf32_Phdr *elf32_getphdr(Elf *elf);
Elf32_Phdr *elf32_newphdr(Elf *elf, size_t count);
Elf64_Phdr *elf64_getphdr(Elf *elf);
Elf64_Phdr *elf64_newphdr(Elf *elf, size_t count);
DESCRIPTION
For a 32-bit class file, elf32_getphdr() returns a pointer
to the program execution header table, if one is available for the ELF descriptor elf.elf32_newphdr() allocates a new table with count entries,
regardless of whether one existed previously, and sets theELF_F_DIRTY bit for the table. See elf_flagdata(3ELF).
Specifying a zero count deletes an existing table. Note thisbehavior differs from that of elf32_newehdr() allowing a
program to replace or delete the program header table,changing its size if necessary. See elf32_getehdr(3ELF).
If no program header table exists, the file is not a 32-bit
class file, an error occurs, or elf is NULL, both functionsreturn a null pointer. Additionally, elf32_newphdr() returns
a null pointer if count is 0.The table is an array of Elf32_Phdr structures, each of
which includes the following members:Elf32_Word p_type;
Elf32_Off p_offset;
Elf32_Addr p_vaddr;
Elf32_Addr p_paddr;
Elf32_Word p_filesz;
Elf32_Word p_memsz;
Elf32_Word p_flags;
Elf32_Word p_align;
SunOS 5.11 Last change: 11 Jul 2001 1
ELF Library Functions elf32_getphdr(3ELF)
The Elf64_Phdr structures include the following members:
Elf64_Word p_type;
Elf64_Word p_flags;
Elf64_Off p_offset;
Elf64_Addr p_vaddr;
Elf64_Addr p_paddr;
Elf64_Xword p_filesz;
Elf64_Xword p_memsz;
Elf64_Xword p_align;
For the 64-bit class, replace 32 with 64 as appropriate.
The ELF header's e_phnum member tells how many entries the
program header table has. See elf32_getehdr(3ELF). A program
may inspect this value to determine the size of an existingtable; elf32_newphdr() automatically sets the member's value
to count. If the program is building a new file, it isresponsible for creating the file's ELF header before creat-
ing the program header table.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | MT-Safe |
|_____________________________|_____________________________|
SEE ALSO
elf(3ELF), elf32_getehdr(3ELF), elf_begin(3ELF),
elf_flagdata(3ELF), libelf(3LIB), attributes(5)
SunOS 5.11 Last change: 11 Jul 2001 2