pelite\pe32/
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_HDR32_MAGIC;
10
11pub type IMAGE_OPTIONAL_HEADER = IMAGE_OPTIONAL_HEADER32;
12pub type IMAGE_NT_HEADERS = IMAGE_NT_HEADERS32;
13pub type IMAGE_LOAD_CONFIG_DIRECTORY = IMAGE_LOAD_CONFIG_DIRECTORY32;
14pub type IMAGE_DYNAMIC_RELOCATION = IMAGE_DYNAMIC_RELOCATION32;
15pub type IMAGE_GUARDCF = IMAGE_GUARDCF32;
16pub type IMAGE_TLS_DIRECTORY = IMAGE_TLS_DIRECTORY32;
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 = u32;
22/// Signed address offset type used in pointer arithmetic.
23pub(super) type SignedVa = i32;
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_FLAG32;