summaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/perk/perk.h3
-rw-r--r--include/perk/perk_meta.h8
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;