Commit e1370633 authored by Alexandre Julliard's avatar Alexandre Julliard

include: Add a couple of dll characteristics.

parent e0dbdaac
......@@ -3135,13 +3135,16 @@ typedef struct _IMAGE_VXD_HEADER {
#define IMAGE_SUBSYSTEM_WINDOWS_BOOT_APPLICATION 16
/* DLL Characteristics */
#define IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA 0x0020
#define IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE 0x0040
#define IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY 0x0080
#define IMAGE_DLLCHARACTERISTICS_NX_COMPAT 0x0100
#define IMAGE_DLLCHARACTERISTICS_NO_ISOLATION 0x0200
#define IMAGE_DLLCHARACTERISTICS_NO_SEH 0x0400
#define IMAGE_DLLCHARACTERISTICS_NO_BIND 0x0800
#define IMAGE_DLLCHARACTERISTICS_APPCONTAINER 0x1000
#define IMAGE_DLLCHARACTERISTICS_WDM_DRIVER 0x2000
#define IMAGE_DLLCHARACTERISTICS_GUARD_CF 0x4000
#define IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE 0x8000
typedef struct _IMAGE_FILE_HEADER {
......
......@@ -213,15 +213,18 @@ static inline void print_subsys(const char *title, WORD value)
static inline void print_dllflags(const char *title, WORD value)
{
printf(" %-34s 0x%X\n", title, value);
printf(" %-34s 0x%04X\n", title, value);
#define X(f,s) if (value & f) printf(" %s\n", s)
X(IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA, "HIGH_ENTROPY_VA");
X(IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE, "DYNAMIC_BASE");
X(IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY, "FORCE_INTEGRITY");
X(IMAGE_DLLCHARACTERISTICS_NX_COMPAT, "NX_COMPAT");
X(IMAGE_DLLCHARACTERISTICS_NO_ISOLATION, "NO_ISOLATION");
X(IMAGE_DLLCHARACTERISTICS_NO_SEH, "NO_SEH");
X(IMAGE_DLLCHARACTERISTICS_NO_BIND, "NO_BIND");
X(IMAGE_DLLCHARACTERISTICS_APPCONTAINER, "APPCONTAINER");
X(IMAGE_DLLCHARACTERISTICS_WDM_DRIVER, "WDM_DRIVER");
X(IMAGE_DLLCHARACTERISTICS_GUARD_CF, "GUARD_CF");
X(IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE, "TERMINAL_SERVER_AWARE");
#undef X
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment