Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

htelf.h File Reference

#include "elfstruc.h"
#include "formats.h"
#include "htendian.h"
#include "htformat.h"
#include "relfile.h"

Go to the source code of this file.

Classes

struct  elf_program_headers
union  elf_section_header
struct  elf_section_headers
class  ht_elf
class  ht_elf32_reloc_entry
class  ht_elf32_reloc_file
struct  ht_elf_reloc_section32
struct  ht_elf_shared_data
class  sectionAndIdx

Defines

#define DESC_ELF   "elf - unix exe/link format"
#define DESC_ELF_HEADER   "elf/header"
#define DESC_ELF_SECTION_HEADERS   "elf/section headers"
#define DESC_ELF_PROGRAM_HEADERS   "elf/program headers"
#define DESC_ELF_SYMTAB   "elf/symbol table %s (%d)"
#define DESC_ELF_RELOCTAB   "elf/relocation table %s (%d)"
#define DESC_ELF_IMAGE   "elf/image"
#define ATOM_ELF_CLASS   0x454c4600
#define ATOM_ELF_CLASS_STR   "454c4600"
#define ATOM_ELF_DATA   0x454c4601
#define ATOM_ELF_DATA_STR   "454c4601"
#define ATOM_ELF_OS_ABI   0x454c4602
#define ATOM_ELF_OS_ABI_STR   "454c4602"
#define ATOM_ELF_TYPE   0x454c4603
#define ATOM_ELF_TYPE_STR   "454c4603"
#define ATOM_ELF_MACHINE   0x454c4604
#define ATOM_ELF_MACHINE_STR   "454c4604"
#define ATOM_ELF_SH_TYPE   0x454c4605
#define ATOM_ELF_SH_TYPE_STR   "454c4605"
#define ATOM_ELF_SH_FLAGS   0x454c4606
#define ATOM_ELF_SH_FLAGS_STR   "454c4606"
#define ATOM_ELF_PH_TYPE   0x454c4607
#define ATOM_ELF_PH_TYPE_STR   "454c4607"
#define ATOM_ELF_PH_FLAGS   0x454c4608
#define ATOM_ELF_PH_FLAGS_STR   "454c4608"
#define ATOM_ELF_ST_BIND   0x454c4609
#define ATOM_ELF_ST_BIND_STR   "454c4609"
#define ATOM_ELF_ST_TYPE   0x454c460a
#define ATOM_ELF_ST_TYPE_STR   "454c460a"
#define ATOM_ELF_R_386_TYPE   0x454c460b
#define ATOM_ELF_R_386_TYPE_STR   "454c460b"

Functions

bool isValidELFSectionIdx (ht_elf_shared_data *elf_shared, int idx)
bool elf_phys_and_mem_section (elf_section_header *s, UINT elfclass)
bool elf_valid_section (elf_section_header *s, UINT elfclass)
bool elf_addr_to_section (elf_section_headers *section_headers, UINT elfclass, ELFAddress addr, int *section)
bool elf_addr_to_ofs (elf_section_headers *section_headers, UINT elfclass, ELFAddress addr, dword *ofs)
bool elf_addr_is_valid (elf_section_headers *section_headers, UINT elfclass, ELFAddress addr)
bool elf_ofs_to_addr (elf_section_headers *section_headers, UINT elfclass, dword ofs, ELFAddress *addr)
bool elf_ofs_to_section (elf_section_headers *section_headers, UINT elfclass, dword ofs, dword *section)

Variables

format_viewer_if htelf_if


Define Documentation

#define ATOM_ELF_CLASS   0x454c4600
 

Definition at line 38 of file htelf.h.

Referenced by htelfheader_init().

#define ATOM_ELF_CLASS_STR   "454c4600"
 

Definition at line 39 of file htelf.h.

#define ATOM_ELF_DATA   0x454c4601
 

Definition at line 41 of file htelf.h.

Referenced by htelfheader_init().

#define ATOM_ELF_DATA_STR   "454c4601"
 

Definition at line 42 of file htelf.h.

#define ATOM_ELF_MACHINE   0x454c4604
 

Definition at line 50 of file htelf.h.

Referenced by htelfheader_init().

#define ATOM_ELF_MACHINE_STR   "454c4604"
 

Definition at line 51 of file htelf.h.

#define ATOM_ELF_OS_ABI   0x454c4602
 

Definition at line 44 of file htelf.h.

Referenced by htelfheader_init().

#define ATOM_ELF_OS_ABI_STR   "454c4602"
 

Definition at line 45 of file htelf.h.

#define ATOM_ELF_PH_FLAGS   0x454c4608
 

Definition at line 62 of file htelf.h.

#define ATOM_ELF_PH_FLAGS_STR   "454c4608"
 

Definition at line 63 of file htelf.h.

#define ATOM_ELF_PH_TYPE   0x454c4607
 

Definition at line 59 of file htelf.h.

#define ATOM_ELF_PH_TYPE_STR   "454c4607"
 

Definition at line 60 of file htelf.h.

#define ATOM_ELF_R_386_TYPE   0x454c460b
 

Definition at line 71 of file htelf.h.

#define ATOM_ELF_R_386_TYPE_STR   "454c460b"
 

Definition at line 72 of file htelf.h.

#define ATOM_ELF_SH_FLAGS   0x454c4606
 

Definition at line 56 of file htelf.h.

#define ATOM_ELF_SH_FLAGS_STR   "454c4606"
 

Definition at line 57 of file htelf.h.

#define ATOM_ELF_SH_TYPE   0x454c4605
 

Definition at line 53 of file htelf.h.

#define ATOM_ELF_SH_TYPE_STR   "454c4605"
 

Definition at line 54 of file htelf.h.

#define ATOM_ELF_ST_BIND   0x454c4609
 

Definition at line 65 of file htelf.h.

#define ATOM_ELF_ST_BIND_STR   "454c4609"
 

Definition at line 66 of file htelf.h.

#define ATOM_ELF_ST_TYPE   0x454c460a
 

Definition at line 68 of file htelf.h.

#define ATOM_ELF_ST_TYPE_STR   "454c460a"
 

Definition at line 69 of file htelf.h.

#define ATOM_ELF_TYPE   0x454c4603
 

Definition at line 47 of file htelf.h.

Referenced by htelfheader_init().

#define ATOM_ELF_TYPE_STR   "454c4603"
 

Definition at line 48 of file htelf.h.

#define DESC_ELF   "elf - unix exe/link format"
 

Definition at line 30 of file htelf.h.

Referenced by ht_elf::init().

#define DESC_ELF_HEADER   "elf/header"
 

Definition at line 31 of file htelf.h.

Referenced by htelfheader_init().

#define DESC_ELF_IMAGE   "elf/image"
 

Definition at line 36 of file htelf.h.

#define DESC_ELF_PROGRAM_HEADERS   "elf/program headers"
 

Definition at line 33 of file htelf.h.

#define DESC_ELF_RELOCTAB   "elf/relocation table %s (%d)"
 

Definition at line 35 of file htelf.h.

#define DESC_ELF_SECTION_HEADERS   "elf/section headers"
 

Definition at line 32 of file htelf.h.

#define DESC_ELF_SYMTAB   "elf/symbol table %s (%d)"
 

Definition at line 34 of file htelf.h.


Function Documentation

bool elf_addr_is_valid elf_section_headers section_headers,
UINT  elfclass,
ELFAddress  addr
 

bool elf_addr_to_ofs elf_section_headers section_headers,
UINT  elfclass,
ELFAddress  addr,
dword *  ofs
 

Referenced by ElfAnalyser::addressToFileofs().

bool elf_addr_to_section elf_section_headers section_headers,
UINT  elfclass,
ELFAddress  addr,
int *  section
 

Referenced by ElfAnalyser::getSegmentNameByAddress(), and ElfAnalyser::validAddress().

bool elf_ofs_to_addr elf_section_headers section_headers,
UINT  elfclass,
dword  ofs,
ELFAddress addr
 

Referenced by ElfAnalyser::fileofsToAddress().

bool elf_ofs_to_section elf_section_headers section_headers,
UINT  elfclass,
dword  ofs,
dword *  section
 

bool elf_phys_and_mem_section elf_section_header s,
UINT  elfclass
 

Referenced by elf_addr_to_ofs(), and elf_ofs_to_addr().

bool elf_valid_section elf_section_header s,
UINT  elfclass
 

Referenced by elf_addr_is_valid(), elf_addr_to_section(), and elf_ofs_to_section().

bool isValidELFSectionIdx ht_elf_shared_data elf_shared,
int  idx
 

Definition at line 105 of file htelf.cc.

References elf_section_headers::count, and ht_elf_shared_data::sheaders.

Referenced by ht_elf::relocate_section().


Variable Documentation

format_viewer_if htelf_if
 

Definition at line 74 of file htelf.h.


Generated on Fri May 7 21:15:48 2004 by doxygen 1.3.5