pelite\pe64/
image.rs

1/*!
2PE32+ image structures.
3*/
4
5#![allow(non_camel_case_types)]
6
7pub use crate::image::*;
8
9pub const IMAGE_NT_OPTIONAL_HDR_MAGIC: u16 = IMAGE_NT_OPTIONAL_HDR64_MAGIC;
10
11pub type IMAGE_OPTIONAL_HEADER = IMAGE_OPTIONAL_HEADER64;
12pub type IMAGE_NT_HEADERS = IMAGE_NT_HEADERS64;
13pub type IMAGE_LOAD_CONFIG_DIRECTORY = IMAGE_LOAD_CONFIG_DIRECTORY64;
14pub type IMAGE_DYNAMIC_RELOCATION = IMAGE_DYNAMIC_RELOCATION64;
15pub type IMAGE_GUARDCF = IMAGE_GUARDCF64;
16pub type IMAGE_TLS_DIRECTORY = IMAGE_TLS_DIRECTORY64;
17
18/// Relative virtual address type, these are all offsets from the base of the mapped image in memory.
19pub type Rva = u32;
20/// Virtual address type, absolute address as known by the image. Not always the same as a pointer.
21pub type Va = u64;
22/// Signed address offset type used in pointer arithmetic.
23pub(super) type SignedVa = i64;
24
25/// Invalid Rva value.
26pub const BADRVA: Rva = !0;
27/// Invalid Va value.
28pub const BADVA: Va = !0;
29
30/// Ordinal type for imports and exports.
31pub type Ordinal = u16;
32pub const IMAGE_ORDINAL_FLAG: Va = IMAGE_ORDINAL_FLAG64;