diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/perk/perk.h | 3 | ||||
-rw-r--r-- | include/perk/perk_meta.h | 8 |
2 files changed, 11 insertions, 0 deletions
diff --git a/include/perk/perk.h b/include/perk/perk.h index 59b55e5..001f26c 100644 --- a/include/perk/perk.h +++ b/include/perk/perk.h @@ -127,6 +127,7 @@ struct pe_raw_image; struct pe_raw_image_dos_hdr; struct pe_raw_coff_image_hdr; struct pe_raw_coff_object_hdr; +struct pe_raw_coff_reloc; union pe_raw_opt_hdr; struct pe_raw_sec_hdr; struct pe_raw_export_hdr; @@ -352,10 +353,12 @@ perk_api int pe_read_optional_header (const union pe_raw_opt_hdr *, perk_api int pe_read_section_header (const struct pe_raw_sec_hdr *, struct pe_meta_sec_hdr *); perk_api int pe_read_export_header (const struct pe_raw_export_hdr *, struct pe_meta_export_hdr *); perk_api int pe_read_import_header (const struct pe_raw_import_hdr *, struct pe_meta_import_hdr *); +perk_api int pe_read_coff_reloc (const struct pe_raw_coff_reloc *, struct pe_meta_coff_reloc *); perk_api int pe_read_coff_symbol (const struct pe_raw_coff_symbol *, struct pe_meta_coff_symbol *, const struct pe_meta_coff_file_hdr *, void * base); + perk_api int pe_read_import_lookup (const unsigned char *, struct pe_meta_import_lookup *, uint32_t magic); diff --git a/include/perk/perk_meta.h b/include/perk/perk_meta.h index 5a4136f..2b6b0ef 100644 --- a/include/perk/perk_meta.h +++ b/include/perk/perk_meta.h @@ -196,6 +196,14 @@ struct pe_meta_sec_hdr { }; +/* section relocation record */ +struct pe_meta_coff_reloc { + uint32_t rel_rva; + uint32_t rel_sym; + uint16_t rel_type; +}; + + /* .edata section header*/ struct pe_meta_export_hdr { uint32_t eh_virtual_addr; |