.TH ELF32_NEWPHDR 3 2024-08-14 "Libelf" "Libelf Programmer's Manual" .SH NAME elf32_newphdr, elf64_newphdr \- create a new program header table for a 32-bit or 64-bit ELF object file .SH SYNOPSIS .nf .B #include .BI "Elf32_Phdr *elf32_newphdr(Elf *" elf ", size_t " count ");" .BI "Elf64_Phdr *elf64_newphdr(Elf *" elf ", size_t " count ");" .SH DESCRIPTION Create a new program header table for the ELF object file referred to by .IR elf . The number of entries in the new program header table is specified by .IR count . A .I count of zero removes the existing program header table. The function allocates a new array of .B Elf32_Phdr and makes it the program header table for .IR elf . The new program header contents are set to zero and any previous program header table is discarded. An ELF header must exist before creating a program header table. .SH PARAMETERS .TP .I elf Pointer to the ELF object for which a new program header table is to be created. .TP .I count The number of entries in the new program header table. A count of zero removes the existing program header table. .SH RETURN VALUE On success, return a pointer to the first .B Elf32_Phdr in the newly created program header table. If .I elf is NULL then return NULL. If an error occurs, return NULL and set a libelf error code. .SH SEE ALSO .BR elf32_newehdr (3), .BR elf_errno (3), .BR libelf (3), .BR elf (5) .SH ATTRIBUTES For an explanation of the terms used in this section, see .BR attributes (7). .TS allbox; lbx lb lb l l l. Interface Attribute Value T{ .na .nh .BR elf32_newphdr (), .BR elf64_newphdr () T} Thread safety MT-Safe .TE .SH REPORTING BUGS Report bugs to or https://sourceware.org/bugzilla/.