ms_coff/
dll_characteristics.rs

1use zerocopy_derive::*;
2
3#[repr(transparent)]
4#[derive(
5    Clone,
6    Default,
7    Eq,
8    PartialEq,
9    Ord,
10    PartialOrd,
11    Hash,
12    IntoBytes,
13    FromBytes,
14    Immutable,
15    KnownLayout,
16)]
17pub struct IMAGE_DLLCHARACTERISTICS(pub u16);
18
19//      IMAGE_LIBRARY_PROCESS_INIT            0x0001     // Reserved.
20//      IMAGE_LIBRARY_PROCESS_TERM            0x0002     // Reserved.
21//      IMAGE_LIBRARY_THREAD_INIT             0x0004     // Reserved.
22//      IMAGE_LIBRARY_THREAD_TERM             0x0008     // Reserved.
23
24/// Image can handle a high entropy 64-bit virtual address space.
25pub const IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA: u16 = 0x0020;
26/// DLL can move.
27pub const IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE: u16 = 0x0040;
28/// Code Integrity Image
29pub const IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY: u16 = 0x0080;
30/// Image is NX compatible
31pub const IMAGE_DLLCHARACTERISTICS_NX_COMPAT: u16 = 0x0100;
32/// Image understands isolation and doesn't want it
33pub const IMAGE_DLLCHARACTERISTICS_NO_ISOLATION: u16 = 0x0200;
34/// Image does not use SEH.  No SE handler may reside in this image
35pub const IMAGE_DLLCHARACTERISTICS_NO_SEH: u16 = 0x0400;
36/// Do not bind this image.
37pub const IMAGE_DLLCHARACTERISTICS_NO_BIND: u16 = 0x0800;
38/// Image should execute in an AppContainer
39pub const IMAGE_DLLCHARACTERISTICS_APPCONTAINER: u16 = 0x1000;
40/// Driver uses WDM model
41pub const IMAGE_DLLCHARACTERISTICS_WDM_DRIVER: u16 = 0x2000;
42/// Image supports Control Flow Guard.
43pub const IMAGE_DLLCHARACTERISTICS_GUARD_CF: u16 = 0x4000;
44pub const IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE: u16 = 0x8000;