From 6b1e83281bfeb5bf76602317151bcc1c851b5a51 Mon Sep 17 00:00:00 2001 From: Francois Gouget Date: Sun, 22 Aug 2004 22:28:53 +0000 Subject: [PATCH] Update FPO_DATA and IMAGE_LOAD_CONFIG_DIRECTORY to match the latest platform SDK. This helps compile the ntdll tests on Windows. --- dlls/ntdll/tests/generated.c | 29 +++++++++++++++++++++++++---- include/winnt.h | 18 ++++++++++-------- tools/winapi/tests.dat | 7 ++----- 3 files changed, 37 insertions(+), 17 deletions(-) diff --git a/dlls/ntdll/tests/generated.c b/dlls/ntdll/tests/generated.c index 09554418692..88ada0719de 100644 --- a/dlls/ntdll/tests/generated.c +++ b/dlls/ntdll/tests/generated.c @@ -397,6 +397,16 @@ static void test_pack_FLOATING_SAVE_AREA(void) TEST_FIELD(FLOATING_SAVE_AREA, DWORD, Cr0NpxState, 108, 4, 4); } +static void test_pack_FPO_DATA(void) +{ + /* FPO_DATA (pack 4) */ + TEST_TYPE(FPO_DATA, 16, 4); + TEST_FIELD(FPO_DATA, DWORD, ulOffStart, 0, 4, 4); + TEST_FIELD(FPO_DATA, DWORD, cbProcSize, 4, 4, 4); + TEST_FIELD(FPO_DATA, DWORD, cdwLocals, 8, 4, 4); + TEST_FIELD(FPO_DATA, WORD, cdwParams, 12, 2, 2); +} + static void test_pack_GENERIC_MAPPING(void) { /* GENERIC_MAPPING (pack 4) */ @@ -584,8 +594,8 @@ static void test_pack_IMAGE_IMPORT_DESCRIPTOR(void) static void test_pack_IMAGE_LOAD_CONFIG_DIRECTORY(void) { /* IMAGE_LOAD_CONFIG_DIRECTORY (pack 4) */ - TEST_TYPE(IMAGE_LOAD_CONFIG_DIRECTORY, 64, 4); - TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, DWORD, Characteristics, 0, 4, 4); + TEST_TYPE(IMAGE_LOAD_CONFIG_DIRECTORY, 72, 4); + TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, DWORD, Size, 0, 4, 4); TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, DWORD, TimeDateStamp, 4, 4, 4); TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, WORD, MajorVersion, 8, 2, 2); TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, WORD, MinorVersion, 10, 2, 2); @@ -602,7 +612,9 @@ static void test_pack_IMAGE_LOAD_CONFIG_DIRECTORY(void) TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, WORD, CSDVersion, 52, 2, 2); TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, WORD, Reserved1, 54, 2, 2); TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, PVOID, EditList, 56, 4, 4); - TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, DWORD[1], Reserved, 60, 4, 4); + TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, DWORD, SecurityCookie, 60, 4, 4); + TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, DWORD, SEHandlerTable, 64, 4, 4); + TEST_FIELD(IMAGE_LOAD_CONFIG_DIRECTORY, DWORD, SEHandlerCount, 68, 4, 4); } static void test_pack_IMAGE_NT_HEADERS(void) @@ -1034,6 +1046,13 @@ static void test_pack_PFLOATING_SAVE_AREA(void) TEST_TYPE_POINTER(PFLOATING_SAVE_AREA, 112, 4); } +static void test_pack_PFPO_DATA(void) +{ + /* PFPO_DATA */ + TEST_TYPE(PFPO_DATA, 4, 4); + TEST_TYPE_POINTER(PFPO_DATA, 16, 4); +} + static void test_pack_PGENERIC_MAPPING(void) { /* PGENERIC_MAPPING */ @@ -1155,7 +1174,7 @@ static void test_pack_PIMAGE_LOAD_CONFIG_DIRECTORY(void) { /* PIMAGE_LOAD_CONFIG_DIRECTORY */ TEST_TYPE(PIMAGE_LOAD_CONFIG_DIRECTORY, 4, 4); - TEST_TYPE_POINTER(PIMAGE_LOAD_CONFIG_DIRECTORY, 64, 4); + TEST_TYPE_POINTER(PIMAGE_LOAD_CONFIG_DIRECTORY, 72, 4); } static void test_pack_PIMAGE_NT_HEADERS(void) @@ -2065,6 +2084,7 @@ static void test_pack(void) test_pack_FARPROC(); test_pack_FLOAT(); test_pack_FLOATING_SAVE_AREA(); + test_pack_FPO_DATA(); test_pack_GENERIC_MAPPING(); test_pack_GLOBALHANDLE(); test_pack_HALF_PTR(); @@ -2151,6 +2171,7 @@ static void test_pack(void) test_pack_PEXCEPTION_POINTERS(); test_pack_PEXCEPTION_RECORD(); test_pack_PFLOATING_SAVE_AREA(); + test_pack_PFPO_DATA(); test_pack_PGENERIC_MAPPING(); test_pack_PHANDLE(); test_pack_PIMAGE_ARCHIVE_MEMBER_HEADER(); diff --git a/include/winnt.h b/include/winnt.h index 2a26feaf7ed..93c7a43a952 100644 --- a/include/winnt.h +++ b/include/winnt.h @@ -2520,16 +2520,16 @@ typedef struct _FPO_DATA { DWORD cbProcSize; DWORD cdwLocals; WORD cdwParams; - unsigned cbProlog : 8; - unsigned cbRegs : 3; - unsigned fHasSEH : 1; - unsigned fUseBP : 1; - unsigned reserved : 1; - unsigned cbFrame : 2; + WORD cbProlog : 8; + WORD cbRegs : 3; + WORD fHasSEH : 1; + WORD fUseBP : 1; + WORD reserved : 1; + WORD cbFrame : 2; } FPO_DATA, *PFPO_DATA; typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY { - DWORD Characteristics; + DWORD Size; DWORD TimeDateStamp; WORD MajorVersion; WORD MinorVersion; @@ -2546,7 +2546,9 @@ typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY { WORD CSDVersion; WORD Reserved1; PVOID EditList; - DWORD Reserved[1]; + DWORD SecurityCookie; + DWORD SEHandlerTable; + DWORD SEHandlerCount; } IMAGE_LOAD_CONFIG_DIRECTORY, *PIMAGE_LOAD_CONFIG_DIRECTORY; typedef struct _IMAGE_FUNCTION_ENTRY { diff --git a/tools/winapi/tests.dat b/tools/winapi/tests.dat index a4af2af0a32..95037c370f7 100644 --- a/tools/winapi/tests.dat +++ b/tools/winapi/tests.dat @@ -656,7 +656,7 @@ EXECUTION_STATE FARPROC FLOAT FLOATING_SAVE_AREA -!FPO_DATA +FPO_DATA GENERIC_MAPPING GLOBALHANDLE HALF_PTR @@ -759,7 +759,7 @@ PCWSTR PEXCEPTION_POINTERS PEXCEPTION_RECORD PFLOATING_SAVE_AREA -!PFPO_DATA +PFPO_DATA PGENERIC_MAPPING PHANDLE PIMAGE_ARCHIVE_MEMBER_HEADER @@ -1001,7 +1001,6 @@ LPSHDESCRIPTIONID !LPSHELLEXECUTEINFOW LPSHELLFLAGSTATE LPSHELLSTATE -!LPSHELLVIEWDATA LPSHFILEOPSTRUCTA LPSHFILEOPSTRUCTW LPSHITEMID @@ -1031,9 +1030,7 @@ SHDESCRIPTIONID !SHELLEXECUTEINFOW SHELLFLAGSTATE SHELLSTATE -!SHELLVIEWDATA SHELLVIEWID -SHELLVIEWPROC SHFILEINFOA SHFILEINFOW SHFILEOPSTRUCTA -- 2.11.4.GIT