Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > E

elf_getehdr(3E)

HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

elf_getehdr: elf32_getehdr(), elf32_newehdr(), elf64_getehdr(), elf64_newehdr() — retrieve class-dependent object file header for elf32 or elf64 file

SYNOPSIS

Command: cc [flag]... file... -lelf [library]...

#include <libelf.h>

Elf32_Ehdr *elf32_getehdr(Elf *elf); Elf32_Ehdr *elf32_newehdr(Elf *elf); Elf64_Ehdr *elf64_getehdr(Elf *elf); Elf64_Ehdr *elf64_newehdr(Elf *elf);

DESCRIPTION

32-bit Class File

For a 32-bit class file, elf32_getehdr() returns a pointer to an ELF header, if one is available for the ELF descriptor elf. If no header exists for the descriptor, elf32_newehdr() allocates a "clean" one, but it otherwise behaves the same as elf32_getehdr(). It does not allocate a new header if one exists already. If no header exists (for elf_getehdr()), one cannot be created (for elf_newehdr()), a system error occurs, the file is not a 32-bit class file, or elf is null, both functions return a null pointer. The header includes the following members.

unsigned char e_ident[EI_NIDENT]; Elf32_Half e_type; Elf32_Half e_machine; Elf32_Word e_version; Elf32_Addr e_entry; Elf32_Off e_phoff; Elf32_Off e_shoff; Elf32_Word e_flags; Elf32_Half e_ehsize; Elf32_Half e_phentsize; Elf32_Half e_phnum; Elf32_Half e_shentsize; Elf32_Half e_shnum; Elf32_Half e_shstrndx;

elf32_newehdr() automatically sets the ELF_F_DIRTY bit (see elf_flag(3E)). A program may use elf_getident to inspect the identification bytes from a file.

64-bit Class File

For a 64-bit class file, elf64_getehdr() returns a pointer to an ELF header, if one is available for the ELF descriptor elf. If no header exists for the descriptor, elf64_newehdr() allocates a "clean" one, but it otherwise behaves the same as elf64_getehdr(). It does not allocate a new header if one exists already. If no header exists (for elf_getehdr()), one cannot be created (for elf_newehdr()), a system error occurs, the file is not a 64-bit class file, or elf is null, both functions return a null pointer. The header includes the following members.

unsigned char e_ident[EI_NIDENT]; Elf64_Half e_type; Elf64_Half e_machine; Elf64_Word e_version; Elf64_Addr e_entry; Elf64_Off e_phoff; Elf64_Off e_shoff; Elf64_Word e_flags; Elf64_Half e_ehsize; Elf64_Half e_phentsize; Elf64_Half e_phnum; Elf64_Half e_shentsize; Elf64_Half e_shnum; Elf64_Half e_shstrndx;

elf64_newehdr() automatically sets the ELF_F_DIRTY bit (see elf_flag(3E)). A program may use elf_getident to inspect the identification bytes from a file.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.