2009-01-08 00:18:27 +01:00
|
|
|
/* File generated automatically from tools/winapi/tests.dat; do not edit! */
|
2002-10-15 03:53:45 +02:00
|
|
|
/* This file can be copied, modified and distributed without restriction. */
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Unit tests for data structure packing
|
|
|
|
*/
|
|
|
|
|
2002-10-23 20:45:15 +02:00
|
|
|
#define WINVER 0x0501
|
2002-11-12 02:13:10 +01:00
|
|
|
#define _WIN32_IE 0x0501
|
2002-10-29 22:24:09 +01:00
|
|
|
#define _WIN32_WINNT 0x0501
|
|
|
|
|
2002-10-23 20:45:15 +02:00
|
|
|
#define WINE_NOWINSOCK
|
|
|
|
|
2004-08-14 02:42:12 +02:00
|
|
|
#include "ntdll_test.h"
|
2002-10-15 03:53:45 +02:00
|
|
|
|
|
|
|
#include "wine/test.h"
|
|
|
|
|
2002-10-29 22:24:09 +01:00
|
|
|
/***********************************************************************
|
2008-01-16 12:17:40 +01:00
|
|
|
* Compatibility macros
|
2002-10-29 22:24:09 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
#define DWORD_PTR UINT_PTR
|
|
|
|
#define LONG_PTR INT_PTR
|
|
|
|
#define ULONG_PTR UINT_PTR
|
|
|
|
|
2002-10-15 03:53:45 +02:00
|
|
|
/***********************************************************************
|
|
|
|
* Windows API extension
|
|
|
|
*/
|
|
|
|
|
2004-01-23 03:11:12 +01:00
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
|
2002-11-04 23:40:40 +01:00
|
|
|
# define _TYPE_ALIGNMENT(type) __alignof(type)
|
|
|
|
#elif defined(__GNUC__)
|
|
|
|
# define _TYPE_ALIGNMENT(type) __alignof__(type)
|
|
|
|
#else
|
|
|
|
/*
|
2009-01-08 00:18:48 +01:00
|
|
|
* FIXME: May not be possible without a compiler extension
|
|
|
|
* (if type is not just a name that is, otherwise the normal
|
2002-11-04 23:40:40 +01:00
|
|
|
* TYPE_ALIGNMENT can be used)
|
|
|
|
*/
|
|
|
|
#endif
|
|
|
|
|
2004-09-06 22:29:53 +02:00
|
|
|
#if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
|
|
|
|
#pragma warning(disable:4116)
|
|
|
|
#endif
|
|
|
|
|
2002-11-04 23:40:40 +01:00
|
|
|
#if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
|
|
|
|
# define TYPE_ALIGNMENT _TYPE_ALIGNMENT
|
|
|
|
#endif
|
|
|
|
|
2002-10-15 03:53:45 +02:00
|
|
|
/***********************************************************************
|
|
|
|
* Test helper macros
|
|
|
|
*/
|
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
#define TEST_TYPE_SIZE(type, size) C_ASSERT(sizeof(type) == size);
|
|
|
|
|
|
|
|
#ifdef TYPE_ALIGNMENT
|
|
|
|
# define TEST_TYPE_ALIGN(type, align) C_ASSERT(TYPE_ALIGNMENT(type) == align);
|
|
|
|
#else
|
|
|
|
# define TEST_TYPE_ALIGN(type, align)
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef _TYPE_ALIGNMENT
|
|
|
|
# define TEST_TARGET_ALIGN(type, align) C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
|
|
|
|
# define TEST_FIELD_ALIGN(type, field, align) C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
|
|
|
|
#else
|
|
|
|
# define TEST_TARGET_ALIGN(type, align)
|
|
|
|
# define TEST_FIELD_ALIGN(type, field, align)
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
|
|
|
|
|
|
|
|
#define TEST_TARGET_SIZE(type, size) TEST_TYPE_SIZE(*(type)0, size)
|
|
|
|
#define TEST_FIELD_SIZE(type, field, size) TEST_TYPE_SIZE((((type*)0)->field), size)
|
|
|
|
#define TEST_TYPE_SIGNED(type) C_ASSERT((type) -1 < 0);
|
|
|
|
#define TEST_TYPE_UNSIGNED(type) C_ASSERT((type) -1 > 0);
|
|
|
|
|
|
|
|
|
2009-01-08 00:26:10 +01:00
|
|
|
#ifdef _WIN64
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_DWORD32(void)
|
|
|
|
{
|
|
|
|
/* DWORD32 */
|
|
|
|
TEST_TYPE_SIZE (DWORD32, 4)
|
|
|
|
TEST_TYPE_ALIGN (DWORD32, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(DWORD32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DWORD64(void)
|
|
|
|
{
|
|
|
|
/* DWORD64 */
|
|
|
|
TEST_TYPE_SIZE (DWORD64, 8)
|
|
|
|
TEST_TYPE_ALIGN (DWORD64, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(DWORD64)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DWORD_PTR(void)
|
|
|
|
{
|
|
|
|
/* DWORD_PTR */
|
|
|
|
TEST_TYPE_SIZE (DWORD_PTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (DWORD_PTR, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HALF_PTR(void)
|
|
|
|
{
|
|
|
|
/* HALF_PTR */
|
|
|
|
TEST_TYPE_SIZE (HALF_PTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (HALF_PTR, 4)
|
|
|
|
TEST_TYPE_SIGNED(HALF_PTR)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_INT16(void)
|
|
|
|
{
|
|
|
|
/* INT16 */
|
|
|
|
TEST_TYPE_SIZE (INT16, 2)
|
|
|
|
TEST_TYPE_ALIGN (INT16, 2)
|
|
|
|
TEST_TYPE_SIGNED(INT16)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_INT32(void)
|
|
|
|
{
|
|
|
|
/* INT32 */
|
|
|
|
TEST_TYPE_SIZE (INT32, 4)
|
|
|
|
TEST_TYPE_ALIGN (INT32, 4)
|
|
|
|
TEST_TYPE_SIGNED(INT32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_INT64(void)
|
|
|
|
{
|
|
|
|
/* INT64 */
|
|
|
|
TEST_TYPE_SIZE (INT64, 8)
|
|
|
|
TEST_TYPE_ALIGN (INT64, 8)
|
|
|
|
TEST_TYPE_SIGNED(INT64)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_INT8(void)
|
|
|
|
{
|
|
|
|
/* INT8 */
|
|
|
|
TEST_TYPE_SIZE (INT8, 1)
|
|
|
|
TEST_TYPE_ALIGN (INT8, 1)
|
|
|
|
TEST_TYPE_SIGNED(INT8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_INT_PTR(void)
|
|
|
|
{
|
|
|
|
/* INT_PTR */
|
|
|
|
TEST_TYPE_SIZE (INT_PTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (INT_PTR, 8)
|
|
|
|
TEST_TYPE_SIGNED(INT_PTR)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LONG32(void)
|
|
|
|
{
|
|
|
|
/* LONG32 */
|
|
|
|
TEST_TYPE_SIZE (LONG32, 4)
|
|
|
|
TEST_TYPE_ALIGN (LONG32, 4)
|
|
|
|
TEST_TYPE_SIGNED(LONG32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LONG64(void)
|
|
|
|
{
|
|
|
|
/* LONG64 */
|
|
|
|
TEST_TYPE_SIZE (LONG64, 8)
|
|
|
|
TEST_TYPE_ALIGN (LONG64, 8)
|
|
|
|
TEST_TYPE_SIGNED(LONG64)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LONG_PTR(void)
|
|
|
|
{
|
|
|
|
/* LONG_PTR */
|
|
|
|
TEST_TYPE_SIZE (LONG_PTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (LONG_PTR, 8)
|
|
|
|
TEST_TYPE_SIGNED(LONG_PTR)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SIZE_T(void)
|
|
|
|
{
|
|
|
|
/* SIZE_T */
|
|
|
|
TEST_TYPE_SIZE (SIZE_T, 8)
|
|
|
|
TEST_TYPE_ALIGN (SIZE_T, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SSIZE_T(void)
|
|
|
|
{
|
|
|
|
/* SSIZE_T */
|
|
|
|
TEST_TYPE_SIZE (SSIZE_T, 8)
|
|
|
|
TEST_TYPE_ALIGN (SSIZE_T, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UHALF_PTR(void)
|
|
|
|
{
|
|
|
|
/* UHALF_PTR */
|
|
|
|
TEST_TYPE_SIZE (UHALF_PTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (UHALF_PTR, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(UHALF_PTR)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UINT16(void)
|
|
|
|
{
|
|
|
|
/* UINT16 */
|
|
|
|
TEST_TYPE_SIZE (UINT16, 2)
|
|
|
|
TEST_TYPE_ALIGN (UINT16, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT16)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UINT32(void)
|
|
|
|
{
|
|
|
|
/* UINT32 */
|
|
|
|
TEST_TYPE_SIZE (UINT32, 4)
|
|
|
|
TEST_TYPE_ALIGN (UINT32, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UINT64(void)
|
|
|
|
{
|
|
|
|
/* UINT64 */
|
|
|
|
TEST_TYPE_SIZE (UINT64, 8)
|
|
|
|
TEST_TYPE_ALIGN (UINT64, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT64)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UINT8(void)
|
|
|
|
{
|
|
|
|
/* UINT8 */
|
|
|
|
TEST_TYPE_SIZE (UINT8, 1)
|
|
|
|
TEST_TYPE_ALIGN (UINT8, 1)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UINT_PTR(void)
|
|
|
|
{
|
|
|
|
/* UINT_PTR */
|
|
|
|
TEST_TYPE_SIZE (UINT_PTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (UINT_PTR, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT_PTR)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ULONG32(void)
|
|
|
|
{
|
|
|
|
/* ULONG32 */
|
|
|
|
TEST_TYPE_SIZE (ULONG32, 4)
|
|
|
|
TEST_TYPE_ALIGN (ULONG32, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONG32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ULONG64(void)
|
|
|
|
{
|
|
|
|
/* ULONG64 */
|
|
|
|
TEST_TYPE_SIZE (ULONG64, 8)
|
|
|
|
TEST_TYPE_ALIGN (ULONG64, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONG64)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ULONG_PTR(void)
|
|
|
|
{
|
|
|
|
/* ULONG_PTR */
|
|
|
|
TEST_TYPE_SIZE (ULONG_PTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (ULONG_PTR, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONG_PTR)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ACCESS_ALLOWED_ACE(void)
|
|
|
|
{
|
|
|
|
/* ACCESS_ALLOWED_ACE */
|
|
|
|
TEST_TYPE_SIZE (ACCESS_ALLOWED_ACE, 12)
|
|
|
|
TEST_TYPE_ALIGN (ACCESS_ALLOWED_ACE, 4)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_ALLOWED_ACE, Header, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_ALLOWED_ACE, Header, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_ALLOWED_ACE, Header, 0)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_ALLOWED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_ALLOWED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_ALLOWED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_ALLOWED_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_ALLOWED_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_ALLOWED_ACE, SidStart, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ACCESS_DENIED_ACE(void)
|
|
|
|
{
|
|
|
|
/* ACCESS_DENIED_ACE */
|
|
|
|
TEST_TYPE_SIZE (ACCESS_DENIED_ACE, 12)
|
|
|
|
TEST_TYPE_ALIGN (ACCESS_DENIED_ACE, 4)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_DENIED_ACE, Header, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_DENIED_ACE, Header, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_DENIED_ACE, Header, 0)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_DENIED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_DENIED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_DENIED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_DENIED_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_DENIED_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_DENIED_ACE, SidStart, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ACCESS_MASK(void)
|
|
|
|
{
|
|
|
|
/* ACCESS_MASK */
|
|
|
|
TEST_TYPE_SIZE (ACCESS_MASK, 4)
|
|
|
|
TEST_TYPE_ALIGN (ACCESS_MASK, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(ACCESS_MASK)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ACE_HEADER(void)
|
|
|
|
{
|
|
|
|
/* ACE_HEADER */
|
|
|
|
TEST_TYPE_SIZE (ACE_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (ACE_HEADER, 2)
|
|
|
|
TEST_FIELD_SIZE (ACE_HEADER, AceType, 1)
|
|
|
|
TEST_FIELD_ALIGN (ACE_HEADER, AceType, 1)
|
|
|
|
TEST_FIELD_OFFSET(ACE_HEADER, AceType, 0)
|
|
|
|
TEST_FIELD_SIZE (ACE_HEADER, AceFlags, 1)
|
|
|
|
TEST_FIELD_ALIGN (ACE_HEADER, AceFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(ACE_HEADER, AceFlags, 1)
|
|
|
|
TEST_FIELD_SIZE (ACE_HEADER, AceSize, 2)
|
|
|
|
TEST_FIELD_ALIGN (ACE_HEADER, AceSize, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACE_HEADER, AceSize, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ACL(void)
|
|
|
|
{
|
|
|
|
/* ACL */
|
|
|
|
TEST_TYPE_SIZE (ACL, 8)
|
|
|
|
TEST_TYPE_ALIGN (ACL, 2)
|
|
|
|
TEST_FIELD_SIZE (ACL, AclRevision, 1)
|
|
|
|
TEST_FIELD_ALIGN (ACL, AclRevision, 1)
|
|
|
|
TEST_FIELD_OFFSET(ACL, AclRevision, 0)
|
|
|
|
TEST_FIELD_SIZE (ACL, Sbz1, 1)
|
|
|
|
TEST_FIELD_ALIGN (ACL, Sbz1, 1)
|
|
|
|
TEST_FIELD_OFFSET(ACL, Sbz1, 1)
|
|
|
|
TEST_FIELD_SIZE (ACL, AclSize, 2)
|
|
|
|
TEST_FIELD_ALIGN (ACL, AclSize, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACL, AclSize, 2)
|
|
|
|
TEST_FIELD_SIZE (ACL, AceCount, 2)
|
|
|
|
TEST_FIELD_ALIGN (ACL, AceCount, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACL, AceCount, 4)
|
|
|
|
TEST_FIELD_SIZE (ACL, Sbz2, 2)
|
|
|
|
TEST_FIELD_ALIGN (ACL, Sbz2, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACL, Sbz2, 6)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ACL_REVISION_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* ACL_REVISION_INFORMATION */
|
|
|
|
TEST_TYPE_SIZE (ACL_REVISION_INFORMATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (ACL_REVISION_INFORMATION, 4)
|
|
|
|
TEST_FIELD_SIZE (ACL_REVISION_INFORMATION, AclRevision, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACL_REVISION_INFORMATION, AclRevision, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACL_REVISION_INFORMATION, AclRevision, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ACL_SIZE_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* ACL_SIZE_INFORMATION */
|
|
|
|
TEST_TYPE_SIZE (ACL_SIZE_INFORMATION, 12)
|
|
|
|
TEST_TYPE_ALIGN (ACL_SIZE_INFORMATION, 4)
|
|
|
|
TEST_FIELD_SIZE (ACL_SIZE_INFORMATION, AceCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACL_SIZE_INFORMATION, AceCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACL_SIZE_INFORMATION, AceCount, 0)
|
|
|
|
TEST_FIELD_SIZE (ACL_SIZE_INFORMATION, AclBytesInUse, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACL_SIZE_INFORMATION, AclBytesInUse, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACL_SIZE_INFORMATION, AclBytesInUse, 4)
|
|
|
|
TEST_FIELD_SIZE (ACL_SIZE_INFORMATION, AclBytesFree, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACL_SIZE_INFORMATION, AclBytesFree, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACL_SIZE_INFORMATION, AclBytesFree, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BOOLEAN(void)
|
|
|
|
{
|
|
|
|
/* BOOLEAN */
|
|
|
|
TEST_TYPE_SIZE (BOOLEAN, 1)
|
|
|
|
TEST_TYPE_ALIGN (BOOLEAN, 1)
|
|
|
|
TEST_TYPE_UNSIGNED(BOOLEAN)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CCHAR(void)
|
|
|
|
{
|
|
|
|
/* CCHAR */
|
|
|
|
TEST_TYPE_SIZE (CCHAR, 1)
|
|
|
|
TEST_TYPE_ALIGN (CCHAR, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CHAR(void)
|
|
|
|
{
|
|
|
|
/* CHAR */
|
|
|
|
TEST_TYPE_SIZE (CHAR, 1)
|
|
|
|
TEST_TYPE_ALIGN (CHAR, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DWORDLONG(void)
|
|
|
|
{
|
|
|
|
/* DWORDLONG */
|
|
|
|
TEST_TYPE_SIZE (DWORDLONG, 8)
|
|
|
|
TEST_TYPE_ALIGN (DWORDLONG, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(DWORDLONG)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_EXCEPTION_POINTERS(void)
|
|
|
|
{
|
|
|
|
/* EXCEPTION_POINTERS */
|
|
|
|
TEST_TYPE_SIZE (EXCEPTION_POINTERS, 16)
|
|
|
|
TEST_TYPE_ALIGN (EXCEPTION_POINTERS, 8)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_POINTERS, ExceptionRecord, 8)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_POINTERS, ExceptionRecord, 8)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_POINTERS, ExceptionRecord, 0)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_POINTERS, ContextRecord, 8)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_POINTERS, ContextRecord, 8)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_POINTERS, ContextRecord, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_EXCEPTION_RECORD(void)
|
|
|
|
{
|
|
|
|
/* EXCEPTION_RECORD */
|
|
|
|
TEST_TYPE_SIZE (EXCEPTION_RECORD, 152)
|
|
|
|
TEST_TYPE_ALIGN (EXCEPTION_RECORD, 8)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionCode, 0)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionFlags, 4)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionRecord, 8)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionRecord, 8)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionRecord, 8)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionAddress, 8)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionAddress, 8)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionAddress, 16)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, NumberParameters, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, NumberParameters, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, NumberParameters, 24)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionInformation, 120)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionInformation, 8)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionInformation, 32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_EXECUTION_STATE(void)
|
|
|
|
{
|
|
|
|
/* EXECUTION_STATE */
|
|
|
|
TEST_TYPE_SIZE (EXECUTION_STATE, 4)
|
|
|
|
TEST_TYPE_ALIGN (EXECUTION_STATE, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(EXECUTION_STATE)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FPO_DATA(void)
|
|
|
|
{
|
|
|
|
/* FPO_DATA */
|
|
|
|
TEST_TYPE_SIZE (FPO_DATA, 16)
|
|
|
|
TEST_TYPE_ALIGN (FPO_DATA, 4)
|
|
|
|
TEST_FIELD_SIZE (FPO_DATA, ulOffStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (FPO_DATA, ulOffStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(FPO_DATA, ulOffStart, 0)
|
|
|
|
TEST_FIELD_SIZE (FPO_DATA, cbProcSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (FPO_DATA, cbProcSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(FPO_DATA, cbProcSize, 4)
|
|
|
|
TEST_FIELD_SIZE (FPO_DATA, cdwLocals, 4)
|
|
|
|
TEST_FIELD_ALIGN (FPO_DATA, cdwLocals, 4)
|
|
|
|
TEST_FIELD_OFFSET(FPO_DATA, cdwLocals, 8)
|
|
|
|
TEST_FIELD_SIZE (FPO_DATA, cdwParams, 2)
|
|
|
|
TEST_FIELD_ALIGN (FPO_DATA, cdwParams, 2)
|
|
|
|
TEST_FIELD_OFFSET(FPO_DATA, cdwParams, 12)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_GENERIC_MAPPING(void)
|
|
|
|
{
|
|
|
|
/* GENERIC_MAPPING */
|
|
|
|
TEST_TYPE_SIZE (GENERIC_MAPPING, 16)
|
|
|
|
TEST_TYPE_ALIGN (GENERIC_MAPPING, 4)
|
|
|
|
TEST_FIELD_SIZE (GENERIC_MAPPING, GenericRead, 4)
|
|
|
|
TEST_FIELD_ALIGN (GENERIC_MAPPING, GenericRead, 4)
|
|
|
|
TEST_FIELD_OFFSET(GENERIC_MAPPING, GenericRead, 0)
|
|
|
|
TEST_FIELD_SIZE (GENERIC_MAPPING, GenericWrite, 4)
|
|
|
|
TEST_FIELD_ALIGN (GENERIC_MAPPING, GenericWrite, 4)
|
|
|
|
TEST_FIELD_OFFSET(GENERIC_MAPPING, GenericWrite, 4)
|
|
|
|
TEST_FIELD_SIZE (GENERIC_MAPPING, GenericExecute, 4)
|
|
|
|
TEST_FIELD_ALIGN (GENERIC_MAPPING, GenericExecute, 4)
|
|
|
|
TEST_FIELD_OFFSET(GENERIC_MAPPING, GenericExecute, 8)
|
|
|
|
TEST_FIELD_SIZE (GENERIC_MAPPING, GenericAll, 4)
|
|
|
|
TEST_FIELD_ALIGN (GENERIC_MAPPING, GenericAll, 4)
|
|
|
|
TEST_FIELD_OFFSET(GENERIC_MAPPING, GenericAll, 12)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HANDLE(void)
|
|
|
|
{
|
|
|
|
/* HANDLE */
|
|
|
|
TEST_TYPE_SIZE (HANDLE, 8)
|
|
|
|
TEST_TYPE_ALIGN (HANDLE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HRESULT(void)
|
|
|
|
{
|
|
|
|
/* HRESULT */
|
|
|
|
TEST_TYPE_SIZE (HRESULT, 4)
|
|
|
|
TEST_TYPE_ALIGN (HRESULT, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_ARCHIVE_MEMBER_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_ARCHIVE_MEMBER_HEADER */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, 60)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, 1)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, Name, 16)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, Name, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, Name, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, Date, 12)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, Date, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, Date, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, UserID, 6)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, UserID, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, UserID, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, GroupID, 6)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, GroupID, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, GroupID, 34)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, Mode, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, Mode, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, Mode, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, Size, 10)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, Size, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, Size, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, EndHeader, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, EndHeader, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, EndHeader, 58)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_AUX_SYMBOL(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_AUX_SYMBOL (pack 2) */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_BASE_RELOCATION(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_BASE_RELOCATION */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_BASE_RELOCATION, 8)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_BASE_RELOCATION, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BASE_RELOCATION, VirtualAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BASE_RELOCATION, VirtualAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BASE_RELOCATION, VirtualAddress, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BASE_RELOCATION, SizeOfBlock, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BASE_RELOCATION, SizeOfBlock, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BASE_RELOCATION, SizeOfBlock, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_BOUND_FORWARDER_REF(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_BOUND_FORWARDER_REF */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_BOUND_FORWARDER_REF, 8)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_BOUND_FORWARDER_REF, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_FORWARDER_REF, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_FORWARDER_REF, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_FORWARDER_REF, TimeDateStamp, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_FORWARDER_REF, OffsetModuleName, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_FORWARDER_REF, OffsetModuleName, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_FORWARDER_REF, OffsetModuleName, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_FORWARDER_REF, Reserved, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_FORWARDER_REF, Reserved, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_FORWARDER_REF, Reserved, 6)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_BOUND_IMPORT_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_BOUND_IMPORT_DESCRIPTOR */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_BOUND_IMPORT_DESCRIPTOR, 8)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_BOUND_IMPORT_DESCRIPTOR, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_IMPORT_DESCRIPTOR, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_IMPORT_DESCRIPTOR, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_IMPORT_DESCRIPTOR, TimeDateStamp, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_IMPORT_DESCRIPTOR, OffsetModuleName, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_IMPORT_DESCRIPTOR, OffsetModuleName, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_IMPORT_DESCRIPTOR, OffsetModuleName, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_IMPORT_DESCRIPTOR, NumberOfModuleForwarderRefs, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_IMPORT_DESCRIPTOR, NumberOfModuleForwarderRefs, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_IMPORT_DESCRIPTOR, NumberOfModuleForwarderRefs, 6)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_COFF_SYMBOLS_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_COFF_SYMBOLS_HEADER */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_COFF_SYMBOLS_HEADER, 32)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, NumberOfSymbols, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, NumberOfSymbols, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, NumberOfSymbols, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstSymbol, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstSymbol, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstSymbol, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, NumberOfLinenumbers, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, NumberOfLinenumbers, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, NumberOfLinenumbers, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstLinenumber, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstLinenumber, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstLinenumber, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfCode, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfCode, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfData, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfData, 28)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_DATA_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_DATA_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_DATA_DIRECTORY, 8)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_DATA_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DATA_DIRECTORY, VirtualAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DATA_DIRECTORY, VirtualAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DATA_DIRECTORY, VirtualAddress, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DATA_DIRECTORY, Size, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DATA_DIRECTORY, Size, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DATA_DIRECTORY, Size, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_DEBUG_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_DEBUG_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_DEBUG_DIRECTORY, 28)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_DEBUG_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, Characteristics, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, MajorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, MinorVersion, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, Type, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, Type, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, Type, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, SizeOfData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, SizeOfData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, SizeOfData, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, AddressOfRawData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, AddressOfRawData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, AddressOfRawData, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, PointerToRawData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, PointerToRawData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, PointerToRawData, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_DEBUG_MISC(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_DEBUG_MISC */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_DEBUG_MISC, 16)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_DEBUG_MISC, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, DataType, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, DataType, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, DataType, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, Length, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, Length, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, Length, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, Unicode, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, Unicode, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, Unicode, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, Reserved, 3)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, Reserved, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, Reserved, 9)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, Data, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, Data, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, Data, 12)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_DOS_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_DOS_HEADER (pack 2) */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_DOS_HEADER, 64)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_DOS_HEADER, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_cblp, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_cblp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_cblp, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_cp, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_cp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_cp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_crlc, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_crlc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_crlc, 6)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_cparhdr, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_cparhdr, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_cparhdr, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_minalloc, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_minalloc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_minalloc, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_maxalloc, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_maxalloc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_maxalloc, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_ss, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_ss, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_ss, 14)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_sp, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_sp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_sp, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_csum, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_csum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_csum, 18)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_ip, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_ip, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_ip, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_cs, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_cs, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_cs, 22)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_lfarlc, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_lfarlc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_lfarlc, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_ovno, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_ovno, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_ovno, 26)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_res, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_res, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_res, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_oemid, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_oemid, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_oemid, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_oeminfo, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_oeminfo, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_oeminfo, 38)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_res2, 20)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_res2, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_res2, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_lfanew, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_lfanew, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_lfanew, 60)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_EXPORT_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_EXPORT_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_EXPORT_DIRECTORY, 40)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_EXPORT_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, Characteristics, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, MajorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, MinorVersion, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, Name, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, Name, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, Name, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, Base, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, Base, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, Base, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, NumberOfFunctions, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, NumberOfFunctions, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, NumberOfFunctions, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, NumberOfNames, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, NumberOfNames, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, NumberOfNames, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, AddressOfFunctions, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, AddressOfFunctions, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, AddressOfFunctions, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, AddressOfNames, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, AddressOfNames, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, AddressOfNames, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, AddressOfNameOrdinals, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, AddressOfNameOrdinals, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, AddressOfNameOrdinals, 36)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_FILE_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_FILE_HEADER */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_FILE_HEADER, 20)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_FILE_HEADER, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, Machine, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, Machine, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, Machine, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, NumberOfSections, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, NumberOfSections, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, NumberOfSections, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, PointerToSymbolTable, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, PointerToSymbolTable, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, PointerToSymbolTable, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, NumberOfSymbols, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, NumberOfSymbols, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, NumberOfSymbols, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, SizeOfOptionalHeader, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, SizeOfOptionalHeader, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, SizeOfOptionalHeader, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, Characteristics, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, Characteristics, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, Characteristics, 18)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_FUNCTION_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_FUNCTION_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_FUNCTION_ENTRY, 12)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_FUNCTION_ENTRY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FUNCTION_ENTRY, StartingAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FUNCTION_ENTRY, StartingAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FUNCTION_ENTRY, StartingAddress, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FUNCTION_ENTRY, EndingAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FUNCTION_ENTRY, EndingAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FUNCTION_ENTRY, EndingAddress, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FUNCTION_ENTRY, EndOfPrologue, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FUNCTION_ENTRY, EndOfPrologue, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FUNCTION_ENTRY, EndOfPrologue, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_IMPORT_BY_NAME(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_IMPORT_BY_NAME */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_IMPORT_BY_NAME, 4)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_IMPORT_BY_NAME, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_IMPORT_BY_NAME, Hint, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_IMPORT_BY_NAME, Hint, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_IMPORT_BY_NAME, Hint, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_IMPORT_BY_NAME, Name, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_IMPORT_BY_NAME, Name, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_IMPORT_BY_NAME, Name, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_IMPORT_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_IMPORT_DESCRIPTOR */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_LINENUMBER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_LINENUMBER (pack 2) */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_LOAD_CONFIG_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_LOAD_CONFIG_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, 88)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, Size, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, Size, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, Size, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, MajorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, MinorVersion, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsClear, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsClear, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsClear, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsSet, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsSet, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsSet, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, CriticalSectionDefaultTimeout, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, CriticalSectionDefaultTimeout, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, CriticalSectionDefaultTimeout, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitFreeBlockThreshold, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitFreeBlockThreshold, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitFreeBlockThreshold, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitTotalFreeThreshold, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitTotalFreeThreshold, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitTotalFreeThreshold, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, LockPrefixTable, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, LockPrefixTable, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, LockPrefixTable, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, MaximumAllocationSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, MaximumAllocationSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, MaximumAllocationSize, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, VirtualMemoryThreshold, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, VirtualMemoryThreshold, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, VirtualMemoryThreshold, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, ProcessHeapFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, ProcessHeapFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, ProcessHeapFlags, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, ProcessAffinityMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, ProcessAffinityMask, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, ProcessAffinityMask, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, CSDVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, CSDVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, CSDVersion, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, Reserved1, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, Reserved1, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, Reserved1, 58)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, EditList, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, EditList, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, EditList, 64)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, SecurityCookie, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, SecurityCookie, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, SecurityCookie, 72)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerTable, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerTable, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerTable, 76)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerCount, 80)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_NT_HEADERS(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_NT_HEADERS */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_NT_HEADERS, 264)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_NT_HEADERS, 8)
|
|
|
|
}
|
|
|
|
|
2010-04-07 17:25:19 +02:00
|
|
|
static void test_pack_IMAGE_NT_HEADERS32(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_NT_HEADERS32 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_NT_HEADERS32, 248)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_NT_HEADERS32, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS32, Signature, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS32, Signature, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS32, Signature, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS32, FileHeader, 20)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS32, FileHeader, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS32, FileHeader, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS32, OptionalHeader, 224)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS32, OptionalHeader, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS32, OptionalHeader, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_NT_HEADERS64(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_NT_HEADERS64 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_NT_HEADERS64, 264)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_NT_HEADERS64, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS64, Signature, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS64, Signature, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS64, Signature, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS64, FileHeader, 20)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS64, FileHeader, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS64, FileHeader, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS64, OptionalHeader, 240)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS64, OptionalHeader, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS64, OptionalHeader, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_OPTIONAL_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_OPTIONAL_HEADER */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_OPTIONAL_HEADER, 240)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_OPTIONAL_HEADER, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_OPTIONAL_HEADER32(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_OPTIONAL_HEADER32 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_OPTIONAL_HEADER32, 224)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_OPTIONAL_HEADER32, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, Magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, Magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, Magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MajorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MajorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MajorLinkerVersion, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MinorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MinorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MinorLinkerVersion, 3)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfInitializedData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfInitializedData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfInitializedData, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfUninitializedData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfUninitializedData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfUninitializedData, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, AddressOfEntryPoint, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, AddressOfEntryPoint, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, AddressOfEntryPoint, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, BaseOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, BaseOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, BaseOfCode, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, BaseOfData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, BaseOfData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, BaseOfData, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, ImageBase, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, ImageBase, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, ImageBase, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SectionAlignment, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, FileAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, FileAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, FileAlignment, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MajorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MajorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MajorOperatingSystemVersion, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MinorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MinorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MinorOperatingSystemVersion, 42)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MajorImageVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MajorImageVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MajorImageVersion, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MinorImageVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MinorImageVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MinorImageVersion, 46)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MajorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MajorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MajorSubsystemVersion, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MinorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MinorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MinorSubsystemVersion, 50)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, Win32VersionValue, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, Win32VersionValue, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, Win32VersionValue, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfImage, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfHeaders, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfHeaders, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfHeaders, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, CheckSum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, CheckSum, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, CheckSum, 64)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, Subsystem, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, Subsystem, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, Subsystem, 68)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, DllCharacteristics, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, DllCharacteristics, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, DllCharacteristics, 70)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfStackReserve, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfStackReserve, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfStackReserve, 72)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfStackCommit, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfStackCommit, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfStackCommit, 76)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfHeapReserve, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfHeapReserve, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfHeapReserve, 80)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfHeapCommit, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfHeapCommit, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfHeapCommit, 84)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, LoaderFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, LoaderFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, LoaderFlags, 88)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, NumberOfRvaAndSizes, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, NumberOfRvaAndSizes, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, NumberOfRvaAndSizes, 92)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, DataDirectory, 128)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, DataDirectory, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, DataDirectory, 96)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_OPTIONAL_HEADER64(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_OPTIONAL_HEADER64 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_OPTIONAL_HEADER64, 240)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_OPTIONAL_HEADER64, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, Magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, Magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, Magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MajorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MajorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MajorLinkerVersion, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MinorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MinorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MinorLinkerVersion, 3)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfInitializedData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfInitializedData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfInitializedData, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfUninitializedData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfUninitializedData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfUninitializedData, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, AddressOfEntryPoint, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, AddressOfEntryPoint, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, AddressOfEntryPoint, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, BaseOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, BaseOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, BaseOfCode, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, ImageBase, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, ImageBase, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, ImageBase, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SectionAlignment, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, FileAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, FileAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, FileAlignment, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MajorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MajorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MajorOperatingSystemVersion, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MinorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MinorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MinorOperatingSystemVersion, 42)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MajorImageVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MajorImageVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MajorImageVersion, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MinorImageVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MinorImageVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MinorImageVersion, 46)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MajorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MajorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MajorSubsystemVersion, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MinorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MinorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MinorSubsystemVersion, 50)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, Win32VersionValue, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, Win32VersionValue, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, Win32VersionValue, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfImage, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfHeaders, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfHeaders, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfHeaders, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, CheckSum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, CheckSum, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, CheckSum, 64)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, Subsystem, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, Subsystem, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, Subsystem, 68)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, DllCharacteristics, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, DllCharacteristics, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, DllCharacteristics, 70)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfStackReserve, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfStackReserve, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfStackReserve, 72)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfStackCommit, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfStackCommit, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfStackCommit, 80)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfHeapReserve, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfHeapReserve, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfHeapReserve, 88)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfHeapCommit, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfHeapCommit, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfHeapCommit, 96)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, LoaderFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, LoaderFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, LoaderFlags, 104)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, NumberOfRvaAndSizes, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, NumberOfRvaAndSizes, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, NumberOfRvaAndSizes, 108)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, DataDirectory, 128)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, DataDirectory, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, DataDirectory, 112)
|
|
|
|
}
|
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_IMAGE_OS2_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_OS2_HEADER (pack 2) */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_OS2_HEADER, 64)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_OS2_HEADER, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_ver, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_ver, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_ver, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_rev, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_rev, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_rev, 3)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_enttab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_enttab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_enttab, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cbenttab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cbenttab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cbenttab, 6)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_crc, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_crc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_crc, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_flags, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_flags, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_flags, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_autodata, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_autodata, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_autodata, 14)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_heap, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_heap, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_heap, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_stack, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_stack, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_stack, 18)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_csip, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_csip, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_csip, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_sssp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_sssp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_sssp, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cseg, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cseg, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cseg, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cmod, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cmod, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cmod, 30)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cbnrestab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cbnrestab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cbnrestab, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_segtab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_segtab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_segtab, 34)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_rsrctab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_rsrctab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_rsrctab, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_restab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_restab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_restab, 38)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_modtab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_modtab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_modtab, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_imptab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_imptab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_imptab, 42)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_nrestab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_nrestab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_nrestab, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cmovent, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cmovent, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cmovent, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_align, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_align, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_align, 50)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cres, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cres, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cres, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_exetyp, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_exetyp, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_exetyp, 54)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_flagsothers, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_flagsothers, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_flagsothers, 55)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_pretthunks, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_pretthunks, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_pretthunks, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_psegrefbytes, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_psegrefbytes, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_psegrefbytes, 58)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_swaparea, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_swaparea, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_swaparea, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_expver, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_expver, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_expver, 62)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_RELOCATION(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_RELOCATION (pack 2) */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_RESOURCE_DATA_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_RESOURCE_DATA_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_RESOURCE_DATA_ENTRY, 16)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DATA_ENTRY, OffsetToData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, OffsetToData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DATA_ENTRY, OffsetToData, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DATA_ENTRY, Size, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, Size, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DATA_ENTRY, Size, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DATA_ENTRY, CodePage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, CodePage, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DATA_ENTRY, CodePage, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DATA_ENTRY, Reserved, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, Reserved, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DATA_ENTRY, Reserved, 12)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_RESOURCE_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_RESOURCE_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_RESOURCE_DIRECTORY, 16)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_RESOURCE_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, Characteristics, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, MajorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, MinorVersion, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, NumberOfNamedEntries, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, NumberOfNamedEntries, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, NumberOfNamedEntries, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, NumberOfIdEntries, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, NumberOfIdEntries, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, NumberOfIdEntries, 14)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_RESOURCE_DIRECTORY_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_RESOURCE_DIRECTORY_ENTRY */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_RESOURCE_DIRECTORY_STRING(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_RESOURCE_DIRECTORY_STRING */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_RESOURCE_DIRECTORY_STRING, 4)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_RESOURCE_DIRECTORY_STRING, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY_STRING, Length, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY_STRING, Length, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY_STRING, Length, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY_STRING, NameString, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY_STRING, NameString, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY_STRING, NameString, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_RESOURCE_DIR_STRING_U(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_RESOURCE_DIR_STRING_U */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_RESOURCE_DIR_STRING_U, 4)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_RESOURCE_DIR_STRING_U, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIR_STRING_U, Length, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIR_STRING_U, Length, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIR_STRING_U, Length, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIR_STRING_U, NameString, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIR_STRING_U, NameString, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIR_STRING_U, NameString, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_SECTION_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_SECTION_HEADER */
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SECTION_HEADER, Name, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SECTION_HEADER, Name, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SECTION_HEADER, Name, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_SEPARATE_DEBUG_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_SEPARATE_DEBUG_HEADER */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, 48)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Signature, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Signature, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Signature, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Flags, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Flags, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Flags, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Machine, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Machine, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Machine, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Characteristics, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Characteristics, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Characteristics, 6)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, TimeDateStamp, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, CheckSum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, CheckSum, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, CheckSum, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, ImageBase, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, ImageBase, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, ImageBase, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, SizeOfImage, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, NumberOfSections, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, NumberOfSections, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, NumberOfSections, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, ExportedNamesSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, ExportedNamesSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, ExportedNamesSize, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, DebugDirectorySize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, DebugDirectorySize, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, DebugDirectorySize, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, SectionAlignment, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Reserved, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Reserved, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Reserved, 40)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_SYMBOL(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_SYMBOL (pack 2) */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_THUNK_DATA(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_THUNK_DATA */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_TLS_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_TLS_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_TLS_DIRECTORY, 40)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_TLS_DIRECTORY, 8)
|
|
|
|
}
|
|
|
|
|
2010-04-07 17:25:19 +02:00
|
|
|
static void test_pack_IMAGE_TLS_DIRECTORY32(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_TLS_DIRECTORY32 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_TLS_DIRECTORY32, 24)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_TLS_DIRECTORY32, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, StartAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, StartAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, StartAddressOfRawData, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, EndAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, EndAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, EndAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, AddressOfIndex, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, AddressOfIndex, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, AddressOfIndex, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, AddressOfCallBacks, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, AddressOfCallBacks, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, AddressOfCallBacks, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, SizeOfZeroFill, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, SizeOfZeroFill, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, SizeOfZeroFill, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, Characteristics, 20)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_TLS_DIRECTORY64(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_TLS_DIRECTORY64 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_TLS_DIRECTORY64, 40)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_TLS_DIRECTORY64, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, StartAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, StartAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, StartAddressOfRawData, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, EndAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, EndAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, EndAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, AddressOfIndex, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, AddressOfIndex, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, AddressOfIndex, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, AddressOfCallBacks, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, AddressOfCallBacks, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, AddressOfCallBacks, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, SizeOfZeroFill, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, SizeOfZeroFill, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, SizeOfZeroFill, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, Characteristics, 36)
|
|
|
|
}
|
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_IMAGE_VXD_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_VXD_HEADER (pack 2) */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_VXD_HEADER, 196)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_VXD_HEADER, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_border, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_border, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_border, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_worder, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_worder, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_worder, 3)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_level, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_level, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_level, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_cpu, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_cpu, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_cpu, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_os, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_os, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_os, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_ver, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_ver, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_ver, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_mflags, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_mflags, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_mflags, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_mpages, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_mpages, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_mpages, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_startobj, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_startobj, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_startobj, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_eip, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_eip, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_eip, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_stackobj, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_stackobj, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_stackobj, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_esp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_esp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_esp, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_pagesize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_pagesize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_pagesize, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_lastpagesize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_lastpagesize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_lastpagesize, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_fixupsize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_fixupsize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_fixupsize, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_fixupsum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_fixupsum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_fixupsum, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_ldrsize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_ldrsize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_ldrsize, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_ldrsum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_ldrsum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_ldrsum, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_objtab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_objtab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_objtab, 64)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_objcnt, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_objcnt, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_objcnt, 68)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_objmap, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_objmap, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_objmap, 72)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_itermap, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_itermap, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_itermap, 76)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_rsrctab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_rsrctab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_rsrctab, 80)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_rsrccnt, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_rsrccnt, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_rsrccnt, 84)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_restab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_restab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_restab, 88)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_enttab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_enttab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_enttab, 92)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_dirtab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_dirtab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_dirtab, 96)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_dircnt, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_dircnt, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_dircnt, 100)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_fpagetab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_fpagetab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_fpagetab, 104)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_frectab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_frectab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_frectab, 108)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_impmod, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_impmod, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_impmod, 112)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_impmodcnt, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_impmodcnt, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_impmodcnt, 116)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_impproc, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_impproc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_impproc, 120)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_pagesum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_pagesum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_pagesum, 124)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_datapage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_datapage, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_datapage, 128)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_preload, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_preload, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_preload, 132)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_nrestab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_nrestab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_nrestab, 136)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_cbnrestab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_cbnrestab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_cbnrestab, 140)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_nressum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_nressum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_nressum, 144)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_autodata, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_autodata, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_autodata, 148)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_debuginfo, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_debuginfo, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_debuginfo, 152)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_debuglen, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_debuglen, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_debuglen, 156)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_instpreload, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_instpreload, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_instpreload, 160)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_instdemand, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_instdemand, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_instdemand, 164)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_heapsize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_heapsize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_heapsize, 168)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_res3, 12)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_res3, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_res3, 172)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_winresoff, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_winresoff, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_winresoff, 184)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_winreslen, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_winreslen, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_winreslen, 188)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_devid, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_devid, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_devid, 192)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_ddkver, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_ddkver, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_ddkver, 194)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IO_COUNTERS(void)
|
|
|
|
{
|
|
|
|
/* IO_COUNTERS (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (IO_COUNTERS, 48)
|
|
|
|
TEST_TYPE_ALIGN (IO_COUNTERS, 8)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, ReadOperationCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, ReadOperationCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, ReadOperationCount, 0)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, WriteOperationCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, WriteOperationCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, WriteOperationCount, 8)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, OtherOperationCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, OtherOperationCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, OtherOperationCount, 16)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, ReadTransferCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, ReadTransferCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, ReadTransferCount, 24)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, WriteTransferCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, WriteTransferCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, WriteTransferCount, 32)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, OtherTransferCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, OtherTransferCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, OtherTransferCount, 40)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LANGID(void)
|
|
|
|
{
|
|
|
|
/* LANGID */
|
|
|
|
TEST_TYPE_SIZE (LANGID, 2)
|
|
|
|
TEST_TYPE_ALIGN (LANGID, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(LANGID)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LARGE_INTEGER(void)
|
|
|
|
{
|
|
|
|
/* LARGE_INTEGER */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LCID(void)
|
|
|
|
{
|
|
|
|
/* LCID */
|
|
|
|
TEST_TYPE_SIZE (LCID, 4)
|
|
|
|
TEST_TYPE_ALIGN (LCID, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(LCID)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LIST_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* LIST_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (LIST_ENTRY, 16)
|
|
|
|
TEST_TYPE_ALIGN (LIST_ENTRY, 8)
|
|
|
|
TEST_FIELD_SIZE (LIST_ENTRY, Flink, 8)
|
|
|
|
TEST_FIELD_ALIGN (LIST_ENTRY, Flink, 8)
|
|
|
|
TEST_FIELD_OFFSET(LIST_ENTRY, Flink, 0)
|
|
|
|
TEST_FIELD_SIZE (LIST_ENTRY, Blink, 8)
|
|
|
|
TEST_FIELD_ALIGN (LIST_ENTRY, Blink, 8)
|
|
|
|
TEST_FIELD_OFFSET(LIST_ENTRY, Blink, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LONG(void)
|
|
|
|
{
|
|
|
|
/* LONG */
|
|
|
|
TEST_TYPE_SIZE (LONG, 4)
|
|
|
|
TEST_TYPE_ALIGN (LONG, 4)
|
|
|
|
TEST_TYPE_SIGNED(LONG)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LONGLONG(void)
|
|
|
|
{
|
|
|
|
/* LONGLONG */
|
|
|
|
TEST_TYPE_SIZE (LONGLONG, 8)
|
|
|
|
TEST_TYPE_ALIGN (LONGLONG, 8)
|
|
|
|
TEST_TYPE_SIGNED(LONGLONG)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LUID(void)
|
|
|
|
{
|
|
|
|
/* LUID */
|
|
|
|
TEST_TYPE_SIZE (LUID, 8)
|
|
|
|
TEST_TYPE_ALIGN (LUID, 4)
|
|
|
|
TEST_FIELD_SIZE (LUID, LowPart, 4)
|
|
|
|
TEST_FIELD_ALIGN (LUID, LowPart, 4)
|
|
|
|
TEST_FIELD_OFFSET(LUID, LowPart, 0)
|
|
|
|
TEST_FIELD_SIZE (LUID, HighPart, 4)
|
|
|
|
TEST_FIELD_ALIGN (LUID, HighPart, 4)
|
|
|
|
TEST_FIELD_OFFSET(LUID, HighPart, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LUID_AND_ATTRIBUTES(void)
|
|
|
|
{
|
|
|
|
/* LUID_AND_ATTRIBUTES (pack 4) */
|
|
|
|
TEST_TYPE_SIZE (LUID_AND_ATTRIBUTES, 12)
|
|
|
|
TEST_TYPE_ALIGN (LUID_AND_ATTRIBUTES, 4)
|
|
|
|
TEST_FIELD_SIZE (LUID_AND_ATTRIBUTES, Luid, 8)
|
|
|
|
TEST_FIELD_ALIGN (LUID_AND_ATTRIBUTES, Luid, 4)
|
|
|
|
TEST_FIELD_OFFSET(LUID_AND_ATTRIBUTES, Luid, 0)
|
|
|
|
TEST_FIELD_SIZE (LUID_AND_ATTRIBUTES, Attributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (LUID_AND_ATTRIBUTES, Attributes, 4)
|
|
|
|
TEST_FIELD_OFFSET(LUID_AND_ATTRIBUTES, Attributes, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_MEMORY_BASIC_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* MEMORY_BASIC_INFORMATION */
|
|
|
|
TEST_TYPE_SIZE (MEMORY_BASIC_INFORMATION, 48)
|
|
|
|
TEST_TYPE_ALIGN (MEMORY_BASIC_INFORMATION, 8)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, BaseAddress, 8)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, BaseAddress, 8)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, BaseAddress, 0)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, AllocationBase, 8)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, AllocationBase, 8)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, AllocationBase, 8)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, AllocationProtect, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, AllocationProtect, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, AllocationProtect, 16)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, RegionSize, 8)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, RegionSize, 8)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, RegionSize, 24)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, State, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, State, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, State, 32)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, Protect, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, Protect, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, Protect, 36)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, Type, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, Type, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, Type, 40)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_MESSAGE_RESOURCE_BLOCK(void)
|
|
|
|
{
|
|
|
|
/* MESSAGE_RESOURCE_BLOCK */
|
|
|
|
TEST_TYPE_SIZE (MESSAGE_RESOURCE_BLOCK, 12)
|
|
|
|
TEST_TYPE_ALIGN (MESSAGE_RESOURCE_BLOCK, 4)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_BLOCK, LowId, 4)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_BLOCK, LowId, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_BLOCK, LowId, 0)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_BLOCK, HighId, 4)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_BLOCK, HighId, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_BLOCK, HighId, 4)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_BLOCK, OffsetToEntries, 4)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_BLOCK, OffsetToEntries, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_BLOCK, OffsetToEntries, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_MESSAGE_RESOURCE_DATA(void)
|
|
|
|
{
|
|
|
|
/* MESSAGE_RESOURCE_DATA */
|
|
|
|
TEST_TYPE_SIZE (MESSAGE_RESOURCE_DATA, 16)
|
|
|
|
TEST_TYPE_ALIGN (MESSAGE_RESOURCE_DATA, 4)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_DATA, NumberOfBlocks, 4)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_DATA, NumberOfBlocks, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_DATA, NumberOfBlocks, 0)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_DATA, Blocks, 12)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_DATA, Blocks, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_DATA, Blocks, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_MESSAGE_RESOURCE_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* MESSAGE_RESOURCE_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (MESSAGE_RESOURCE_ENTRY, 6)
|
|
|
|
TEST_TYPE_ALIGN (MESSAGE_RESOURCE_ENTRY, 2)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_ENTRY, Length, 2)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_ENTRY, Length, 2)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_ENTRY, Length, 0)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_ENTRY, Flags, 2)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_ENTRY, Flags, 2)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_ENTRY, Flags, 2)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_ENTRY, Text, 1)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_ENTRY, Text, 1)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_ENTRY, Text, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_NT_TIB(void)
|
|
|
|
{
|
|
|
|
/* NT_TIB */
|
|
|
|
TEST_FIELD_SIZE (NT_TIB, ExceptionList, 8)
|
|
|
|
TEST_FIELD_ALIGN (NT_TIB, ExceptionList, 8)
|
|
|
|
TEST_FIELD_OFFSET(NT_TIB, ExceptionList, 0)
|
|
|
|
TEST_FIELD_SIZE (NT_TIB, StackBase, 8)
|
|
|
|
TEST_FIELD_ALIGN (NT_TIB, StackBase, 8)
|
|
|
|
TEST_FIELD_OFFSET(NT_TIB, StackBase, 8)
|
|
|
|
TEST_FIELD_SIZE (NT_TIB, StackLimit, 8)
|
|
|
|
TEST_FIELD_ALIGN (NT_TIB, StackLimit, 8)
|
|
|
|
TEST_FIELD_OFFSET(NT_TIB, StackLimit, 16)
|
|
|
|
TEST_FIELD_SIZE (NT_TIB, SubSystemTib, 8)
|
|
|
|
TEST_FIELD_ALIGN (NT_TIB, SubSystemTib, 8)
|
|
|
|
TEST_FIELD_OFFSET(NT_TIB, SubSystemTib, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_OBJECT_TYPE_LIST(void)
|
|
|
|
{
|
|
|
|
/* OBJECT_TYPE_LIST */
|
|
|
|
TEST_TYPE_SIZE (OBJECT_TYPE_LIST, 16)
|
|
|
|
TEST_TYPE_ALIGN (OBJECT_TYPE_LIST, 8)
|
|
|
|
TEST_FIELD_SIZE (OBJECT_TYPE_LIST, Level, 2)
|
|
|
|
TEST_FIELD_ALIGN (OBJECT_TYPE_LIST, Level, 2)
|
|
|
|
TEST_FIELD_OFFSET(OBJECT_TYPE_LIST, Level, 0)
|
|
|
|
TEST_FIELD_SIZE (OBJECT_TYPE_LIST, Sbz, 2)
|
|
|
|
TEST_FIELD_ALIGN (OBJECT_TYPE_LIST, Sbz, 2)
|
|
|
|
TEST_FIELD_OFFSET(OBJECT_TYPE_LIST, Sbz, 2)
|
|
|
|
TEST_FIELD_SIZE (OBJECT_TYPE_LIST, ObjectType, 8)
|
|
|
|
TEST_FIELD_ALIGN (OBJECT_TYPE_LIST, ObjectType, 8)
|
|
|
|
TEST_FIELD_OFFSET(OBJECT_TYPE_LIST, ObjectType, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PACCESS_ALLOWED_ACE(void)
|
|
|
|
{
|
|
|
|
/* PACCESS_ALLOWED_ACE */
|
|
|
|
TEST_TYPE_SIZE (PACCESS_ALLOWED_ACE, 8)
|
|
|
|
TEST_TYPE_ALIGN (PACCESS_ALLOWED_ACE, 8)
|
|
|
|
TEST_TARGET_SIZE (PACCESS_ALLOWED_ACE, 12)
|
|
|
|
TEST_TARGET_ALIGN(PACCESS_ALLOWED_ACE, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PACCESS_DENIED_ACE(void)
|
|
|
|
{
|
|
|
|
/* PACCESS_DENIED_ACE */
|
|
|
|
TEST_TYPE_SIZE (PACCESS_DENIED_ACE, 8)
|
|
|
|
TEST_TYPE_ALIGN (PACCESS_DENIED_ACE, 8)
|
|
|
|
TEST_TARGET_SIZE (PACCESS_DENIED_ACE, 12)
|
|
|
|
TEST_TARGET_ALIGN(PACCESS_DENIED_ACE, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PACCESS_TOKEN(void)
|
|
|
|
{
|
|
|
|
/* PACCESS_TOKEN */
|
|
|
|
TEST_TYPE_SIZE (PACCESS_TOKEN, 8)
|
|
|
|
TEST_TYPE_ALIGN (PACCESS_TOKEN, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PACE_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PACE_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PACE_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PACE_HEADER, 8)
|
|
|
|
TEST_TARGET_SIZE (PACE_HEADER, 4)
|
|
|
|
TEST_TARGET_ALIGN(PACE_HEADER, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PACL(void)
|
|
|
|
{
|
|
|
|
/* PACL */
|
|
|
|
TEST_TYPE_SIZE (PACL, 8)
|
|
|
|
TEST_TYPE_ALIGN (PACL, 8)
|
|
|
|
TEST_TARGET_SIZE (PACL, 8)
|
|
|
|
TEST_TARGET_ALIGN(PACL, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PACL_REVISION_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* PACL_REVISION_INFORMATION */
|
|
|
|
TEST_TYPE_SIZE (PACL_REVISION_INFORMATION, 8)
|
|
|
|
TEST_TYPE_ALIGN (PACL_REVISION_INFORMATION, 8)
|
|
|
|
TEST_TARGET_SIZE (PACL_REVISION_INFORMATION, 4)
|
|
|
|
TEST_TARGET_ALIGN(PACL_REVISION_INFORMATION, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PACL_SIZE_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* PACL_SIZE_INFORMATION */
|
|
|
|
TEST_TYPE_SIZE (PACL_SIZE_INFORMATION, 8)
|
|
|
|
TEST_TYPE_ALIGN (PACL_SIZE_INFORMATION, 8)
|
|
|
|
TEST_TARGET_SIZE (PACL_SIZE_INFORMATION, 12)
|
|
|
|
TEST_TARGET_ALIGN(PACL_SIZE_INFORMATION, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PCCH(void)
|
|
|
|
{
|
|
|
|
/* PCCH */
|
|
|
|
TEST_TYPE_SIZE (PCCH, 8)
|
|
|
|
TEST_TYPE_ALIGN (PCCH, 8)
|
|
|
|
TEST_TARGET_SIZE (PCCH, 1)
|
|
|
|
TEST_TARGET_ALIGN(PCCH, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PCH(void)
|
|
|
|
{
|
|
|
|
/* PCH */
|
|
|
|
TEST_TYPE_SIZE (PCH, 8)
|
|
|
|
TEST_TYPE_ALIGN (PCH, 8)
|
|
|
|
TEST_TARGET_SIZE (PCH, 1)
|
|
|
|
TEST_TARGET_ALIGN(PCH, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PCSTR(void)
|
|
|
|
{
|
|
|
|
/* PCSTR */
|
|
|
|
TEST_TYPE_SIZE (PCSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PCSTR, 8)
|
|
|
|
TEST_TARGET_SIZE (PCSTR, 1)
|
|
|
|
TEST_TARGET_ALIGN(PCSTR, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PCTSTR(void)
|
|
|
|
{
|
|
|
|
/* PCTSTR */
|
|
|
|
TEST_TYPE_SIZE (PCTSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PCTSTR, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PCWCH(void)
|
|
|
|
{
|
|
|
|
/* PCWCH */
|
|
|
|
TEST_TYPE_SIZE (PCWCH, 8)
|
|
|
|
TEST_TYPE_ALIGN (PCWCH, 8)
|
|
|
|
TEST_TARGET_SIZE (PCWCH, 2)
|
|
|
|
TEST_TARGET_ALIGN(PCWCH, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PCWSTR(void)
|
|
|
|
{
|
|
|
|
/* PCWSTR */
|
|
|
|
TEST_TYPE_SIZE (PCWSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PCWSTR, 8)
|
|
|
|
TEST_TARGET_SIZE (PCWSTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(PCWSTR, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PEXCEPTION_POINTERS(void)
|
|
|
|
{
|
|
|
|
/* PEXCEPTION_POINTERS */
|
|
|
|
TEST_TYPE_SIZE (PEXCEPTION_POINTERS, 8)
|
|
|
|
TEST_TYPE_ALIGN (PEXCEPTION_POINTERS, 8)
|
|
|
|
TEST_TARGET_SIZE (PEXCEPTION_POINTERS, 16)
|
|
|
|
TEST_TARGET_ALIGN(PEXCEPTION_POINTERS, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PEXCEPTION_RECORD(void)
|
|
|
|
{
|
|
|
|
/* PEXCEPTION_RECORD */
|
|
|
|
TEST_TYPE_SIZE (PEXCEPTION_RECORD, 8)
|
|
|
|
TEST_TYPE_ALIGN (PEXCEPTION_RECORD, 8)
|
|
|
|
TEST_TARGET_SIZE (PEXCEPTION_RECORD, 152)
|
|
|
|
TEST_TARGET_ALIGN(PEXCEPTION_RECORD, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PFPO_DATA(void)
|
|
|
|
{
|
|
|
|
/* PFPO_DATA */
|
|
|
|
TEST_TYPE_SIZE (PFPO_DATA, 8)
|
|
|
|
TEST_TYPE_ALIGN (PFPO_DATA, 8)
|
|
|
|
TEST_TARGET_SIZE (PFPO_DATA, 16)
|
|
|
|
TEST_TARGET_ALIGN(PFPO_DATA, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PGENERIC_MAPPING(void)
|
|
|
|
{
|
|
|
|
/* PGENERIC_MAPPING */
|
|
|
|
TEST_TYPE_SIZE (PGENERIC_MAPPING, 8)
|
|
|
|
TEST_TYPE_ALIGN (PGENERIC_MAPPING, 8)
|
|
|
|
TEST_TARGET_SIZE (PGENERIC_MAPPING, 16)
|
|
|
|
TEST_TARGET_ALIGN(PGENERIC_MAPPING, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PHANDLE(void)
|
|
|
|
{
|
|
|
|
/* PHANDLE */
|
|
|
|
TEST_TYPE_SIZE (PHANDLE, 8)
|
|
|
|
TEST_TYPE_ALIGN (PHANDLE, 8)
|
|
|
|
TEST_TARGET_SIZE (PHANDLE, 8)
|
|
|
|
TEST_TARGET_ALIGN(PHANDLE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_ARCHIVE_MEMBER_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_ARCHIVE_MEMBER_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_ARCHIVE_MEMBER_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_ARCHIVE_MEMBER_HEADER, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_ARCHIVE_MEMBER_HEADER, 60)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_ARCHIVE_MEMBER_HEADER, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_AUX_SYMBOL(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_AUX_SYMBOL */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_AUX_SYMBOL, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_AUX_SYMBOL, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_BASE_RELOCATION(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_BASE_RELOCATION */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_BASE_RELOCATION, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_BASE_RELOCATION, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_BASE_RELOCATION, 8)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_BASE_RELOCATION, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_BOUND_FORWARDER_REF(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_BOUND_FORWARDER_REF */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_BOUND_FORWARDER_REF, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_BOUND_FORWARDER_REF, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_BOUND_FORWARDER_REF, 8)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_BOUND_FORWARDER_REF, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_BOUND_IMPORT_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_BOUND_IMPORT_DESCRIPTOR */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_BOUND_IMPORT_DESCRIPTOR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_BOUND_IMPORT_DESCRIPTOR, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_BOUND_IMPORT_DESCRIPTOR, 8)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_BOUND_IMPORT_DESCRIPTOR, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_COFF_SYMBOLS_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_COFF_SYMBOLS_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_COFF_SYMBOLS_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_COFF_SYMBOLS_HEADER, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_COFF_SYMBOLS_HEADER, 32)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_COFF_SYMBOLS_HEADER, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_DATA_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_DATA_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_DATA_DIRECTORY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_DATA_DIRECTORY, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_DATA_DIRECTORY, 8)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_DATA_DIRECTORY, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_DEBUG_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_DEBUG_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_DEBUG_DIRECTORY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_DEBUG_DIRECTORY, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_DEBUG_DIRECTORY, 28)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_DEBUG_DIRECTORY, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_DEBUG_MISC(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_DEBUG_MISC */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_DEBUG_MISC, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_DEBUG_MISC, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_DEBUG_MISC, 16)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_DEBUG_MISC, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_DOS_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_DOS_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_DOS_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_DOS_HEADER, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_DOS_HEADER, 64)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_DOS_HEADER, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_EXPORT_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_EXPORT_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_EXPORT_DIRECTORY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_EXPORT_DIRECTORY, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_EXPORT_DIRECTORY, 40)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_EXPORT_DIRECTORY, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_FILE_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_FILE_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_FILE_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_FILE_HEADER, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_FILE_HEADER, 20)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_FILE_HEADER, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_FUNCTION_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_FUNCTION_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_FUNCTION_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_FUNCTION_ENTRY, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_FUNCTION_ENTRY, 12)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_FUNCTION_ENTRY, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_IMPORT_BY_NAME(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_IMPORT_BY_NAME */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_IMPORT_BY_NAME, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_IMPORT_BY_NAME, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_IMPORT_BY_NAME, 4)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_IMPORT_BY_NAME, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_IMPORT_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_IMPORT_DESCRIPTOR */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_IMPORT_DESCRIPTOR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_IMPORT_DESCRIPTOR, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_LINENUMBER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_LINENUMBER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_LINENUMBER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_LINENUMBER, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_LOAD_CONFIG_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_LOAD_CONFIG_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_LOAD_CONFIG_DIRECTORY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_LOAD_CONFIG_DIRECTORY, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_LOAD_CONFIG_DIRECTORY, 88)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_LOAD_CONFIG_DIRECTORY, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_NT_HEADERS(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_NT_HEADERS */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_NT_HEADERS, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_NT_HEADERS, 8)
|
|
|
|
}
|
|
|
|
|
2010-04-07 17:25:19 +02:00
|
|
|
static void test_pack_PIMAGE_NT_HEADERS32(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_NT_HEADERS32 */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_NT_HEADERS32, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_NT_HEADERS32, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_NT_HEADERS32, 248)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_NT_HEADERS32, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_NT_HEADERS64(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_NT_HEADERS64 */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_NT_HEADERS64, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_NT_HEADERS64, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_NT_HEADERS64, 264)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_NT_HEADERS64, 8)
|
|
|
|
}
|
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_PIMAGE_OPTIONAL_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_OPTIONAL_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_OPTIONAL_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_OPTIONAL_HEADER, 8)
|
|
|
|
}
|
|
|
|
|
2010-04-07 17:25:19 +02:00
|
|
|
static void test_pack_PIMAGE_OPTIONAL_HEADER32(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_OPTIONAL_HEADER32 */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_OPTIONAL_HEADER32, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_OPTIONAL_HEADER32, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_OPTIONAL_HEADER32, 224)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_OPTIONAL_HEADER32, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_OPTIONAL_HEADER64(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_OPTIONAL_HEADER64 */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_OPTIONAL_HEADER64, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_OPTIONAL_HEADER64, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_OPTIONAL_HEADER64, 240)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_OPTIONAL_HEADER64, 8)
|
|
|
|
}
|
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_PIMAGE_OS2_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_OS2_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_OS2_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_OS2_HEADER, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_OS2_HEADER, 64)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_OS2_HEADER, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_RELOCATION(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_RELOCATION */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_RELOCATION, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RELOCATION, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_RESOURCE_DATA_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_RESOURCE_DATA_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DATA_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DATA_ENTRY, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_RESOURCE_DATA_ENTRY, 16)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_RESOURCE_DATA_ENTRY, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_RESOURCE_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_RESOURCE_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DIRECTORY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DIRECTORY, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_RESOURCE_DIRECTORY, 16)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_RESOURCE_DIRECTORY, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_RESOURCE_DIRECTORY_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_RESOURCE_DIRECTORY_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DIRECTORY_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DIRECTORY_ENTRY, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_RESOURCE_DIRECTORY_STRING(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_RESOURCE_DIRECTORY_STRING */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DIRECTORY_STRING, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DIRECTORY_STRING, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_RESOURCE_DIRECTORY_STRING, 4)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_RESOURCE_DIRECTORY_STRING, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_RESOURCE_DIR_STRING_U(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_RESOURCE_DIR_STRING_U */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DIR_STRING_U, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DIR_STRING_U, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_RESOURCE_DIR_STRING_U, 4)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_RESOURCE_DIR_STRING_U, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_SECTION_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_SECTION_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_SECTION_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_SECTION_HEADER, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_SEPARATE_DEBUG_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_SEPARATE_DEBUG_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_SEPARATE_DEBUG_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_SEPARATE_DEBUG_HEADER, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_SEPARATE_DEBUG_HEADER, 48)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_SEPARATE_DEBUG_HEADER, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_SYMBOL(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_SYMBOL */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_SYMBOL, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_SYMBOL, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_THUNK_DATA(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_THUNK_DATA */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_THUNK_DATA, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_THUNK_DATA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_TLS_CALLBACK(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_TLS_CALLBACK */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_TLS_CALLBACK, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_TLS_CALLBACK, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_TLS_DIRECTORY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_TLS_DIRECTORY */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_TLS_DIRECTORY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_TLS_DIRECTORY, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_VXD_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_VXD_HEADER */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_VXD_HEADER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_VXD_HEADER, 8)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_VXD_HEADER, 196)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_VXD_HEADER, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIO_COUNTERS(void)
|
|
|
|
{
|
|
|
|
/* PIO_COUNTERS */
|
|
|
|
TEST_TYPE_SIZE (PIO_COUNTERS, 8)
|
|
|
|
TEST_TYPE_ALIGN (PIO_COUNTERS, 8)
|
|
|
|
TEST_TARGET_SIZE (PIO_COUNTERS, 48)
|
|
|
|
TEST_TARGET_ALIGN(PIO_COUNTERS, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PISECURITY_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* PISECURITY_DESCRIPTOR */
|
|
|
|
TEST_TYPE_SIZE (PISECURITY_DESCRIPTOR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PISECURITY_DESCRIPTOR, 8)
|
|
|
|
TEST_TARGET_SIZE (PISECURITY_DESCRIPTOR, 40)
|
|
|
|
TEST_TARGET_ALIGN(PISECURITY_DESCRIPTOR, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PISECURITY_DESCRIPTOR_RELATIVE(void)
|
|
|
|
{
|
|
|
|
/* PISECURITY_DESCRIPTOR_RELATIVE */
|
|
|
|
TEST_TYPE_SIZE (PISECURITY_DESCRIPTOR_RELATIVE, 8)
|
|
|
|
TEST_TYPE_ALIGN (PISECURITY_DESCRIPTOR_RELATIVE, 8)
|
|
|
|
TEST_TARGET_SIZE (PISECURITY_DESCRIPTOR_RELATIVE, 20)
|
|
|
|
TEST_TARGET_ALIGN(PISECURITY_DESCRIPTOR_RELATIVE, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PISID(void)
|
|
|
|
{
|
|
|
|
/* PISID */
|
|
|
|
TEST_TYPE_SIZE (PISID, 8)
|
|
|
|
TEST_TYPE_ALIGN (PISID, 8)
|
|
|
|
TEST_TARGET_SIZE (PISID, 12)
|
|
|
|
TEST_TARGET_ALIGN(PISID, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PLARGE_INTEGER(void)
|
|
|
|
{
|
|
|
|
/* PLARGE_INTEGER */
|
|
|
|
TEST_TYPE_SIZE (PLARGE_INTEGER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PLARGE_INTEGER, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PLIST_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* PLIST_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (PLIST_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PLIST_ENTRY, 8)
|
|
|
|
TEST_TARGET_SIZE (PLIST_ENTRY, 16)
|
|
|
|
TEST_TARGET_ALIGN(PLIST_ENTRY, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PLUID(void)
|
|
|
|
{
|
|
|
|
/* PLUID */
|
|
|
|
TEST_TYPE_SIZE (PLUID, 8)
|
|
|
|
TEST_TYPE_ALIGN (PLUID, 8)
|
|
|
|
TEST_TARGET_SIZE (PLUID, 8)
|
|
|
|
TEST_TARGET_ALIGN(PLUID, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PLUID_AND_ATTRIBUTES(void)
|
|
|
|
{
|
|
|
|
/* PLUID_AND_ATTRIBUTES */
|
|
|
|
TEST_TYPE_SIZE (PLUID_AND_ATTRIBUTES, 8)
|
|
|
|
TEST_TYPE_ALIGN (PLUID_AND_ATTRIBUTES, 8)
|
|
|
|
TEST_TARGET_SIZE (PLUID_AND_ATTRIBUTES, 12)
|
|
|
|
TEST_TARGET_ALIGN(PLUID_AND_ATTRIBUTES, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PMEMORY_BASIC_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* PMEMORY_BASIC_INFORMATION */
|
|
|
|
TEST_TYPE_SIZE (PMEMORY_BASIC_INFORMATION, 8)
|
|
|
|
TEST_TYPE_ALIGN (PMEMORY_BASIC_INFORMATION, 8)
|
|
|
|
TEST_TARGET_SIZE (PMEMORY_BASIC_INFORMATION, 48)
|
|
|
|
TEST_TARGET_ALIGN(PMEMORY_BASIC_INFORMATION, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PMESSAGE_RESOURCE_BLOCK(void)
|
|
|
|
{
|
|
|
|
/* PMESSAGE_RESOURCE_BLOCK */
|
|
|
|
TEST_TYPE_SIZE (PMESSAGE_RESOURCE_BLOCK, 8)
|
|
|
|
TEST_TYPE_ALIGN (PMESSAGE_RESOURCE_BLOCK, 8)
|
|
|
|
TEST_TARGET_SIZE (PMESSAGE_RESOURCE_BLOCK, 12)
|
|
|
|
TEST_TARGET_ALIGN(PMESSAGE_RESOURCE_BLOCK, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PMESSAGE_RESOURCE_DATA(void)
|
|
|
|
{
|
|
|
|
/* PMESSAGE_RESOURCE_DATA */
|
|
|
|
TEST_TYPE_SIZE (PMESSAGE_RESOURCE_DATA, 8)
|
|
|
|
TEST_TYPE_ALIGN (PMESSAGE_RESOURCE_DATA, 8)
|
|
|
|
TEST_TARGET_SIZE (PMESSAGE_RESOURCE_DATA, 16)
|
|
|
|
TEST_TARGET_ALIGN(PMESSAGE_RESOURCE_DATA, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PMESSAGE_RESOURCE_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* PMESSAGE_RESOURCE_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (PMESSAGE_RESOURCE_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PMESSAGE_RESOURCE_ENTRY, 8)
|
|
|
|
TEST_TARGET_SIZE (PMESSAGE_RESOURCE_ENTRY, 6)
|
|
|
|
TEST_TARGET_ALIGN(PMESSAGE_RESOURCE_ENTRY, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PNT_TIB(void)
|
|
|
|
{
|
|
|
|
/* PNT_TIB */
|
|
|
|
TEST_TYPE_SIZE (PNT_TIB, 8)
|
|
|
|
TEST_TYPE_ALIGN (PNT_TIB, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_POBJECT_TYPE_LIST(void)
|
|
|
|
{
|
|
|
|
/* POBJECT_TYPE_LIST */
|
|
|
|
TEST_TYPE_SIZE (POBJECT_TYPE_LIST, 8)
|
|
|
|
TEST_TYPE_ALIGN (POBJECT_TYPE_LIST, 8)
|
|
|
|
TEST_TARGET_SIZE (POBJECT_TYPE_LIST, 16)
|
|
|
|
TEST_TARGET_ALIGN(POBJECT_TYPE_LIST, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PPRIVILEGE_SET(void)
|
|
|
|
{
|
|
|
|
/* PPRIVILEGE_SET */
|
|
|
|
TEST_TYPE_SIZE (PPRIVILEGE_SET, 8)
|
|
|
|
TEST_TYPE_ALIGN (PPRIVILEGE_SET, 8)
|
|
|
|
TEST_TARGET_SIZE (PPRIVILEGE_SET, 20)
|
|
|
|
TEST_TARGET_ALIGN(PPRIVILEGE_SET, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRIVILEGE_SET(void)
|
|
|
|
{
|
|
|
|
/* PRIVILEGE_SET */
|
|
|
|
TEST_TYPE_SIZE (PRIVILEGE_SET, 20)
|
|
|
|
TEST_TYPE_ALIGN (PRIVILEGE_SET, 4)
|
|
|
|
TEST_FIELD_SIZE (PRIVILEGE_SET, PrivilegeCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (PRIVILEGE_SET, PrivilegeCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(PRIVILEGE_SET, PrivilegeCount, 0)
|
|
|
|
TEST_FIELD_SIZE (PRIVILEGE_SET, Control, 4)
|
|
|
|
TEST_FIELD_ALIGN (PRIVILEGE_SET, Control, 4)
|
|
|
|
TEST_FIELD_OFFSET(PRIVILEGE_SET, Control, 4)
|
|
|
|
TEST_FIELD_SIZE (PRIVILEGE_SET, Privilege, 12)
|
|
|
|
TEST_FIELD_ALIGN (PRIVILEGE_SET, Privilege, 4)
|
|
|
|
TEST_FIELD_OFFSET(PRIVILEGE_SET, Privilege, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRLIST_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* PRLIST_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (PRLIST_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PRLIST_ENTRY, 8)
|
|
|
|
TEST_TARGET_SIZE (PRLIST_ENTRY, 16)
|
|
|
|
TEST_TARGET_ALIGN(PRLIST_ENTRY, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRTL_CRITICAL_SECTION(void)
|
|
|
|
{
|
|
|
|
/* PRTL_CRITICAL_SECTION */
|
|
|
|
TEST_TYPE_SIZE (PRTL_CRITICAL_SECTION, 8)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_CRITICAL_SECTION, 8)
|
|
|
|
TEST_TARGET_SIZE (PRTL_CRITICAL_SECTION, 40)
|
|
|
|
TEST_TARGET_ALIGN(PRTL_CRITICAL_SECTION, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRTL_CRITICAL_SECTION_DEBUG(void)
|
|
|
|
{
|
|
|
|
/* PRTL_CRITICAL_SECTION_DEBUG */
|
|
|
|
TEST_TYPE_SIZE (PRTL_CRITICAL_SECTION_DEBUG, 8)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_CRITICAL_SECTION_DEBUG, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRTL_OSVERSIONINFOEXW(void)
|
|
|
|
{
|
|
|
|
/* PRTL_OSVERSIONINFOEXW */
|
|
|
|
TEST_TYPE_SIZE (PRTL_OSVERSIONINFOEXW, 8)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_OSVERSIONINFOEXW, 8)
|
|
|
|
TEST_TARGET_SIZE (PRTL_OSVERSIONINFOEXW, 284)
|
|
|
|
TEST_TARGET_ALIGN(PRTL_OSVERSIONINFOEXW, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRTL_OSVERSIONINFOW(void)
|
|
|
|
{
|
|
|
|
/* PRTL_OSVERSIONINFOW */
|
|
|
|
TEST_TYPE_SIZE (PRTL_OSVERSIONINFOW, 8)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_OSVERSIONINFOW, 8)
|
|
|
|
TEST_TARGET_SIZE (PRTL_OSVERSIONINFOW, 276)
|
|
|
|
TEST_TARGET_ALIGN(PRTL_OSVERSIONINFOW, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRTL_RESOURCE_DEBUG(void)
|
|
|
|
{
|
|
|
|
/* PRTL_RESOURCE_DEBUG */
|
|
|
|
TEST_TYPE_SIZE (PRTL_RESOURCE_DEBUG, 8)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_RESOURCE_DEBUG, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSECURITY_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* PSECURITY_DESCRIPTOR */
|
|
|
|
TEST_TYPE_SIZE (PSECURITY_DESCRIPTOR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSECURITY_DESCRIPTOR, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSECURITY_QUALITY_OF_SERVICE(void)
|
|
|
|
{
|
|
|
|
/* PSECURITY_QUALITY_OF_SERVICE */
|
|
|
|
TEST_TYPE_SIZE (PSECURITY_QUALITY_OF_SERVICE, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSECURITY_QUALITY_OF_SERVICE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSID(void)
|
|
|
|
{
|
|
|
|
/* PSID */
|
|
|
|
TEST_TYPE_SIZE (PSID, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSID, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSID_IDENTIFIER_AUTHORITY(void)
|
|
|
|
{
|
|
|
|
/* PSID_IDENTIFIER_AUTHORITY */
|
|
|
|
TEST_TYPE_SIZE (PSID_IDENTIFIER_AUTHORITY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSID_IDENTIFIER_AUTHORITY, 8)
|
|
|
|
TEST_TARGET_SIZE (PSID_IDENTIFIER_AUTHORITY, 6)
|
|
|
|
TEST_TARGET_ALIGN(PSID_IDENTIFIER_AUTHORITY, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSINGLE_LIST_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* PSINGLE_LIST_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (PSINGLE_LIST_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSINGLE_LIST_ENTRY, 8)
|
|
|
|
TEST_TARGET_SIZE (PSINGLE_LIST_ENTRY, 8)
|
|
|
|
TEST_TARGET_ALIGN(PSINGLE_LIST_ENTRY, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSTR(void)
|
|
|
|
{
|
|
|
|
/* PSTR */
|
|
|
|
TEST_TYPE_SIZE (PSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSTR, 8)
|
|
|
|
TEST_TARGET_SIZE (PSTR, 1)
|
|
|
|
TEST_TARGET_ALIGN(PSTR, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSYSTEM_ALARM_ACE(void)
|
|
|
|
{
|
|
|
|
/* PSYSTEM_ALARM_ACE */
|
|
|
|
TEST_TYPE_SIZE (PSYSTEM_ALARM_ACE, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSYSTEM_ALARM_ACE, 8)
|
|
|
|
TEST_TARGET_SIZE (PSYSTEM_ALARM_ACE, 12)
|
|
|
|
TEST_TARGET_ALIGN(PSYSTEM_ALARM_ACE, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSYSTEM_AUDIT_ACE(void)
|
|
|
|
{
|
|
|
|
/* PSYSTEM_AUDIT_ACE */
|
|
|
|
TEST_TYPE_SIZE (PSYSTEM_AUDIT_ACE, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSYSTEM_AUDIT_ACE, 8)
|
|
|
|
TEST_TARGET_SIZE (PSYSTEM_AUDIT_ACE, 12)
|
|
|
|
TEST_TARGET_ALIGN(PSYSTEM_AUDIT_ACE, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PTOKEN_GROUPS(void)
|
|
|
|
{
|
|
|
|
/* PTOKEN_GROUPS */
|
|
|
|
TEST_TYPE_SIZE (PTOKEN_GROUPS, 8)
|
|
|
|
TEST_TYPE_ALIGN (PTOKEN_GROUPS, 8)
|
|
|
|
TEST_TARGET_SIZE (PTOKEN_GROUPS, 24)
|
|
|
|
TEST_TARGET_ALIGN(PTOKEN_GROUPS, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PTOKEN_PRIVILEGES(void)
|
|
|
|
{
|
|
|
|
/* PTOKEN_PRIVILEGES */
|
|
|
|
TEST_TYPE_SIZE (PTOKEN_PRIVILEGES, 8)
|
|
|
|
TEST_TYPE_ALIGN (PTOKEN_PRIVILEGES, 8)
|
|
|
|
TEST_TARGET_SIZE (PTOKEN_PRIVILEGES, 16)
|
|
|
|
TEST_TARGET_ALIGN(PTOKEN_PRIVILEGES, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PTOKEN_USER(void)
|
|
|
|
{
|
|
|
|
/* PTOKEN_USER */
|
|
|
|
TEST_TYPE_SIZE (PTOKEN_USER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PTOKEN_USER, 8)
|
|
|
|
TEST_TARGET_SIZE (PTOKEN_USER, 16)
|
|
|
|
TEST_TARGET_ALIGN(PTOKEN_USER, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PTSTR(void)
|
|
|
|
{
|
|
|
|
/* PTSTR */
|
|
|
|
TEST_TYPE_SIZE (PTSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PTSTR, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PULARGE_INTEGER(void)
|
|
|
|
{
|
|
|
|
/* PULARGE_INTEGER */
|
|
|
|
TEST_TYPE_SIZE (PULARGE_INTEGER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PULARGE_INTEGER, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PVECTORED_EXCEPTION_HANDLER(void)
|
|
|
|
{
|
|
|
|
/* PVECTORED_EXCEPTION_HANDLER */
|
|
|
|
TEST_TYPE_SIZE (PVECTORED_EXCEPTION_HANDLER, 8)
|
|
|
|
TEST_TYPE_ALIGN (PVECTORED_EXCEPTION_HANDLER, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PVOID(void)
|
|
|
|
{
|
|
|
|
/* PVOID */
|
|
|
|
TEST_TYPE_SIZE (PVOID, 8)
|
|
|
|
TEST_TYPE_ALIGN (PVOID, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PWCH(void)
|
|
|
|
{
|
|
|
|
/* PWCH */
|
|
|
|
TEST_TYPE_SIZE (PWCH, 8)
|
|
|
|
TEST_TYPE_ALIGN (PWCH, 8)
|
|
|
|
TEST_TARGET_SIZE (PWCH, 2)
|
|
|
|
TEST_TARGET_ALIGN(PWCH, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PWSTR(void)
|
|
|
|
{
|
|
|
|
/* PWSTR */
|
|
|
|
TEST_TYPE_SIZE (PWSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (PWSTR, 8)
|
|
|
|
TEST_TARGET_SIZE (PWSTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(PWSTR, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RTL_CRITICAL_SECTION(void)
|
|
|
|
{
|
|
|
|
/* RTL_CRITICAL_SECTION */
|
|
|
|
TEST_TYPE_SIZE (RTL_CRITICAL_SECTION, 40)
|
|
|
|
TEST_TYPE_ALIGN (RTL_CRITICAL_SECTION, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, DebugInfo, 8)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, DebugInfo, 8)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, DebugInfo, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, LockCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, LockCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, LockCount, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, RecursionCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, RecursionCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, RecursionCount, 12)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, OwningThread, 8)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, OwningThread, 8)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, OwningThread, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, LockSemaphore, 8)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, LockSemaphore, 8)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, LockSemaphore, 24)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, SpinCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, SpinCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, SpinCount, 32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RTL_CRITICAL_SECTION_DEBUG(void)
|
|
|
|
{
|
|
|
|
/* RTL_CRITICAL_SECTION_DEBUG */
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, Type, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, Type, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, Type, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, CriticalSection, 8)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, CriticalSection, 8)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, CriticalSection, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, ProcessLocksList, 16)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, ProcessLocksList, 8)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, ProcessLocksList, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, EntryCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, EntryCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, EntryCount, 32)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, ContentionCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, ContentionCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, ContentionCount, 36)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RTL_OSVERSIONINFOEXW(void)
|
|
|
|
{
|
|
|
|
/* RTL_OSVERSIONINFOEXW */
|
|
|
|
TEST_TYPE_SIZE (RTL_OSVERSIONINFOEXW, 284)
|
|
|
|
TEST_TYPE_ALIGN (RTL_OSVERSIONINFOEXW, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwOSVersionInfoSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwOSVersionInfoSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwOSVersionInfoSize, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwMinorVersion, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwMinorVersion, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwMinorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwBuildNumber, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwBuildNumber, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwBuildNumber, 12)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwPlatformId, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwPlatformId, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwPlatformId, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, szCSDVersion, 256)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, szCSDVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, szCSDVersion, 20)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wServicePackMajor, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wServicePackMajor, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wServicePackMajor, 276)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wServicePackMinor, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wServicePackMinor, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wServicePackMinor, 278)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wSuiteMask, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wSuiteMask, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wSuiteMask, 280)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wProductType, 1)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wProductType, 1)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wProductType, 282)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wReserved, 1)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wReserved, 1)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wReserved, 283)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RTL_OSVERSIONINFOW(void)
|
|
|
|
{
|
|
|
|
/* RTL_OSVERSIONINFOW */
|
|
|
|
TEST_TYPE_SIZE (RTL_OSVERSIONINFOW, 276)
|
|
|
|
TEST_TYPE_ALIGN (RTL_OSVERSIONINFOW, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwOSVersionInfoSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwOSVersionInfoSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwOSVersionInfoSize, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwMinorVersion, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwMinorVersion, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwMinorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwBuildNumber, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwBuildNumber, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwBuildNumber, 12)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwPlatformId, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwPlatformId, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwPlatformId, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, szCSDVersion, 256)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, szCSDVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, szCSDVersion, 20)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RTL_RESOURCE_DEBUG(void)
|
|
|
|
{
|
|
|
|
/* RTL_RESOURCE_DEBUG */
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, Type, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, Type, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, Type, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, CriticalSection, 8)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, CriticalSection, 8)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, CriticalSection, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, ProcessLocksList, 16)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, ProcessLocksList, 8)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, ProcessLocksList, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, EntryCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, EntryCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, EntryCount, 32)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, ContentionCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, ContentionCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, ContentionCount, 36)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SECURITY_CONTEXT_TRACKING_MODE(void)
|
|
|
|
{
|
|
|
|
/* SECURITY_CONTEXT_TRACKING_MODE */
|
|
|
|
TEST_TYPE_SIZE (SECURITY_CONTEXT_TRACKING_MODE, 1)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_CONTEXT_TRACKING_MODE, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SECURITY_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* SECURITY_DESCRIPTOR */
|
|
|
|
TEST_TYPE_SIZE (SECURITY_DESCRIPTOR, 40)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_DESCRIPTOR, 8)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Revision, 1)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Revision, 1)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Revision, 0)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Sbz1, 1)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Sbz1, 1)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Sbz1, 1)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Control, 2)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Control, 2)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Control, 2)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Owner, 8)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Owner, 8)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Owner, 8)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Group, 8)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Group, 8)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Group, 16)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Sacl, 8)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Sacl, 8)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Sacl, 24)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Dacl, 8)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Dacl, 8)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Dacl, 32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SECURITY_DESCRIPTOR_CONTROL(void)
|
|
|
|
{
|
|
|
|
/* SECURITY_DESCRIPTOR_CONTROL */
|
|
|
|
TEST_TYPE_SIZE (SECURITY_DESCRIPTOR_CONTROL, 2)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_DESCRIPTOR_CONTROL, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(SECURITY_DESCRIPTOR_CONTROL)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SECURITY_DESCRIPTOR_RELATIVE(void)
|
|
|
|
{
|
|
|
|
/* SECURITY_DESCRIPTOR_RELATIVE */
|
|
|
|
TEST_TYPE_SIZE (SECURITY_DESCRIPTOR_RELATIVE, 20)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, 4)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Revision, 1)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Revision, 1)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Revision, 0)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Sbz1, 1)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Sbz1, 1)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Sbz1, 1)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Control, 2)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Control, 2)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Control, 2)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Owner, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Owner, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Owner, 4)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Group, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Group, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Group, 8)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Sacl, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Sacl, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Sacl, 12)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Dacl, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Dacl, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Dacl, 16)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SECURITY_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* SECURITY_INFORMATION */
|
|
|
|
TEST_TYPE_SIZE (SECURITY_INFORMATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_INFORMATION, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(SECURITY_INFORMATION)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SECURITY_QUALITY_OF_SERVICE(void)
|
|
|
|
{
|
|
|
|
/* SECURITY_QUALITY_OF_SERVICE */
|
|
|
|
TEST_FIELD_SIZE (SECURITY_QUALITY_OF_SERVICE, Length, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_QUALITY_OF_SERVICE, Length, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_QUALITY_OF_SERVICE, Length, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHORT(void)
|
|
|
|
{
|
|
|
|
/* SHORT */
|
|
|
|
TEST_TYPE_SIZE (SHORT, 2)
|
|
|
|
TEST_TYPE_ALIGN (SHORT, 2)
|
|
|
|
TEST_TYPE_SIGNED(SHORT)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SID(void)
|
|
|
|
{
|
|
|
|
/* SID */
|
|
|
|
TEST_TYPE_SIZE (SID, 12)
|
|
|
|
TEST_TYPE_ALIGN (SID, 4)
|
|
|
|
TEST_FIELD_SIZE (SID, Revision, 1)
|
|
|
|
TEST_FIELD_ALIGN (SID, Revision, 1)
|
|
|
|
TEST_FIELD_OFFSET(SID, Revision, 0)
|
|
|
|
TEST_FIELD_SIZE (SID, SubAuthorityCount, 1)
|
|
|
|
TEST_FIELD_ALIGN (SID, SubAuthorityCount, 1)
|
|
|
|
TEST_FIELD_OFFSET(SID, SubAuthorityCount, 1)
|
|
|
|
TEST_FIELD_SIZE (SID, IdentifierAuthority, 6)
|
|
|
|
TEST_FIELD_ALIGN (SID, IdentifierAuthority, 1)
|
|
|
|
TEST_FIELD_OFFSET(SID, IdentifierAuthority, 2)
|
|
|
|
TEST_FIELD_SIZE (SID, SubAuthority, 4)
|
|
|
|
TEST_FIELD_ALIGN (SID, SubAuthority, 4)
|
|
|
|
TEST_FIELD_OFFSET(SID, SubAuthority, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SID_AND_ATTRIBUTES(void)
|
|
|
|
{
|
|
|
|
/* SID_AND_ATTRIBUTES */
|
|
|
|
TEST_TYPE_SIZE (SID_AND_ATTRIBUTES, 16)
|
|
|
|
TEST_TYPE_ALIGN (SID_AND_ATTRIBUTES, 8)
|
|
|
|
TEST_FIELD_SIZE (SID_AND_ATTRIBUTES, Sid, 8)
|
|
|
|
TEST_FIELD_ALIGN (SID_AND_ATTRIBUTES, Sid, 8)
|
|
|
|
TEST_FIELD_OFFSET(SID_AND_ATTRIBUTES, Sid, 0)
|
|
|
|
TEST_FIELD_SIZE (SID_AND_ATTRIBUTES, Attributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (SID_AND_ATTRIBUTES, Attributes, 4)
|
|
|
|
TEST_FIELD_OFFSET(SID_AND_ATTRIBUTES, Attributes, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SID_IDENTIFIER_AUTHORITY(void)
|
|
|
|
{
|
|
|
|
/* SID_IDENTIFIER_AUTHORITY */
|
|
|
|
TEST_TYPE_SIZE (SID_IDENTIFIER_AUTHORITY, 6)
|
|
|
|
TEST_TYPE_ALIGN (SID_IDENTIFIER_AUTHORITY, 1)
|
|
|
|
TEST_FIELD_SIZE (SID_IDENTIFIER_AUTHORITY, Value, 6)
|
|
|
|
TEST_FIELD_ALIGN (SID_IDENTIFIER_AUTHORITY, Value, 1)
|
|
|
|
TEST_FIELD_OFFSET(SID_IDENTIFIER_AUTHORITY, Value, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SINGLE_LIST_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* SINGLE_LIST_ENTRY */
|
|
|
|
TEST_TYPE_SIZE (SINGLE_LIST_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (SINGLE_LIST_ENTRY, 8)
|
|
|
|
TEST_FIELD_SIZE (SINGLE_LIST_ENTRY, Next, 8)
|
|
|
|
TEST_FIELD_ALIGN (SINGLE_LIST_ENTRY, Next, 8)
|
|
|
|
TEST_FIELD_OFFSET(SINGLE_LIST_ENTRY, Next, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SYSTEM_ALARM_ACE(void)
|
|
|
|
{
|
|
|
|
/* SYSTEM_ALARM_ACE */
|
|
|
|
TEST_TYPE_SIZE (SYSTEM_ALARM_ACE, 12)
|
|
|
|
TEST_TYPE_ALIGN (SYSTEM_ALARM_ACE, 4)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_ALARM_ACE, Header, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_ALARM_ACE, Header, 2)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_ALARM_ACE, Header, 0)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_ALARM_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_ALARM_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_ALARM_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_ALARM_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_ALARM_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_ALARM_ACE, SidStart, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SYSTEM_AUDIT_ACE(void)
|
|
|
|
{
|
|
|
|
/* SYSTEM_AUDIT_ACE */
|
|
|
|
TEST_TYPE_SIZE (SYSTEM_AUDIT_ACE, 12)
|
|
|
|
TEST_TYPE_ALIGN (SYSTEM_AUDIT_ACE, 4)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_AUDIT_ACE, Header, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_AUDIT_ACE, Header, 2)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_AUDIT_ACE, Header, 0)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_AUDIT_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_AUDIT_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_AUDIT_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_AUDIT_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_AUDIT_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_AUDIT_ACE, SidStart, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TCHAR(void)
|
|
|
|
{
|
|
|
|
/* TCHAR */
|
|
|
|
TEST_TYPE_SIZE (TCHAR, 1)
|
|
|
|
TEST_TYPE_ALIGN (TCHAR, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TOKEN_DEFAULT_DACL(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_DEFAULT_DACL */
|
|
|
|
TEST_TYPE_SIZE (TOKEN_DEFAULT_DACL, 8)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_DEFAULT_DACL, 8)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_DEFAULT_DACL, DefaultDacl, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_DEFAULT_DACL, DefaultDacl, 8)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_DEFAULT_DACL, DefaultDacl, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TOKEN_GROUPS(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_GROUPS */
|
|
|
|
TEST_TYPE_SIZE (TOKEN_GROUPS, 24)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_GROUPS, 8)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_GROUPS, GroupCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_GROUPS, GroupCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_GROUPS, GroupCount, 0)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_GROUPS, Groups, 16)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_GROUPS, Groups, 8)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_GROUPS, Groups, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TOKEN_OWNER(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_OWNER */
|
|
|
|
TEST_TYPE_SIZE (TOKEN_OWNER, 8)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_OWNER, 8)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_OWNER, Owner, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_OWNER, Owner, 8)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_OWNER, Owner, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TOKEN_PRIMARY_GROUP(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_PRIMARY_GROUP */
|
|
|
|
TEST_TYPE_SIZE (TOKEN_PRIMARY_GROUP, 8)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_PRIMARY_GROUP, 8)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_PRIMARY_GROUP, PrimaryGroup, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_PRIMARY_GROUP, PrimaryGroup, 8)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_PRIMARY_GROUP, PrimaryGroup, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TOKEN_PRIVILEGES(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_PRIVILEGES */
|
|
|
|
TEST_TYPE_SIZE (TOKEN_PRIVILEGES, 16)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_PRIVILEGES, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_PRIVILEGES, PrivilegeCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_PRIVILEGES, PrivilegeCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_PRIVILEGES, PrivilegeCount, 0)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_PRIVILEGES, Privileges, 12)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_PRIVILEGES, Privileges, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_PRIVILEGES, Privileges, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TOKEN_SOURCE(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_SOURCE */
|
|
|
|
TEST_TYPE_SIZE (TOKEN_SOURCE, 16)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_SOURCE, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_SOURCE, SourceName, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_SOURCE, SourceName, 1)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_SOURCE, SourceName, 0)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_SOURCE, SourceIdentifier, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_SOURCE, SourceIdentifier, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_SOURCE, SourceIdentifier, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TOKEN_STATISTICS(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_STATISTICS (pack 4) */
|
|
|
|
TEST_FIELD_SIZE (TOKEN_STATISTICS, TokenId, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_STATISTICS, TokenId, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_STATISTICS, TokenId, 0)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_STATISTICS, AuthenticationId, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_STATISTICS, AuthenticationId, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_STATISTICS, AuthenticationId, 8)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_STATISTICS, ExpirationTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_STATISTICS, ExpirationTime, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_STATISTICS, ExpirationTime, 16)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TOKEN_USER(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_USER */
|
|
|
|
TEST_TYPE_SIZE (TOKEN_USER, 16)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_USER, 8)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_USER, User, 16)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_USER, User, 8)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_USER, User, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ULARGE_INTEGER(void)
|
|
|
|
{
|
|
|
|
/* ULARGE_INTEGER */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ULONGLONG(void)
|
|
|
|
{
|
|
|
|
/* ULONGLONG */
|
|
|
|
TEST_TYPE_SIZE (ULONGLONG, 8)
|
|
|
|
TEST_TYPE_ALIGN (ULONGLONG, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONGLONG)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_WAITORTIMERCALLBACKFUNC(void)
|
|
|
|
{
|
|
|
|
/* WAITORTIMERCALLBACKFUNC */
|
|
|
|
TEST_TYPE_SIZE (WAITORTIMERCALLBACKFUNC, 8)
|
|
|
|
TEST_TYPE_ALIGN (WAITORTIMERCALLBACKFUNC, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_WCHAR(void)
|
|
|
|
{
|
|
|
|
/* WCHAR */
|
|
|
|
TEST_TYPE_SIZE (WCHAR, 2)
|
|
|
|
TEST_TYPE_ALIGN (WCHAR, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(WCHAR)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ATOM(void)
|
|
|
|
{
|
|
|
|
/* ATOM */
|
|
|
|
TEST_TYPE_SIZE (ATOM, 2)
|
|
|
|
TEST_TYPE_ALIGN (ATOM, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(ATOM)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BOOL(void)
|
|
|
|
{
|
|
|
|
/* BOOL */
|
|
|
|
TEST_TYPE_SIZE (BOOL, 4)
|
|
|
|
TEST_TYPE_ALIGN (BOOL, 4)
|
|
|
|
TEST_TYPE_SIGNED(BOOL)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BYTE(void)
|
|
|
|
{
|
|
|
|
/* BYTE */
|
|
|
|
TEST_TYPE_SIZE (BYTE, 1)
|
|
|
|
TEST_TYPE_ALIGN (BYTE, 1)
|
|
|
|
TEST_TYPE_UNSIGNED(BYTE)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_COLORREF(void)
|
|
|
|
{
|
|
|
|
/* COLORREF */
|
|
|
|
TEST_TYPE_SIZE (COLORREF, 4)
|
|
|
|
TEST_TYPE_ALIGN (COLORREF, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(COLORREF)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DWORD(void)
|
|
|
|
{
|
|
|
|
/* DWORD */
|
|
|
|
TEST_TYPE_SIZE (DWORD, 4)
|
|
|
|
TEST_TYPE_ALIGN (DWORD, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(DWORD)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FARPROC(void)
|
|
|
|
{
|
|
|
|
/* FARPROC */
|
|
|
|
TEST_TYPE_SIZE (FARPROC, 8)
|
|
|
|
TEST_TYPE_ALIGN (FARPROC, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FLOAT(void)
|
|
|
|
{
|
|
|
|
/* FLOAT */
|
|
|
|
TEST_TYPE_SIZE (FLOAT, 4)
|
|
|
|
TEST_TYPE_ALIGN (FLOAT, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_GLOBALHANDLE(void)
|
|
|
|
{
|
|
|
|
/* GLOBALHANDLE */
|
|
|
|
TEST_TYPE_SIZE (GLOBALHANDLE, 8)
|
|
|
|
TEST_TYPE_ALIGN (GLOBALHANDLE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HCURSOR(void)
|
|
|
|
{
|
|
|
|
/* HCURSOR */
|
|
|
|
TEST_TYPE_SIZE (HCURSOR, 8)
|
|
|
|
TEST_TYPE_ALIGN (HCURSOR, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HFILE(void)
|
|
|
|
{
|
|
|
|
/* HFILE */
|
|
|
|
TEST_TYPE_SIZE (HFILE, 4)
|
|
|
|
TEST_TYPE_ALIGN (HFILE, 4)
|
|
|
|
TEST_TYPE_SIGNED(HFILE)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HGDIOBJ(void)
|
|
|
|
{
|
|
|
|
/* HGDIOBJ */
|
|
|
|
TEST_TYPE_SIZE (HGDIOBJ, 8)
|
|
|
|
TEST_TYPE_ALIGN (HGDIOBJ, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HGLOBAL(void)
|
|
|
|
{
|
|
|
|
/* HGLOBAL */
|
|
|
|
TEST_TYPE_SIZE (HGLOBAL, 8)
|
|
|
|
TEST_TYPE_ALIGN (HGLOBAL, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HLOCAL(void)
|
|
|
|
{
|
|
|
|
/* HLOCAL */
|
|
|
|
TEST_TYPE_SIZE (HLOCAL, 8)
|
|
|
|
TEST_TYPE_ALIGN (HLOCAL, 8)
|
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_HMODULE(void)
|
|
|
|
{
|
|
|
|
/* HMODULE */
|
|
|
|
TEST_TYPE_SIZE (HMODULE, 8)
|
|
|
|
TEST_TYPE_ALIGN (HMODULE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_INT(void)
|
|
|
|
{
|
|
|
|
/* INT */
|
|
|
|
TEST_TYPE_SIZE (INT, 4)
|
|
|
|
TEST_TYPE_ALIGN (INT, 4)
|
|
|
|
TEST_TYPE_SIGNED(INT)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LOCALHANDLE(void)
|
|
|
|
{
|
|
|
|
/* LOCALHANDLE */
|
|
|
|
TEST_TYPE_SIZE (LOCALHANDLE, 8)
|
|
|
|
TEST_TYPE_ALIGN (LOCALHANDLE, 8)
|
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_LPARAM(void)
|
|
|
|
{
|
|
|
|
/* LPARAM */
|
|
|
|
TEST_TYPE_SIZE (LPARAM, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPARAM, 8)
|
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_LPCRECT(void)
|
|
|
|
{
|
|
|
|
/* LPCRECT */
|
|
|
|
TEST_TYPE_SIZE (LPCRECT, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCRECT, 8)
|
|
|
|
TEST_TARGET_SIZE (LPCRECT, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPCRECT, 4)
|
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_LPCRECTL(void)
|
|
|
|
{
|
|
|
|
/* LPCRECTL */
|
|
|
|
TEST_TYPE_SIZE (LPCRECTL, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCRECTL, 8)
|
|
|
|
TEST_TARGET_SIZE (LPCRECTL, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPCRECTL, 4)
|
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_LPCVOID(void)
|
|
|
|
{
|
|
|
|
/* LPCVOID */
|
|
|
|
TEST_TYPE_SIZE (LPCVOID, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCVOID, 8)
|
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_LPPOINT(void)
|
|
|
|
{
|
|
|
|
/* LPPOINT */
|
|
|
|
TEST_TYPE_SIZE (LPPOINT, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPPOINT, 8)
|
|
|
|
TEST_TARGET_SIZE (LPPOINT, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPPOINT, 4)
|
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_LPRECT(void)
|
|
|
|
{
|
|
|
|
/* LPRECT */
|
|
|
|
TEST_TYPE_SIZE (LPRECT, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPRECT, 8)
|
|
|
|
TEST_TARGET_SIZE (LPRECT, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPRECT, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPRECTL(void)
|
|
|
|
{
|
|
|
|
/* LPRECTL */
|
|
|
|
TEST_TYPE_SIZE (LPRECTL, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPRECTL, 8)
|
|
|
|
TEST_TARGET_SIZE (LPRECTL, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPRECTL, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSIZE(void)
|
|
|
|
{
|
|
|
|
/* LPSIZE */
|
|
|
|
TEST_TYPE_SIZE (LPSIZE, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSIZE, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSIZE, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPSIZE, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LRESULT(void)
|
|
|
|
{
|
|
|
|
/* LRESULT */
|
|
|
|
TEST_TYPE_SIZE (LRESULT, 8)
|
|
|
|
TEST_TYPE_ALIGN (LRESULT, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_POINT(void)
|
|
|
|
{
|
|
|
|
/* POINT */
|
|
|
|
TEST_TYPE_SIZE (POINT, 8)
|
|
|
|
TEST_TYPE_ALIGN (POINT, 4)
|
|
|
|
TEST_FIELD_SIZE (POINT, x, 4)
|
|
|
|
TEST_FIELD_ALIGN (POINT, x, 4)
|
|
|
|
TEST_FIELD_OFFSET(POINT, x, 0)
|
|
|
|
TEST_FIELD_SIZE (POINT, y, 4)
|
|
|
|
TEST_FIELD_ALIGN (POINT, y, 4)
|
|
|
|
TEST_FIELD_OFFSET(POINT, y, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_POINTL(void)
|
|
|
|
{
|
|
|
|
/* POINTL */
|
|
|
|
TEST_TYPE_SIZE (POINTL, 8)
|
|
|
|
TEST_TYPE_ALIGN (POINTL, 4)
|
|
|
|
TEST_FIELD_SIZE (POINTL, x, 4)
|
|
|
|
TEST_FIELD_ALIGN (POINTL, x, 4)
|
|
|
|
TEST_FIELD_OFFSET(POINTL, x, 0)
|
|
|
|
TEST_FIELD_SIZE (POINTL, y, 4)
|
|
|
|
TEST_FIELD_ALIGN (POINTL, y, 4)
|
|
|
|
TEST_FIELD_OFFSET(POINTL, y, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PPOINT(void)
|
|
|
|
{
|
|
|
|
/* PPOINT */
|
|
|
|
TEST_TYPE_SIZE (PPOINT, 8)
|
|
|
|
TEST_TYPE_ALIGN (PPOINT, 8)
|
|
|
|
TEST_TARGET_SIZE (PPOINT, 8)
|
|
|
|
TEST_TARGET_ALIGN(PPOINT, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PPOINTL(void)
|
|
|
|
{
|
|
|
|
/* PPOINTL */
|
|
|
|
TEST_TYPE_SIZE (PPOINTL, 8)
|
|
|
|
TEST_TYPE_ALIGN (PPOINTL, 8)
|
|
|
|
TEST_TARGET_SIZE (PPOINTL, 8)
|
|
|
|
TEST_TARGET_ALIGN(PPOINTL, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRECT(void)
|
|
|
|
{
|
|
|
|
/* PRECT */
|
|
|
|
TEST_TYPE_SIZE (PRECT, 8)
|
|
|
|
TEST_TYPE_ALIGN (PRECT, 8)
|
|
|
|
TEST_TARGET_SIZE (PRECT, 16)
|
|
|
|
TEST_TARGET_ALIGN(PRECT, 4)
|
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
static void test_pack_PRECTL(void)
|
|
|
|
{
|
|
|
|
/* PRECTL */
|
|
|
|
TEST_TYPE_SIZE (PRECTL, 8)
|
|
|
|
TEST_TYPE_ALIGN (PRECTL, 8)
|
|
|
|
TEST_TARGET_SIZE (PRECTL, 16)
|
|
|
|
TEST_TARGET_ALIGN(PRECTL, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PROC(void)
|
|
|
|
{
|
|
|
|
/* PROC */
|
|
|
|
TEST_TYPE_SIZE (PROC, 8)
|
|
|
|
TEST_TYPE_ALIGN (PROC, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSIZE(void)
|
|
|
|
{
|
|
|
|
/* PSIZE */
|
|
|
|
TEST_TYPE_SIZE (PSIZE, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSIZE, 8)
|
|
|
|
TEST_TARGET_SIZE (PSIZE, 8)
|
|
|
|
TEST_TARGET_ALIGN(PSIZE, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PSZ(void)
|
|
|
|
{
|
|
|
|
/* PSZ */
|
|
|
|
TEST_TYPE_SIZE (PSZ, 8)
|
|
|
|
TEST_TYPE_ALIGN (PSZ, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RECT(void)
|
|
|
|
{
|
|
|
|
/* RECT */
|
|
|
|
TEST_TYPE_SIZE (RECT, 16)
|
|
|
|
TEST_TYPE_ALIGN (RECT, 4)
|
|
|
|
TEST_FIELD_SIZE (RECT, left, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECT, left, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECT, left, 0)
|
|
|
|
TEST_FIELD_SIZE (RECT, top, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECT, top, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECT, top, 4)
|
|
|
|
TEST_FIELD_SIZE (RECT, right, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECT, right, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECT, right, 8)
|
|
|
|
TEST_FIELD_SIZE (RECT, bottom, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECT, bottom, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECT, bottom, 12)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RECTL(void)
|
|
|
|
{
|
|
|
|
/* RECTL */
|
|
|
|
TEST_TYPE_SIZE (RECTL, 16)
|
|
|
|
TEST_TYPE_ALIGN (RECTL, 4)
|
|
|
|
TEST_FIELD_SIZE (RECTL, left, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECTL, left, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECTL, left, 0)
|
|
|
|
TEST_FIELD_SIZE (RECTL, top, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECTL, top, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECTL, top, 4)
|
|
|
|
TEST_FIELD_SIZE (RECTL, right, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECTL, right, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECTL, right, 8)
|
|
|
|
TEST_FIELD_SIZE (RECTL, bottom, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECTL, bottom, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECTL, bottom, 12)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SIZE(void)
|
|
|
|
{
|
|
|
|
/* SIZE */
|
|
|
|
TEST_TYPE_SIZE (SIZE, 8)
|
|
|
|
TEST_TYPE_ALIGN (SIZE, 4)
|
|
|
|
TEST_FIELD_SIZE (SIZE, cx, 4)
|
|
|
|
TEST_FIELD_ALIGN (SIZE, cx, 4)
|
|
|
|
TEST_FIELD_OFFSET(SIZE, cx, 0)
|
|
|
|
TEST_FIELD_SIZE (SIZE, cy, 4)
|
|
|
|
TEST_FIELD_ALIGN (SIZE, cy, 4)
|
|
|
|
TEST_FIELD_OFFSET(SIZE, cy, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SIZEL(void)
|
|
|
|
{
|
|
|
|
/* SIZEL */
|
|
|
|
TEST_TYPE_SIZE (SIZEL, 8)
|
|
|
|
TEST_TYPE_ALIGN (SIZEL, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UCHAR(void)
|
|
|
|
{
|
|
|
|
/* UCHAR */
|
|
|
|
TEST_TYPE_SIZE (UCHAR, 1)
|
|
|
|
TEST_TYPE_ALIGN (UCHAR, 1)
|
|
|
|
TEST_TYPE_UNSIGNED(UCHAR)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UINT(void)
|
|
|
|
{
|
|
|
|
/* UINT */
|
|
|
|
TEST_TYPE_SIZE (UINT, 4)
|
|
|
|
TEST_TYPE_ALIGN (UINT, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ULONG(void)
|
|
|
|
{
|
|
|
|
/* ULONG */
|
|
|
|
TEST_TYPE_SIZE (ULONG, 4)
|
|
|
|
TEST_TYPE_ALIGN (ULONG, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONG)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_USHORT(void)
|
|
|
|
{
|
|
|
|
/* USHORT */
|
|
|
|
TEST_TYPE_SIZE (USHORT, 2)
|
|
|
|
TEST_TYPE_ALIGN (USHORT, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(USHORT)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_WORD(void)
|
|
|
|
{
|
|
|
|
/* WORD */
|
|
|
|
TEST_TYPE_SIZE (WORD, 2)
|
|
|
|
TEST_TYPE_ALIGN (WORD, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(WORD)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_WPARAM(void)
|
|
|
|
{
|
|
|
|
/* WPARAM */
|
|
|
|
TEST_TYPE_SIZE (WPARAM, 8)
|
|
|
|
TEST_TYPE_ALIGN (WPARAM, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
#else /* _WIN64 */
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_DWORD32(void)
|
|
|
|
{
|
|
|
|
/* DWORD32 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (DWORD32, 4)
|
|
|
|
TEST_TYPE_ALIGN (DWORD32, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(DWORD32)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_DWORD64(void)
|
|
|
|
{
|
|
|
|
/* DWORD64 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (DWORD64, 8)
|
|
|
|
TEST_TYPE_ALIGN (DWORD64, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(DWORD64)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_DWORD_PTR(void)
|
2002-10-15 03:53:45 +02:00
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* DWORD_PTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (DWORD_PTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (DWORD_PTR, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HALF_PTR(void)
|
|
|
|
{
|
|
|
|
/* HALF_PTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HALF_PTR, 2)
|
|
|
|
TEST_TYPE_ALIGN (HALF_PTR, 2)
|
|
|
|
TEST_TYPE_SIGNED(HALF_PTR)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_INT16(void)
|
|
|
|
{
|
|
|
|
/* INT16 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (INT16, 2)
|
|
|
|
TEST_TYPE_ALIGN (INT16, 2)
|
|
|
|
TEST_TYPE_SIGNED(INT16)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_INT32(void)
|
|
|
|
{
|
|
|
|
/* INT32 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (INT32, 4)
|
|
|
|
TEST_TYPE_ALIGN (INT32, 4)
|
|
|
|
TEST_TYPE_SIGNED(INT32)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_INT64(void)
|
|
|
|
{
|
|
|
|
/* INT64 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (INT64, 8)
|
|
|
|
TEST_TYPE_ALIGN (INT64, 8)
|
|
|
|
TEST_TYPE_SIGNED(INT64)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_INT8(void)
|
|
|
|
{
|
|
|
|
/* INT8 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (INT8, 1)
|
|
|
|
TEST_TYPE_ALIGN (INT8, 1)
|
|
|
|
TEST_TYPE_SIGNED(INT8)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_INT_PTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* INT_PTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (INT_PTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (INT_PTR, 4)
|
|
|
|
TEST_TYPE_SIGNED(INT_PTR)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LONG32(void)
|
|
|
|
{
|
|
|
|
/* LONG32 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LONG32, 4)
|
|
|
|
TEST_TYPE_ALIGN (LONG32, 4)
|
|
|
|
TEST_TYPE_SIGNED(LONG32)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_LONG64(void)
|
|
|
|
{
|
|
|
|
/* LONG64 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LONG64, 8)
|
|
|
|
TEST_TYPE_ALIGN (LONG64, 8)
|
|
|
|
TEST_TYPE_SIGNED(LONG64)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LONG_PTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LONG_PTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LONG_PTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (LONG_PTR, 4)
|
|
|
|
TEST_TYPE_SIGNED(LONG_PTR)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SIZE_T(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* SIZE_T */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SIZE_T, 4)
|
|
|
|
TEST_TYPE_ALIGN (SIZE_T, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SSIZE_T(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* SSIZE_T */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SSIZE_T, 4)
|
|
|
|
TEST_TYPE_ALIGN (SSIZE_T, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_UHALF_PTR(void)
|
|
|
|
{
|
|
|
|
/* UHALF_PTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (UHALF_PTR, 2)
|
|
|
|
TEST_TYPE_ALIGN (UHALF_PTR, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(UHALF_PTR)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_UINT16(void)
|
|
|
|
{
|
|
|
|
/* UINT16 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (UINT16, 2)
|
|
|
|
TEST_TYPE_ALIGN (UINT16, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT16)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_UINT32(void)
|
|
|
|
{
|
|
|
|
/* UINT32 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (UINT32, 4)
|
|
|
|
TEST_TYPE_ALIGN (UINT32, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT32)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_UINT64(void)
|
|
|
|
{
|
|
|
|
/* UINT64 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (UINT64, 8)
|
|
|
|
TEST_TYPE_ALIGN (UINT64, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT64)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UINT8(void)
|
|
|
|
{
|
|
|
|
/* UINT8 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (UINT8, 1)
|
|
|
|
TEST_TYPE_ALIGN (UINT8, 1)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT8)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_UINT_PTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* UINT_PTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (UINT_PTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (UINT_PTR, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT_PTR)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ULONG32(void)
|
|
|
|
{
|
|
|
|
/* ULONG32 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ULONG32, 4)
|
|
|
|
TEST_TYPE_ALIGN (ULONG32, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONG32)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_ULONG64(void)
|
|
|
|
{
|
|
|
|
/* ULONG64 */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ULONG64, 8)
|
|
|
|
TEST_TYPE_ALIGN (ULONG64, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONG64)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_ULONG_PTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* ULONG_PTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ULONG_PTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (ULONG_PTR, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONG_PTR)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_ACCESS_ALLOWED_ACE(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* ACCESS_ALLOWED_ACE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ACCESS_ALLOWED_ACE, 12)
|
|
|
|
TEST_TYPE_ALIGN (ACCESS_ALLOWED_ACE, 4)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_ALLOWED_ACE, Header, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_ALLOWED_ACE, Header, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_ALLOWED_ACE, Header, 0)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_ALLOWED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_ALLOWED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_ALLOWED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_ALLOWED_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_ALLOWED_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_ALLOWED_ACE, SidStart, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_ACCESS_DENIED_ACE(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* ACCESS_DENIED_ACE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ACCESS_DENIED_ACE, 12)
|
|
|
|
TEST_TYPE_ALIGN (ACCESS_DENIED_ACE, 4)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_DENIED_ACE, Header, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_DENIED_ACE, Header, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_DENIED_ACE, Header, 0)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_DENIED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_DENIED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_DENIED_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_SIZE (ACCESS_DENIED_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACCESS_DENIED_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACCESS_DENIED_ACE, SidStart, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_ACCESS_MASK(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* ACCESS_MASK */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ACCESS_MASK, 4)
|
|
|
|
TEST_TYPE_ALIGN (ACCESS_MASK, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(ACCESS_MASK)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_ACE_HEADER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* ACE_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ACE_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (ACE_HEADER, 2)
|
|
|
|
TEST_FIELD_SIZE (ACE_HEADER, AceType, 1)
|
|
|
|
TEST_FIELD_ALIGN (ACE_HEADER, AceType, 1)
|
|
|
|
TEST_FIELD_OFFSET(ACE_HEADER, AceType, 0)
|
|
|
|
TEST_FIELD_SIZE (ACE_HEADER, AceFlags, 1)
|
|
|
|
TEST_FIELD_ALIGN (ACE_HEADER, AceFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(ACE_HEADER, AceFlags, 1)
|
|
|
|
TEST_FIELD_SIZE (ACE_HEADER, AceSize, 2)
|
|
|
|
TEST_FIELD_ALIGN (ACE_HEADER, AceSize, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACE_HEADER, AceSize, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_ACL(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* ACL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ACL, 8)
|
|
|
|
TEST_TYPE_ALIGN (ACL, 2)
|
|
|
|
TEST_FIELD_SIZE (ACL, AclRevision, 1)
|
|
|
|
TEST_FIELD_ALIGN (ACL, AclRevision, 1)
|
|
|
|
TEST_FIELD_OFFSET(ACL, AclRevision, 0)
|
|
|
|
TEST_FIELD_SIZE (ACL, Sbz1, 1)
|
|
|
|
TEST_FIELD_ALIGN (ACL, Sbz1, 1)
|
|
|
|
TEST_FIELD_OFFSET(ACL, Sbz1, 1)
|
|
|
|
TEST_FIELD_SIZE (ACL, AclSize, 2)
|
|
|
|
TEST_FIELD_ALIGN (ACL, AclSize, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACL, AclSize, 2)
|
|
|
|
TEST_FIELD_SIZE (ACL, AceCount, 2)
|
|
|
|
TEST_FIELD_ALIGN (ACL, AceCount, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACL, AceCount, 4)
|
|
|
|
TEST_FIELD_SIZE (ACL, Sbz2, 2)
|
|
|
|
TEST_FIELD_ALIGN (ACL, Sbz2, 2)
|
|
|
|
TEST_FIELD_OFFSET(ACL, Sbz2, 6)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_ACL_REVISION_INFORMATION(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* ACL_REVISION_INFORMATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ACL_REVISION_INFORMATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (ACL_REVISION_INFORMATION, 4)
|
|
|
|
TEST_FIELD_SIZE (ACL_REVISION_INFORMATION, AclRevision, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACL_REVISION_INFORMATION, AclRevision, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACL_REVISION_INFORMATION, AclRevision, 0)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_ACL_SIZE_INFORMATION(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* ACL_SIZE_INFORMATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ACL_SIZE_INFORMATION, 12)
|
|
|
|
TEST_TYPE_ALIGN (ACL_SIZE_INFORMATION, 4)
|
|
|
|
TEST_FIELD_SIZE (ACL_SIZE_INFORMATION, AceCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACL_SIZE_INFORMATION, AceCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACL_SIZE_INFORMATION, AceCount, 0)
|
|
|
|
TEST_FIELD_SIZE (ACL_SIZE_INFORMATION, AclBytesInUse, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACL_SIZE_INFORMATION, AclBytesInUse, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACL_SIZE_INFORMATION, AclBytesInUse, 4)
|
|
|
|
TEST_FIELD_SIZE (ACL_SIZE_INFORMATION, AclBytesFree, 4)
|
|
|
|
TEST_FIELD_ALIGN (ACL_SIZE_INFORMATION, AclBytesFree, 4)
|
|
|
|
TEST_FIELD_OFFSET(ACL_SIZE_INFORMATION, AclBytesFree, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_BOOLEAN(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2004-05-04 02:41:11 +02:00
|
|
|
/* BOOLEAN */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (BOOLEAN, 1)
|
|
|
|
TEST_TYPE_ALIGN (BOOLEAN, 1)
|
|
|
|
TEST_TYPE_UNSIGNED(BOOLEAN)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_CCHAR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* CCHAR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (CCHAR, 1)
|
|
|
|
TEST_TYPE_ALIGN (CCHAR, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_CHAR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* CHAR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (CHAR, 1)
|
|
|
|
TEST_TYPE_ALIGN (CHAR, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_DWORDLONG(void)
|
|
|
|
{
|
|
|
|
/* DWORDLONG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (DWORDLONG, 8)
|
|
|
|
TEST_TYPE_ALIGN (DWORDLONG, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(DWORDLONG)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_EXCEPTION_POINTERS(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* EXCEPTION_POINTERS */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (EXCEPTION_POINTERS, 8)
|
|
|
|
TEST_TYPE_ALIGN (EXCEPTION_POINTERS, 4)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_POINTERS, ExceptionRecord, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_POINTERS, ExceptionRecord, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_POINTERS, ExceptionRecord, 0)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_POINTERS, ContextRecord, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_POINTERS, ContextRecord, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_POINTERS, ContextRecord, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_EXCEPTION_RECORD(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* EXCEPTION_RECORD */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (EXCEPTION_RECORD, 80)
|
|
|
|
TEST_TYPE_ALIGN (EXCEPTION_RECORD, 4)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionCode, 0)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionFlags, 4)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionRecord, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionRecord, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionRecord, 8)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionAddress, 12)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, NumberParameters, 4)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, NumberParameters, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, NumberParameters, 16)
|
|
|
|
TEST_FIELD_SIZE (EXCEPTION_RECORD, ExceptionInformation, 60)
|
|
|
|
TEST_FIELD_ALIGN (EXCEPTION_RECORD, ExceptionInformation, 4)
|
|
|
|
TEST_FIELD_OFFSET(EXCEPTION_RECORD, ExceptionInformation, 20)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_EXECUTION_STATE(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2004-05-04 02:41:11 +02:00
|
|
|
/* EXECUTION_STATE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (EXECUTION_STATE, 4)
|
|
|
|
TEST_TYPE_ALIGN (EXECUTION_STATE, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(EXECUTION_STATE)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-23 00:28:53 +02:00
|
|
|
static void test_pack_FPO_DATA(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* FPO_DATA */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (FPO_DATA, 16)
|
|
|
|
TEST_TYPE_ALIGN (FPO_DATA, 4)
|
|
|
|
TEST_FIELD_SIZE (FPO_DATA, ulOffStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (FPO_DATA, ulOffStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(FPO_DATA, ulOffStart, 0)
|
|
|
|
TEST_FIELD_SIZE (FPO_DATA, cbProcSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (FPO_DATA, cbProcSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(FPO_DATA, cbProcSize, 4)
|
|
|
|
TEST_FIELD_SIZE (FPO_DATA, cdwLocals, 4)
|
|
|
|
TEST_FIELD_ALIGN (FPO_DATA, cdwLocals, 4)
|
|
|
|
TEST_FIELD_OFFSET(FPO_DATA, cdwLocals, 8)
|
|
|
|
TEST_FIELD_SIZE (FPO_DATA, cdwParams, 2)
|
|
|
|
TEST_FIELD_ALIGN (FPO_DATA, cdwParams, 2)
|
|
|
|
TEST_FIELD_OFFSET(FPO_DATA, cdwParams, 12)
|
2004-08-23 00:28:53 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_GENERIC_MAPPING(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* GENERIC_MAPPING */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (GENERIC_MAPPING, 16)
|
|
|
|
TEST_TYPE_ALIGN (GENERIC_MAPPING, 4)
|
|
|
|
TEST_FIELD_SIZE (GENERIC_MAPPING, GenericRead, 4)
|
|
|
|
TEST_FIELD_ALIGN (GENERIC_MAPPING, GenericRead, 4)
|
|
|
|
TEST_FIELD_OFFSET(GENERIC_MAPPING, GenericRead, 0)
|
|
|
|
TEST_FIELD_SIZE (GENERIC_MAPPING, GenericWrite, 4)
|
|
|
|
TEST_FIELD_ALIGN (GENERIC_MAPPING, GenericWrite, 4)
|
|
|
|
TEST_FIELD_OFFSET(GENERIC_MAPPING, GenericWrite, 4)
|
|
|
|
TEST_FIELD_SIZE (GENERIC_MAPPING, GenericExecute, 4)
|
|
|
|
TEST_FIELD_ALIGN (GENERIC_MAPPING, GenericExecute, 4)
|
|
|
|
TEST_FIELD_OFFSET(GENERIC_MAPPING, GenericExecute, 8)
|
|
|
|
TEST_FIELD_SIZE (GENERIC_MAPPING, GenericAll, 4)
|
|
|
|
TEST_FIELD_ALIGN (GENERIC_MAPPING, GenericAll, 4)
|
|
|
|
TEST_FIELD_OFFSET(GENERIC_MAPPING, GenericAll, 12)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_HANDLE(void)
|
|
|
|
{
|
|
|
|
/* HANDLE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HANDLE, 4)
|
|
|
|
TEST_TYPE_ALIGN (HANDLE, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_HRESULT(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* HRESULT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HRESULT, 4)
|
|
|
|
TEST_TYPE_ALIGN (HRESULT, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_ARCHIVE_MEMBER_HEADER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_ARCHIVE_MEMBER_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, 60)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, 1)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, Name, 16)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, Name, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, Name, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, Date, 12)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, Date, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, Date, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, UserID, 6)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, UserID, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, UserID, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, GroupID, 6)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, GroupID, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, GroupID, 34)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, Mode, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, Mode, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, Mode, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, Size, 10)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, Size, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, Size, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_ARCHIVE_MEMBER_HEADER, EndHeader, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_ARCHIVE_MEMBER_HEADER, EndHeader, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_ARCHIVE_MEMBER_HEADER, EndHeader, 58)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_AUX_SYMBOL(void)
|
|
|
|
{
|
2002-10-15 03:53:45 +02:00
|
|
|
/* IMAGE_AUX_SYMBOL (pack 2) */
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_BASE_RELOCATION(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_BASE_RELOCATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_BASE_RELOCATION, 8)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_BASE_RELOCATION, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BASE_RELOCATION, VirtualAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BASE_RELOCATION, VirtualAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BASE_RELOCATION, VirtualAddress, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BASE_RELOCATION, SizeOfBlock, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BASE_RELOCATION, SizeOfBlock, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BASE_RELOCATION, SizeOfBlock, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_BOUND_FORWARDER_REF(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_BOUND_FORWARDER_REF */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_BOUND_FORWARDER_REF, 8)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_BOUND_FORWARDER_REF, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_FORWARDER_REF, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_FORWARDER_REF, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_FORWARDER_REF, TimeDateStamp, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_FORWARDER_REF, OffsetModuleName, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_FORWARDER_REF, OffsetModuleName, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_FORWARDER_REF, OffsetModuleName, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_FORWARDER_REF, Reserved, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_FORWARDER_REF, Reserved, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_FORWARDER_REF, Reserved, 6)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_BOUND_IMPORT_DESCRIPTOR(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_BOUND_IMPORT_DESCRIPTOR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_BOUND_IMPORT_DESCRIPTOR, 8)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_BOUND_IMPORT_DESCRIPTOR, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_IMPORT_DESCRIPTOR, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_IMPORT_DESCRIPTOR, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_IMPORT_DESCRIPTOR, TimeDateStamp, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_IMPORT_DESCRIPTOR, OffsetModuleName, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_IMPORT_DESCRIPTOR, OffsetModuleName, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_IMPORT_DESCRIPTOR, OffsetModuleName, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_BOUND_IMPORT_DESCRIPTOR, NumberOfModuleForwarderRefs, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_BOUND_IMPORT_DESCRIPTOR, NumberOfModuleForwarderRefs, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_BOUND_IMPORT_DESCRIPTOR, NumberOfModuleForwarderRefs, 6)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_COFF_SYMBOLS_HEADER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_COFF_SYMBOLS_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_COFF_SYMBOLS_HEADER, 32)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, NumberOfSymbols, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, NumberOfSymbols, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, NumberOfSymbols, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstSymbol, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstSymbol, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstSymbol, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, NumberOfLinenumbers, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, NumberOfLinenumbers, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, NumberOfLinenumbers, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstLinenumber, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstLinenumber, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, LvaToFirstLinenumber, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfCode, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfCode, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, RvaToFirstByteOfData, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_COFF_SYMBOLS_HEADER, RvaToLastByteOfData, 28)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_DATA_DIRECTORY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_DATA_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_DATA_DIRECTORY, 8)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_DATA_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DATA_DIRECTORY, VirtualAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DATA_DIRECTORY, VirtualAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DATA_DIRECTORY, VirtualAddress, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DATA_DIRECTORY, Size, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DATA_DIRECTORY, Size, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DATA_DIRECTORY, Size, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_DEBUG_DIRECTORY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_DEBUG_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_DEBUG_DIRECTORY, 28)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_DEBUG_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, Characteristics, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, MajorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, MinorVersion, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, Type, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, Type, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, Type, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, SizeOfData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, SizeOfData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, SizeOfData, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, AddressOfRawData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, AddressOfRawData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, AddressOfRawData, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_DIRECTORY, PointerToRawData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_DIRECTORY, PointerToRawData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_DIRECTORY, PointerToRawData, 24)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_DEBUG_MISC(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_DEBUG_MISC */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_DEBUG_MISC, 16)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_DEBUG_MISC, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, DataType, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, DataType, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, DataType, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, Length, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, Length, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, Length, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, Unicode, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, Unicode, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, Unicode, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, Reserved, 3)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, Reserved, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, Reserved, 9)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DEBUG_MISC, Data, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DEBUG_MISC, Data, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DEBUG_MISC, Data, 12)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_DOS_HEADER(void)
|
|
|
|
{
|
2002-10-23 20:45:15 +02:00
|
|
|
/* IMAGE_DOS_HEADER (pack 2) */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_DOS_HEADER, 64)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_DOS_HEADER, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_cblp, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_cblp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_cblp, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_cp, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_cp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_cp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_crlc, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_crlc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_crlc, 6)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_cparhdr, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_cparhdr, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_cparhdr, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_minalloc, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_minalloc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_minalloc, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_maxalloc, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_maxalloc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_maxalloc, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_ss, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_ss, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_ss, 14)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_sp, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_sp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_sp, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_csum, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_csum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_csum, 18)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_ip, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_ip, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_ip, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_cs, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_cs, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_cs, 22)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_lfarlc, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_lfarlc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_lfarlc, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_ovno, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_ovno, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_ovno, 26)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_res, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_res, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_res, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_oemid, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_oemid, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_oemid, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_oeminfo, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_oeminfo, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_oeminfo, 38)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_res2, 20)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_res2, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_res2, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_DOS_HEADER, e_lfanew, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_DOS_HEADER, e_lfanew, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_DOS_HEADER, e_lfanew, 60)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_EXPORT_DIRECTORY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_EXPORT_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_EXPORT_DIRECTORY, 40)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_EXPORT_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, Characteristics, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, MajorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, MinorVersion, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, Name, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, Name, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, Name, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, Base, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, Base, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, Base, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, NumberOfFunctions, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, NumberOfFunctions, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, NumberOfFunctions, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, NumberOfNames, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, NumberOfNames, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, NumberOfNames, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, AddressOfFunctions, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, AddressOfFunctions, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, AddressOfFunctions, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, AddressOfNames, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, AddressOfNames, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, AddressOfNames, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_EXPORT_DIRECTORY, AddressOfNameOrdinals, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_EXPORT_DIRECTORY, AddressOfNameOrdinals, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_EXPORT_DIRECTORY, AddressOfNameOrdinals, 36)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_FILE_HEADER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_FILE_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_FILE_HEADER, 20)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_FILE_HEADER, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, Machine, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, Machine, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, Machine, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, NumberOfSections, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, NumberOfSections, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, NumberOfSections, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, PointerToSymbolTable, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, PointerToSymbolTable, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, PointerToSymbolTable, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, NumberOfSymbols, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, NumberOfSymbols, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, NumberOfSymbols, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, SizeOfOptionalHeader, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, SizeOfOptionalHeader, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, SizeOfOptionalHeader, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FILE_HEADER, Characteristics, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FILE_HEADER, Characteristics, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FILE_HEADER, Characteristics, 18)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_FUNCTION_ENTRY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_FUNCTION_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_FUNCTION_ENTRY, 12)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_FUNCTION_ENTRY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FUNCTION_ENTRY, StartingAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FUNCTION_ENTRY, StartingAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FUNCTION_ENTRY, StartingAddress, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FUNCTION_ENTRY, EndingAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FUNCTION_ENTRY, EndingAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FUNCTION_ENTRY, EndingAddress, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_FUNCTION_ENTRY, EndOfPrologue, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_FUNCTION_ENTRY, EndOfPrologue, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_FUNCTION_ENTRY, EndOfPrologue, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_IMPORT_BY_NAME(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_IMPORT_BY_NAME */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_IMPORT_BY_NAME, 4)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_IMPORT_BY_NAME, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_IMPORT_BY_NAME, Hint, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_IMPORT_BY_NAME, Hint, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_IMPORT_BY_NAME, Hint, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_IMPORT_BY_NAME, Name, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_IMPORT_BY_NAME, Name, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_IMPORT_BY_NAME, Name, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_IMAGE_IMPORT_DESCRIPTOR(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_IMPORT_DESCRIPTOR */
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_IMAGE_LINENUMBER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_LINENUMBER (pack 2) */
|
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_LOAD_CONFIG_DIRECTORY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_LOAD_CONFIG_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, 72)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, Size, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, Size, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, Size, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, MajorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, MinorVersion, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsClear, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsClear, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsClear, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsSet, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsSet, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, GlobalFlagsSet, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, CriticalSectionDefaultTimeout, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, CriticalSectionDefaultTimeout, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, CriticalSectionDefaultTimeout, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitFreeBlockThreshold, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitFreeBlockThreshold, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitFreeBlockThreshold, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitTotalFreeThreshold, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitTotalFreeThreshold, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, DeCommitTotalFreeThreshold, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, LockPrefixTable, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, LockPrefixTable, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, LockPrefixTable, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, MaximumAllocationSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, MaximumAllocationSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, MaximumAllocationSize, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, VirtualMemoryThreshold, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, VirtualMemoryThreshold, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, VirtualMemoryThreshold, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, ProcessHeapFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, ProcessHeapFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, ProcessHeapFlags, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, ProcessAffinityMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, ProcessAffinityMask, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, ProcessAffinityMask, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, CSDVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, CSDVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, CSDVersion, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, Reserved1, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, Reserved1, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, Reserved1, 54)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, EditList, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, EditList, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, EditList, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, SecurityCookie, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, SecurityCookie, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, SecurityCookie, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerTable, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerTable, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerTable, 64)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_LOAD_CONFIG_DIRECTORY, SEHandlerCount, 68)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_NT_HEADERS(void)
|
|
|
|
{
|
2006-10-10 20:35:46 +02:00
|
|
|
/* IMAGE_NT_HEADERS */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_NT_HEADERS, 248)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_NT_HEADERS, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2010-04-07 17:25:19 +02:00
|
|
|
static void test_pack_IMAGE_NT_HEADERS32(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_NT_HEADERS32 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_NT_HEADERS32, 248)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_NT_HEADERS32, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS32, Signature, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS32, Signature, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS32, Signature, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS32, FileHeader, 20)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS32, FileHeader, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS32, FileHeader, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS32, OptionalHeader, 224)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS32, OptionalHeader, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS32, OptionalHeader, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_NT_HEADERS64(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_NT_HEADERS64 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_NT_HEADERS64, 264)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_NT_HEADERS64, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS64, Signature, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS64, Signature, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS64, Signature, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS64, FileHeader, 20)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS64, FileHeader, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS64, FileHeader, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_NT_HEADERS64, OptionalHeader, 240)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_NT_HEADERS64, OptionalHeader, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_NT_HEADERS64, OptionalHeader, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_OPTIONAL_HEADER(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_OPTIONAL_HEADER */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_OPTIONAL_HEADER, 224)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_OPTIONAL_HEADER, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_OPTIONAL_HEADER32(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_OPTIONAL_HEADER32 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_OPTIONAL_HEADER32, 224)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_OPTIONAL_HEADER32, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, Magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, Magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, Magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MajorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MajorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MajorLinkerVersion, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MinorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MinorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MinorLinkerVersion, 3)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfInitializedData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfInitializedData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfInitializedData, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfUninitializedData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfUninitializedData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfUninitializedData, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, AddressOfEntryPoint, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, AddressOfEntryPoint, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, AddressOfEntryPoint, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, BaseOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, BaseOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, BaseOfCode, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, BaseOfData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, BaseOfData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, BaseOfData, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, ImageBase, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, ImageBase, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, ImageBase, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SectionAlignment, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, FileAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, FileAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, FileAlignment, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MajorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MajorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MajorOperatingSystemVersion, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MinorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MinorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MinorOperatingSystemVersion, 42)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MajorImageVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MajorImageVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MajorImageVersion, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MinorImageVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MinorImageVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MinorImageVersion, 46)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MajorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MajorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MajorSubsystemVersion, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, MinorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, MinorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, MinorSubsystemVersion, 50)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, Win32VersionValue, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, Win32VersionValue, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, Win32VersionValue, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfImage, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfHeaders, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfHeaders, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfHeaders, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, CheckSum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, CheckSum, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, CheckSum, 64)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, Subsystem, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, Subsystem, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, Subsystem, 68)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, DllCharacteristics, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, DllCharacteristics, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, DllCharacteristics, 70)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfStackReserve, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfStackReserve, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfStackReserve, 72)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfStackCommit, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfStackCommit, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfStackCommit, 76)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfHeapReserve, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfHeapReserve, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfHeapReserve, 80)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, SizeOfHeapCommit, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, SizeOfHeapCommit, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, SizeOfHeapCommit, 84)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, LoaderFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, LoaderFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, LoaderFlags, 88)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, NumberOfRvaAndSizes, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, NumberOfRvaAndSizes, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, NumberOfRvaAndSizes, 92)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER32, DataDirectory, 128)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER32, DataDirectory, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER32, DataDirectory, 96)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_OPTIONAL_HEADER64(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_OPTIONAL_HEADER64 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_OPTIONAL_HEADER64, 240)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_OPTIONAL_HEADER64, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, Magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, Magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, Magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MajorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MajorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MajorLinkerVersion, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MinorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MinorLinkerVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MinorLinkerVersion, 3)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfCode, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfInitializedData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfInitializedData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfInitializedData, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfUninitializedData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfUninitializedData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfUninitializedData, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, AddressOfEntryPoint, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, AddressOfEntryPoint, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, AddressOfEntryPoint, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, BaseOfCode, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, BaseOfCode, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, BaseOfCode, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, ImageBase, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, ImageBase, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, ImageBase, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SectionAlignment, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, FileAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, FileAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, FileAlignment, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MajorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MajorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MajorOperatingSystemVersion, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MinorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MinorOperatingSystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MinorOperatingSystemVersion, 42)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MajorImageVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MajorImageVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MajorImageVersion, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MinorImageVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MinorImageVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MinorImageVersion, 46)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MajorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MajorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MajorSubsystemVersion, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, MinorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, MinorSubsystemVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, MinorSubsystemVersion, 50)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, Win32VersionValue, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, Win32VersionValue, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, Win32VersionValue, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfImage, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfHeaders, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfHeaders, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfHeaders, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, CheckSum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, CheckSum, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, CheckSum, 64)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, Subsystem, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, Subsystem, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, Subsystem, 68)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, DllCharacteristics, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, DllCharacteristics, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, DllCharacteristics, 70)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfStackReserve, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfStackReserve, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfStackReserve, 72)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfStackCommit, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfStackCommit, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfStackCommit, 80)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfHeapReserve, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfHeapReserve, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfHeapReserve, 88)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, SizeOfHeapCommit, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, SizeOfHeapCommit, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, SizeOfHeapCommit, 96)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, LoaderFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, LoaderFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, LoaderFlags, 104)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, NumberOfRvaAndSizes, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, NumberOfRvaAndSizes, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, NumberOfRvaAndSizes, 108)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OPTIONAL_HEADER64, DataDirectory, 128)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OPTIONAL_HEADER64, DataDirectory, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OPTIONAL_HEADER64, DataDirectory, 112)
|
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_OS2_HEADER(void)
|
|
|
|
{
|
2002-10-23 20:45:15 +02:00
|
|
|
/* IMAGE_OS2_HEADER (pack 2) */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_OS2_HEADER, 64)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_OS2_HEADER, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_ver, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_ver, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_ver, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_rev, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_rev, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_rev, 3)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_enttab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_enttab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_enttab, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cbenttab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cbenttab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cbenttab, 6)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_crc, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_crc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_crc, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_flags, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_flags, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_flags, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_autodata, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_autodata, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_autodata, 14)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_heap, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_heap, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_heap, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_stack, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_stack, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_stack, 18)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_csip, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_csip, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_csip, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_sssp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_sssp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_sssp, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cseg, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cseg, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cseg, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cmod, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cmod, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cmod, 30)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cbnrestab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cbnrestab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cbnrestab, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_segtab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_segtab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_segtab, 34)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_rsrctab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_rsrctab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_rsrctab, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_restab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_restab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_restab, 38)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_modtab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_modtab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_modtab, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_imptab, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_imptab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_imptab, 42)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_nrestab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_nrestab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_nrestab, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cmovent, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cmovent, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cmovent, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_align, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_align, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_align, 50)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_cres, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_cres, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_cres, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_exetyp, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_exetyp, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_exetyp, 54)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_flagsothers, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_flagsothers, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_flagsothers, 55)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_pretthunks, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_pretthunks, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_pretthunks, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_psegrefbytes, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_psegrefbytes, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_psegrefbytes, 58)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_swaparea, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_swaparea, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_swaparea, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_OS2_HEADER, ne_expver, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_OS2_HEADER, ne_expver, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_OS2_HEADER, ne_expver, 62)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_IMAGE_RELOCATION(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_RELOCATION (pack 2) */
|
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_RESOURCE_DATA_ENTRY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_RESOURCE_DATA_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_RESOURCE_DATA_ENTRY, 16)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DATA_ENTRY, OffsetToData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, OffsetToData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DATA_ENTRY, OffsetToData, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DATA_ENTRY, Size, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, Size, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DATA_ENTRY, Size, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DATA_ENTRY, CodePage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, CodePage, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DATA_ENTRY, CodePage, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DATA_ENTRY, Reserved, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DATA_ENTRY, Reserved, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DATA_ENTRY, Reserved, 12)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_RESOURCE_DIRECTORY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_RESOURCE_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_RESOURCE_DIRECTORY, 16)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_RESOURCE_DIRECTORY, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, Characteristics, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, MajorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, MajorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, MinorVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, MinorVersion, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, NumberOfNamedEntries, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, NumberOfNamedEntries, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, NumberOfNamedEntries, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY, NumberOfIdEntries, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY, NumberOfIdEntries, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY, NumberOfIdEntries, 14)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_IMAGE_RESOURCE_DIRECTORY_ENTRY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_RESOURCE_DIRECTORY_ENTRY */
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_RESOURCE_DIRECTORY_STRING(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_RESOURCE_DIRECTORY_STRING */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_RESOURCE_DIRECTORY_STRING, 4)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_RESOURCE_DIRECTORY_STRING, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY_STRING, Length, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY_STRING, Length, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY_STRING, Length, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIRECTORY_STRING, NameString, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIRECTORY_STRING, NameString, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIRECTORY_STRING, NameString, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_RESOURCE_DIR_STRING_U(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_RESOURCE_DIR_STRING_U */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_RESOURCE_DIR_STRING_U, 4)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_RESOURCE_DIR_STRING_U, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIR_STRING_U, Length, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIR_STRING_U, Length, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIR_STRING_U, Length, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_RESOURCE_DIR_STRING_U, NameString, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_RESOURCE_DIR_STRING_U, NameString, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_RESOURCE_DIR_STRING_U, NameString, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_IMAGE_SECTION_HEADER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_SECTION_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_FIELD_SIZE (IMAGE_SECTION_HEADER, Name, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SECTION_HEADER, Name, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SECTION_HEADER, Name, 0)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_SEPARATE_DEBUG_HEADER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* IMAGE_SEPARATE_DEBUG_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, 48)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Signature, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Signature, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Signature, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Flags, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Flags, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Flags, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Machine, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Machine, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Machine, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Characteristics, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Characteristics, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Characteristics, 6)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, TimeDateStamp, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, TimeDateStamp, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, CheckSum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, CheckSum, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, CheckSum, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, ImageBase, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, ImageBase, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, ImageBase, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, SizeOfImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, SizeOfImage, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, NumberOfSections, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, NumberOfSections, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, NumberOfSections, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, ExportedNamesSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, ExportedNamesSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, ExportedNamesSize, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, DebugDirectorySize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, DebugDirectorySize, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, DebugDirectorySize, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, SectionAlignment, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, SectionAlignment, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_SEPARATE_DEBUG_HEADER, Reserved, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_SEPARATE_DEBUG_HEADER, Reserved, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_SEPARATE_DEBUG_HEADER, Reserved, 40)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_IMAGE_SYMBOL(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_SYMBOL (pack 2) */
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_THUNK_DATA(void)
|
|
|
|
{
|
2006-10-10 20:35:46 +02:00
|
|
|
/* IMAGE_THUNK_DATA */
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_TLS_DIRECTORY(void)
|
|
|
|
{
|
2006-10-10 20:35:46 +02:00
|
|
|
/* IMAGE_TLS_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_TLS_DIRECTORY, 24)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_TLS_DIRECTORY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2010-04-07 17:25:19 +02:00
|
|
|
static void test_pack_IMAGE_TLS_DIRECTORY32(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_TLS_DIRECTORY32 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_TLS_DIRECTORY32, 24)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_TLS_DIRECTORY32, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, StartAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, StartAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, StartAddressOfRawData, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, EndAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, EndAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, EndAddressOfRawData, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, AddressOfIndex, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, AddressOfIndex, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, AddressOfIndex, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, AddressOfCallBacks, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, AddressOfCallBacks, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, AddressOfCallBacks, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, SizeOfZeroFill, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, SizeOfZeroFill, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, SizeOfZeroFill, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY32, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY32, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY32, Characteristics, 20)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IMAGE_TLS_DIRECTORY64(void)
|
|
|
|
{
|
|
|
|
/* IMAGE_TLS_DIRECTORY64 */
|
|
|
|
TEST_TYPE_SIZE (IMAGE_TLS_DIRECTORY64, 40)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_TLS_DIRECTORY64, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, StartAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, StartAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, StartAddressOfRawData, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, EndAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, EndAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, EndAddressOfRawData, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, AddressOfIndex, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, AddressOfIndex, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, AddressOfIndex, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, AddressOfCallBacks, 8)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, AddressOfCallBacks, 8)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, AddressOfCallBacks, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, SizeOfZeroFill, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, SizeOfZeroFill, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, SizeOfZeroFill, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_TLS_DIRECTORY64, Characteristics, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_TLS_DIRECTORY64, Characteristics, 4)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_TLS_DIRECTORY64, Characteristics, 36)
|
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_IMAGE_VXD_HEADER(void)
|
|
|
|
{
|
2002-10-23 20:45:15 +02:00
|
|
|
/* IMAGE_VXD_HEADER (pack 2) */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IMAGE_VXD_HEADER, 196)
|
|
|
|
TEST_TYPE_ALIGN (IMAGE_VXD_HEADER, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_magic, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_magic, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_magic, 0)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_border, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_border, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_border, 2)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_worder, 1)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_worder, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_worder, 3)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_level, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_level, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_level, 4)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_cpu, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_cpu, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_cpu, 8)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_os, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_os, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_os, 10)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_ver, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_ver, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_ver, 12)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_mflags, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_mflags, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_mflags, 16)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_mpages, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_mpages, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_mpages, 20)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_startobj, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_startobj, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_startobj, 24)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_eip, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_eip, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_eip, 28)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_stackobj, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_stackobj, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_stackobj, 32)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_esp, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_esp, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_esp, 36)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_pagesize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_pagesize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_pagesize, 40)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_lastpagesize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_lastpagesize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_lastpagesize, 44)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_fixupsize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_fixupsize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_fixupsize, 48)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_fixupsum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_fixupsum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_fixupsum, 52)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_ldrsize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_ldrsize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_ldrsize, 56)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_ldrsum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_ldrsum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_ldrsum, 60)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_objtab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_objtab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_objtab, 64)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_objcnt, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_objcnt, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_objcnt, 68)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_objmap, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_objmap, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_objmap, 72)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_itermap, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_itermap, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_itermap, 76)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_rsrctab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_rsrctab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_rsrctab, 80)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_rsrccnt, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_rsrccnt, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_rsrccnt, 84)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_restab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_restab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_restab, 88)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_enttab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_enttab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_enttab, 92)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_dirtab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_dirtab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_dirtab, 96)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_dircnt, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_dircnt, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_dircnt, 100)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_fpagetab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_fpagetab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_fpagetab, 104)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_frectab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_frectab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_frectab, 108)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_impmod, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_impmod, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_impmod, 112)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_impmodcnt, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_impmodcnt, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_impmodcnt, 116)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_impproc, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_impproc, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_impproc, 120)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_pagesum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_pagesum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_pagesum, 124)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_datapage, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_datapage, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_datapage, 128)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_preload, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_preload, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_preload, 132)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_nrestab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_nrestab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_nrestab, 136)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_cbnrestab, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_cbnrestab, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_cbnrestab, 140)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_nressum, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_nressum, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_nressum, 144)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_autodata, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_autodata, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_autodata, 148)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_debuginfo, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_debuginfo, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_debuginfo, 152)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_debuglen, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_debuglen, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_debuglen, 156)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_instpreload, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_instpreload, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_instpreload, 160)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_instdemand, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_instdemand, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_instdemand, 164)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_heapsize, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_heapsize, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_heapsize, 168)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_res3, 12)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_res3, 1)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_res3, 172)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_winresoff, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_winresoff, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_winresoff, 184)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_winreslen, 4)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_winreslen, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_winreslen, 188)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_devid, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_devid, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_devid, 192)
|
|
|
|
TEST_FIELD_SIZE (IMAGE_VXD_HEADER, e32_ddkver, 2)
|
|
|
|
TEST_FIELD_ALIGN (IMAGE_VXD_HEADER, e32_ddkver, 2)
|
|
|
|
TEST_FIELD_OFFSET(IMAGE_VXD_HEADER, e32_ddkver, 194)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-08-24 22:16:25 +02:00
|
|
|
static void test_pack_IO_COUNTERS(void)
|
|
|
|
{
|
|
|
|
/* IO_COUNTERS (pack 8) */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (IO_COUNTERS, 48)
|
|
|
|
TEST_TYPE_ALIGN (IO_COUNTERS, 8)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, ReadOperationCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, ReadOperationCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, ReadOperationCount, 0)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, WriteOperationCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, WriteOperationCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, WriteOperationCount, 8)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, OtherOperationCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, OtherOperationCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, OtherOperationCount, 16)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, ReadTransferCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, ReadTransferCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, ReadTransferCount, 24)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, WriteTransferCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, WriteTransferCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, WriteTransferCount, 32)
|
|
|
|
TEST_FIELD_SIZE (IO_COUNTERS, OtherTransferCount, 8)
|
|
|
|
TEST_FIELD_ALIGN (IO_COUNTERS, OtherTransferCount, 8)
|
|
|
|
TEST_FIELD_OFFSET(IO_COUNTERS, OtherTransferCount, 40)
|
2004-08-24 22:16:25 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LANGID(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LANGID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LANGID, 2)
|
|
|
|
TEST_TYPE_ALIGN (LANGID, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(LANGID)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LARGE_INTEGER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* LARGE_INTEGER */
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LCID(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LCID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LCID, 4)
|
|
|
|
TEST_TYPE_ALIGN (LCID, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(LCID)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LIST_ENTRY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* LIST_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LIST_ENTRY, 8)
|
|
|
|
TEST_TYPE_ALIGN (LIST_ENTRY, 4)
|
|
|
|
TEST_FIELD_SIZE (LIST_ENTRY, Flink, 4)
|
|
|
|
TEST_FIELD_ALIGN (LIST_ENTRY, Flink, 4)
|
|
|
|
TEST_FIELD_OFFSET(LIST_ENTRY, Flink, 0)
|
|
|
|
TEST_FIELD_SIZE (LIST_ENTRY, Blink, 4)
|
|
|
|
TEST_FIELD_ALIGN (LIST_ENTRY, Blink, 4)
|
|
|
|
TEST_FIELD_OFFSET(LIST_ENTRY, Blink, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LONG(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LONG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LONG, 4)
|
|
|
|
TEST_TYPE_ALIGN (LONG, 4)
|
|
|
|
TEST_TYPE_SIGNED(LONG)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_LONGLONG(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2004-05-04 02:41:11 +02:00
|
|
|
/* LONGLONG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LONGLONG, 8)
|
|
|
|
TEST_TYPE_ALIGN (LONGLONG, 8)
|
|
|
|
TEST_TYPE_SIGNED(LONGLONG)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LUID(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* LUID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LUID, 8)
|
|
|
|
TEST_TYPE_ALIGN (LUID, 4)
|
|
|
|
TEST_FIELD_SIZE (LUID, LowPart, 4)
|
|
|
|
TEST_FIELD_ALIGN (LUID, LowPart, 4)
|
|
|
|
TEST_FIELD_OFFSET(LUID, LowPart, 0)
|
|
|
|
TEST_FIELD_SIZE (LUID, HighPart, 4)
|
|
|
|
TEST_FIELD_ALIGN (LUID, HighPart, 4)
|
|
|
|
TEST_FIELD_OFFSET(LUID, HighPart, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LUID_AND_ATTRIBUTES(void)
|
|
|
|
{
|
2002-10-15 03:53:45 +02:00
|
|
|
/* LUID_AND_ATTRIBUTES (pack 4) */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LUID_AND_ATTRIBUTES, 12)
|
|
|
|
TEST_TYPE_ALIGN (LUID_AND_ATTRIBUTES, 4)
|
|
|
|
TEST_FIELD_SIZE (LUID_AND_ATTRIBUTES, Luid, 8)
|
|
|
|
TEST_FIELD_ALIGN (LUID_AND_ATTRIBUTES, Luid, 4)
|
|
|
|
TEST_FIELD_OFFSET(LUID_AND_ATTRIBUTES, Luid, 0)
|
|
|
|
TEST_FIELD_SIZE (LUID_AND_ATTRIBUTES, Attributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (LUID_AND_ATTRIBUTES, Attributes, 4)
|
|
|
|
TEST_FIELD_OFFSET(LUID_AND_ATTRIBUTES, Attributes, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_MEMORY_BASIC_INFORMATION(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* MEMORY_BASIC_INFORMATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (MEMORY_BASIC_INFORMATION, 28)
|
|
|
|
TEST_TYPE_ALIGN (MEMORY_BASIC_INFORMATION, 4)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, BaseAddress, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, BaseAddress, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, BaseAddress, 0)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, AllocationBase, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, AllocationBase, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, AllocationBase, 4)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, AllocationProtect, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, AllocationProtect, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, AllocationProtect, 8)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, RegionSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, RegionSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, RegionSize, 12)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, State, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, State, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, State, 16)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, Protect, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, Protect, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, Protect, 20)
|
|
|
|
TEST_FIELD_SIZE (MEMORY_BASIC_INFORMATION, Type, 4)
|
|
|
|
TEST_FIELD_ALIGN (MEMORY_BASIC_INFORMATION, Type, 4)
|
|
|
|
TEST_FIELD_OFFSET(MEMORY_BASIC_INFORMATION, Type, 24)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_MESSAGE_RESOURCE_BLOCK(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* MESSAGE_RESOURCE_BLOCK */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (MESSAGE_RESOURCE_BLOCK, 12)
|
|
|
|
TEST_TYPE_ALIGN (MESSAGE_RESOURCE_BLOCK, 4)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_BLOCK, LowId, 4)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_BLOCK, LowId, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_BLOCK, LowId, 0)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_BLOCK, HighId, 4)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_BLOCK, HighId, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_BLOCK, HighId, 4)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_BLOCK, OffsetToEntries, 4)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_BLOCK, OffsetToEntries, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_BLOCK, OffsetToEntries, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_MESSAGE_RESOURCE_DATA(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* MESSAGE_RESOURCE_DATA */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (MESSAGE_RESOURCE_DATA, 16)
|
|
|
|
TEST_TYPE_ALIGN (MESSAGE_RESOURCE_DATA, 4)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_DATA, NumberOfBlocks, 4)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_DATA, NumberOfBlocks, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_DATA, NumberOfBlocks, 0)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_DATA, Blocks, 12)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_DATA, Blocks, 4)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_DATA, Blocks, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_MESSAGE_RESOURCE_ENTRY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* MESSAGE_RESOURCE_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (MESSAGE_RESOURCE_ENTRY, 6)
|
|
|
|
TEST_TYPE_ALIGN (MESSAGE_RESOURCE_ENTRY, 2)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_ENTRY, Length, 2)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_ENTRY, Length, 2)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_ENTRY, Length, 0)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_ENTRY, Flags, 2)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_ENTRY, Flags, 2)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_ENTRY, Flags, 2)
|
|
|
|
TEST_FIELD_SIZE (MESSAGE_RESOURCE_ENTRY, Text, 1)
|
|
|
|
TEST_FIELD_ALIGN (MESSAGE_RESOURCE_ENTRY, Text, 1)
|
|
|
|
TEST_FIELD_OFFSET(MESSAGE_RESOURCE_ENTRY, Text, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_NT_TIB(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* NT_TIB */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_FIELD_SIZE (NT_TIB, ExceptionList, 4)
|
|
|
|
TEST_FIELD_ALIGN (NT_TIB, ExceptionList, 4)
|
|
|
|
TEST_FIELD_OFFSET(NT_TIB, ExceptionList, 0)
|
|
|
|
TEST_FIELD_SIZE (NT_TIB, StackBase, 4)
|
|
|
|
TEST_FIELD_ALIGN (NT_TIB, StackBase, 4)
|
|
|
|
TEST_FIELD_OFFSET(NT_TIB, StackBase, 4)
|
|
|
|
TEST_FIELD_SIZE (NT_TIB, StackLimit, 4)
|
|
|
|
TEST_FIELD_ALIGN (NT_TIB, StackLimit, 4)
|
|
|
|
TEST_FIELD_OFFSET(NT_TIB, StackLimit, 8)
|
|
|
|
TEST_FIELD_SIZE (NT_TIB, SubSystemTib, 4)
|
|
|
|
TEST_FIELD_ALIGN (NT_TIB, SubSystemTib, 4)
|
|
|
|
TEST_FIELD_OFFSET(NT_TIB, SubSystemTib, 12)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_OBJECT_TYPE_LIST(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* OBJECT_TYPE_LIST */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (OBJECT_TYPE_LIST, 8)
|
|
|
|
TEST_TYPE_ALIGN (OBJECT_TYPE_LIST, 4)
|
|
|
|
TEST_FIELD_SIZE (OBJECT_TYPE_LIST, Level, 2)
|
|
|
|
TEST_FIELD_ALIGN (OBJECT_TYPE_LIST, Level, 2)
|
|
|
|
TEST_FIELD_OFFSET(OBJECT_TYPE_LIST, Level, 0)
|
|
|
|
TEST_FIELD_SIZE (OBJECT_TYPE_LIST, Sbz, 2)
|
|
|
|
TEST_FIELD_ALIGN (OBJECT_TYPE_LIST, Sbz, 2)
|
|
|
|
TEST_FIELD_OFFSET(OBJECT_TYPE_LIST, Sbz, 2)
|
|
|
|
TEST_FIELD_SIZE (OBJECT_TYPE_LIST, ObjectType, 4)
|
|
|
|
TEST_FIELD_ALIGN (OBJECT_TYPE_LIST, ObjectType, 4)
|
|
|
|
TEST_FIELD_OFFSET(OBJECT_TYPE_LIST, ObjectType, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PACCESS_ALLOWED_ACE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PACCESS_ALLOWED_ACE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PACCESS_ALLOWED_ACE, 4)
|
|
|
|
TEST_TYPE_ALIGN (PACCESS_ALLOWED_ACE, 4)
|
|
|
|
TEST_TARGET_SIZE (PACCESS_ALLOWED_ACE, 12)
|
|
|
|
TEST_TARGET_ALIGN(PACCESS_ALLOWED_ACE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PACCESS_DENIED_ACE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PACCESS_DENIED_ACE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PACCESS_DENIED_ACE, 4)
|
|
|
|
TEST_TYPE_ALIGN (PACCESS_DENIED_ACE, 4)
|
|
|
|
TEST_TARGET_SIZE (PACCESS_DENIED_ACE, 12)
|
|
|
|
TEST_TARGET_ALIGN(PACCESS_DENIED_ACE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PACCESS_TOKEN(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PACCESS_TOKEN */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PACCESS_TOKEN, 4)
|
|
|
|
TEST_TYPE_ALIGN (PACCESS_TOKEN, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PACE_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PACE_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PACE_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PACE_HEADER, 4)
|
|
|
|
TEST_TARGET_SIZE (PACE_HEADER, 4)
|
|
|
|
TEST_TARGET_ALIGN(PACE_HEADER, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PACL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PACL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PACL, 4)
|
|
|
|
TEST_TYPE_ALIGN (PACL, 4)
|
|
|
|
TEST_TARGET_SIZE (PACL, 8)
|
|
|
|
TEST_TARGET_ALIGN(PACL, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_PACL_REVISION_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* PACL_REVISION_INFORMATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PACL_REVISION_INFORMATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (PACL_REVISION_INFORMATION, 4)
|
|
|
|
TEST_TARGET_SIZE (PACL_REVISION_INFORMATION, 4)
|
|
|
|
TEST_TARGET_ALIGN(PACL_REVISION_INFORMATION, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PACL_SIZE_INFORMATION(void)
|
|
|
|
{
|
|
|
|
/* PACL_SIZE_INFORMATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PACL_SIZE_INFORMATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (PACL_SIZE_INFORMATION, 4)
|
|
|
|
TEST_TARGET_SIZE (PACL_SIZE_INFORMATION, 12)
|
|
|
|
TEST_TARGET_ALIGN(PACL_SIZE_INFORMATION, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PCCH(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PCCH */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PCCH, 4)
|
|
|
|
TEST_TYPE_ALIGN (PCCH, 4)
|
|
|
|
TEST_TARGET_SIZE (PCCH, 1)
|
|
|
|
TEST_TARGET_ALIGN(PCCH, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PCH(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PCH */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PCH, 4)
|
|
|
|
TEST_TYPE_ALIGN (PCH, 4)
|
|
|
|
TEST_TARGET_SIZE (PCH, 1)
|
|
|
|
TEST_TARGET_ALIGN(PCH, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PCSTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PCSTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PCSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PCSTR, 4)
|
|
|
|
TEST_TARGET_SIZE (PCSTR, 1)
|
|
|
|
TEST_TARGET_ALIGN(PCSTR, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_PCTSTR(void)
|
|
|
|
{
|
|
|
|
/* PCTSTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PCTSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PCTSTR, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PCWCH(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PCWCH */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PCWCH, 4)
|
|
|
|
TEST_TYPE_ALIGN (PCWCH, 4)
|
|
|
|
TEST_TARGET_SIZE (PCWCH, 2)
|
|
|
|
TEST_TARGET_ALIGN(PCWCH, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PCWSTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PCWSTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PCWSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PCWSTR, 4)
|
|
|
|
TEST_TARGET_SIZE (PCWSTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(PCWSTR, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PEXCEPTION_POINTERS(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PEXCEPTION_POINTERS */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PEXCEPTION_POINTERS, 4)
|
|
|
|
TEST_TYPE_ALIGN (PEXCEPTION_POINTERS, 4)
|
|
|
|
TEST_TARGET_SIZE (PEXCEPTION_POINTERS, 8)
|
|
|
|
TEST_TARGET_ALIGN(PEXCEPTION_POINTERS, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PEXCEPTION_RECORD(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PEXCEPTION_RECORD */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PEXCEPTION_RECORD, 4)
|
|
|
|
TEST_TYPE_ALIGN (PEXCEPTION_RECORD, 4)
|
|
|
|
TEST_TARGET_SIZE (PEXCEPTION_RECORD, 80)
|
|
|
|
TEST_TARGET_ALIGN(PEXCEPTION_RECORD, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-23 00:28:53 +02:00
|
|
|
static void test_pack_PFPO_DATA(void)
|
|
|
|
{
|
|
|
|
/* PFPO_DATA */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PFPO_DATA, 4)
|
|
|
|
TEST_TYPE_ALIGN (PFPO_DATA, 4)
|
|
|
|
TEST_TARGET_SIZE (PFPO_DATA, 16)
|
|
|
|
TEST_TARGET_ALIGN(PFPO_DATA, 4)
|
2004-08-23 00:28:53 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PGENERIC_MAPPING(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PGENERIC_MAPPING */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PGENERIC_MAPPING, 4)
|
|
|
|
TEST_TYPE_ALIGN (PGENERIC_MAPPING, 4)
|
|
|
|
TEST_TARGET_SIZE (PGENERIC_MAPPING, 16)
|
|
|
|
TEST_TARGET_ALIGN(PGENERIC_MAPPING, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PHANDLE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PHANDLE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PHANDLE, 4)
|
|
|
|
TEST_TYPE_ALIGN (PHANDLE, 4)
|
|
|
|
TEST_TARGET_SIZE (PHANDLE, 4)
|
|
|
|
TEST_TARGET_ALIGN(PHANDLE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_ARCHIVE_MEMBER_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_ARCHIVE_MEMBER_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_ARCHIVE_MEMBER_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_ARCHIVE_MEMBER_HEADER, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_ARCHIVE_MEMBER_HEADER, 60)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_ARCHIVE_MEMBER_HEADER, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_AUX_SYMBOL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_AUX_SYMBOL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_AUX_SYMBOL, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_AUX_SYMBOL, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_BASE_RELOCATION(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_BASE_RELOCATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_BASE_RELOCATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_BASE_RELOCATION, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_BASE_RELOCATION, 8)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_BASE_RELOCATION, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_BOUND_FORWARDER_REF(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_BOUND_FORWARDER_REF */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_BOUND_FORWARDER_REF, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_BOUND_FORWARDER_REF, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_BOUND_FORWARDER_REF, 8)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_BOUND_FORWARDER_REF, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_BOUND_IMPORT_DESCRIPTOR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_BOUND_IMPORT_DESCRIPTOR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_BOUND_IMPORT_DESCRIPTOR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_BOUND_IMPORT_DESCRIPTOR, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_BOUND_IMPORT_DESCRIPTOR, 8)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_BOUND_IMPORT_DESCRIPTOR, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_COFF_SYMBOLS_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_COFF_SYMBOLS_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_COFF_SYMBOLS_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_COFF_SYMBOLS_HEADER, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_COFF_SYMBOLS_HEADER, 32)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_COFF_SYMBOLS_HEADER, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_DATA_DIRECTORY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_DATA_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_DATA_DIRECTORY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_DATA_DIRECTORY, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_DATA_DIRECTORY, 8)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_DATA_DIRECTORY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_DEBUG_DIRECTORY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_DEBUG_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_DEBUG_DIRECTORY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_DEBUG_DIRECTORY, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_DEBUG_DIRECTORY, 28)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_DEBUG_DIRECTORY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_DEBUG_MISC(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_DEBUG_MISC */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_DEBUG_MISC, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_DEBUG_MISC, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_DEBUG_MISC, 16)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_DEBUG_MISC, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_DOS_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_DOS_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_DOS_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_DOS_HEADER, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_DOS_HEADER, 64)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_DOS_HEADER, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_EXPORT_DIRECTORY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_EXPORT_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_EXPORT_DIRECTORY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_EXPORT_DIRECTORY, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_EXPORT_DIRECTORY, 40)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_EXPORT_DIRECTORY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_FILE_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_FILE_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_FILE_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_FILE_HEADER, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_FILE_HEADER, 20)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_FILE_HEADER, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_FUNCTION_ENTRY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_FUNCTION_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_FUNCTION_ENTRY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_FUNCTION_ENTRY, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_FUNCTION_ENTRY, 12)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_FUNCTION_ENTRY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_IMPORT_BY_NAME(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_IMPORT_BY_NAME */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_IMPORT_BY_NAME, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_IMPORT_BY_NAME, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_IMPORT_BY_NAME, 4)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_IMPORT_BY_NAME, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_IMPORT_DESCRIPTOR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_IMPORT_DESCRIPTOR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_IMPORT_DESCRIPTOR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_IMPORT_DESCRIPTOR, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_PIMAGE_LINENUMBER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_LINENUMBER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_LINENUMBER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_LINENUMBER, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_LOAD_CONFIG_DIRECTORY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_LOAD_CONFIG_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_LOAD_CONFIG_DIRECTORY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_LOAD_CONFIG_DIRECTORY, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_LOAD_CONFIG_DIRECTORY, 72)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_LOAD_CONFIG_DIRECTORY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_NT_HEADERS(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_NT_HEADERS */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_NT_HEADERS, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_NT_HEADERS, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2010-04-07 17:25:19 +02:00
|
|
|
static void test_pack_PIMAGE_NT_HEADERS32(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_NT_HEADERS32 */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_NT_HEADERS32, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_NT_HEADERS32, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_NT_HEADERS32, 248)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_NT_HEADERS32, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_NT_HEADERS64(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_NT_HEADERS64 */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_NT_HEADERS64, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_NT_HEADERS64, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_NT_HEADERS64, 264)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_NT_HEADERS64, 8)
|
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_OPTIONAL_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_OPTIONAL_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_OPTIONAL_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_OPTIONAL_HEADER, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2010-04-07 17:25:19 +02:00
|
|
|
static void test_pack_PIMAGE_OPTIONAL_HEADER32(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_OPTIONAL_HEADER32 */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_OPTIONAL_HEADER32, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_OPTIONAL_HEADER32, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_OPTIONAL_HEADER32, 224)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_OPTIONAL_HEADER32, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_OPTIONAL_HEADER64(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_OPTIONAL_HEADER64 */
|
|
|
|
TEST_TYPE_SIZE (PIMAGE_OPTIONAL_HEADER64, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_OPTIONAL_HEADER64, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_OPTIONAL_HEADER64, 240)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_OPTIONAL_HEADER64, 8)
|
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_OS2_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_OS2_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_OS2_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_OS2_HEADER, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_OS2_HEADER, 64)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_OS2_HEADER, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_PIMAGE_RELOCATION(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_RELOCATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_RELOCATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RELOCATION, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_RESOURCE_DATA_ENTRY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_RESOURCE_DATA_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DATA_ENTRY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DATA_ENTRY, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_RESOURCE_DATA_ENTRY, 16)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_RESOURCE_DATA_ENTRY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_RESOURCE_DIRECTORY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_RESOURCE_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DIRECTORY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DIRECTORY, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_RESOURCE_DIRECTORY, 16)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_RESOURCE_DIRECTORY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_PIMAGE_RESOURCE_DIRECTORY_ENTRY(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_RESOURCE_DIRECTORY_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DIRECTORY_ENTRY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DIRECTORY_ENTRY, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_RESOURCE_DIRECTORY_STRING(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_RESOURCE_DIRECTORY_STRING */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DIRECTORY_STRING, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DIRECTORY_STRING, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_RESOURCE_DIRECTORY_STRING, 4)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_RESOURCE_DIRECTORY_STRING, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_RESOURCE_DIR_STRING_U(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_RESOURCE_DIR_STRING_U */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_RESOURCE_DIR_STRING_U, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_RESOURCE_DIR_STRING_U, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_RESOURCE_DIR_STRING_U, 4)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_RESOURCE_DIR_STRING_U, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_PIMAGE_SECTION_HEADER(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_SECTION_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_SECTION_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_SECTION_HEADER, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_SEPARATE_DEBUG_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_SEPARATE_DEBUG_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_SEPARATE_DEBUG_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_SEPARATE_DEBUG_HEADER, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_SEPARATE_DEBUG_HEADER, 48)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_SEPARATE_DEBUG_HEADER, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_PIMAGE_SYMBOL(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_SYMBOL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_SYMBOL, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_SYMBOL, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PIMAGE_THUNK_DATA(void)
|
|
|
|
{
|
|
|
|
/* PIMAGE_THUNK_DATA */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_THUNK_DATA, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_THUNK_DATA, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_TLS_CALLBACK(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_TLS_CALLBACK */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_TLS_CALLBACK, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_TLS_CALLBACK, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_TLS_DIRECTORY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_TLS_DIRECTORY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_TLS_DIRECTORY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_TLS_DIRECTORY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PIMAGE_VXD_HEADER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PIMAGE_VXD_HEADER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIMAGE_VXD_HEADER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIMAGE_VXD_HEADER, 4)
|
|
|
|
TEST_TARGET_SIZE (PIMAGE_VXD_HEADER, 196)
|
|
|
|
TEST_TARGET_ALIGN(PIMAGE_VXD_HEADER, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-24 22:16:25 +02:00
|
|
|
static void test_pack_PIO_COUNTERS(void)
|
|
|
|
{
|
|
|
|
/* PIO_COUNTERS */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PIO_COUNTERS, 4)
|
|
|
|
TEST_TYPE_ALIGN (PIO_COUNTERS, 4)
|
|
|
|
TEST_TARGET_SIZE (PIO_COUNTERS, 48)
|
|
|
|
TEST_TARGET_ALIGN(PIO_COUNTERS, 8)
|
2004-08-24 22:16:25 +02:00
|
|
|
}
|
|
|
|
|
2004-08-14 01:55:43 +02:00
|
|
|
static void test_pack_PISECURITY_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* PISECURITY_DESCRIPTOR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PISECURITY_DESCRIPTOR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PISECURITY_DESCRIPTOR, 4)
|
|
|
|
TEST_TARGET_SIZE (PISECURITY_DESCRIPTOR, 20)
|
|
|
|
TEST_TARGET_ALIGN(PISECURITY_DESCRIPTOR, 4)
|
2004-08-14 01:55:43 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PISECURITY_DESCRIPTOR_RELATIVE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PISECURITY_DESCRIPTOR_RELATIVE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PISECURITY_DESCRIPTOR_RELATIVE, 4)
|
|
|
|
TEST_TYPE_ALIGN (PISECURITY_DESCRIPTOR_RELATIVE, 4)
|
|
|
|
TEST_TARGET_SIZE (PISECURITY_DESCRIPTOR_RELATIVE, 20)
|
|
|
|
TEST_TARGET_ALIGN(PISECURITY_DESCRIPTOR_RELATIVE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-14 01:55:43 +02:00
|
|
|
static void test_pack_PISID(void)
|
|
|
|
{
|
|
|
|
/* PISID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PISID, 4)
|
|
|
|
TEST_TYPE_ALIGN (PISID, 4)
|
|
|
|
TEST_TARGET_SIZE (PISID, 12)
|
|
|
|
TEST_TARGET_ALIGN(PISID, 4)
|
2004-08-14 01:55:43 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PLARGE_INTEGER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PLARGE_INTEGER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PLARGE_INTEGER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PLARGE_INTEGER, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PLIST_ENTRY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PLIST_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PLIST_ENTRY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PLIST_ENTRY, 4)
|
|
|
|
TEST_TARGET_SIZE (PLIST_ENTRY, 8)
|
|
|
|
TEST_TARGET_ALIGN(PLIST_ENTRY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PLUID(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PLUID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PLUID, 4)
|
|
|
|
TEST_TYPE_ALIGN (PLUID, 4)
|
|
|
|
TEST_TARGET_SIZE (PLUID, 8)
|
|
|
|
TEST_TARGET_ALIGN(PLUID, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_PLUID_AND_ATTRIBUTES(void)
|
|
|
|
{
|
|
|
|
/* PLUID_AND_ATTRIBUTES */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PLUID_AND_ATTRIBUTES, 4)
|
|
|
|
TEST_TYPE_ALIGN (PLUID_AND_ATTRIBUTES, 4)
|
|
|
|
TEST_TARGET_SIZE (PLUID_AND_ATTRIBUTES, 12)
|
|
|
|
TEST_TARGET_ALIGN(PLUID_AND_ATTRIBUTES, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PMEMORY_BASIC_INFORMATION(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PMEMORY_BASIC_INFORMATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PMEMORY_BASIC_INFORMATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (PMEMORY_BASIC_INFORMATION, 4)
|
|
|
|
TEST_TARGET_SIZE (PMEMORY_BASIC_INFORMATION, 28)
|
|
|
|
TEST_TARGET_ALIGN(PMEMORY_BASIC_INFORMATION, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PMESSAGE_RESOURCE_BLOCK(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PMESSAGE_RESOURCE_BLOCK */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PMESSAGE_RESOURCE_BLOCK, 4)
|
|
|
|
TEST_TYPE_ALIGN (PMESSAGE_RESOURCE_BLOCK, 4)
|
|
|
|
TEST_TARGET_SIZE (PMESSAGE_RESOURCE_BLOCK, 12)
|
|
|
|
TEST_TARGET_ALIGN(PMESSAGE_RESOURCE_BLOCK, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PMESSAGE_RESOURCE_DATA(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PMESSAGE_RESOURCE_DATA */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PMESSAGE_RESOURCE_DATA, 4)
|
|
|
|
TEST_TYPE_ALIGN (PMESSAGE_RESOURCE_DATA, 4)
|
|
|
|
TEST_TARGET_SIZE (PMESSAGE_RESOURCE_DATA, 16)
|
|
|
|
TEST_TARGET_ALIGN(PMESSAGE_RESOURCE_DATA, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PMESSAGE_RESOURCE_ENTRY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PMESSAGE_RESOURCE_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PMESSAGE_RESOURCE_ENTRY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PMESSAGE_RESOURCE_ENTRY, 4)
|
|
|
|
TEST_TARGET_SIZE (PMESSAGE_RESOURCE_ENTRY, 6)
|
|
|
|
TEST_TARGET_ALIGN(PMESSAGE_RESOURCE_ENTRY, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_PNT_TIB(void)
|
|
|
|
{
|
|
|
|
/* PNT_TIB */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PNT_TIB, 4)
|
|
|
|
TEST_TYPE_ALIGN (PNT_TIB, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_POBJECT_TYPE_LIST(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2004-05-04 02:41:11 +02:00
|
|
|
/* POBJECT_TYPE_LIST */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (POBJECT_TYPE_LIST, 4)
|
|
|
|
TEST_TYPE_ALIGN (POBJECT_TYPE_LIST, 4)
|
|
|
|
TEST_TARGET_SIZE (POBJECT_TYPE_LIST, 8)
|
|
|
|
TEST_TARGET_ALIGN(POBJECT_TYPE_LIST, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PPRIVILEGE_SET(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PPRIVILEGE_SET */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PPRIVILEGE_SET, 4)
|
|
|
|
TEST_TYPE_ALIGN (PPRIVILEGE_SET, 4)
|
|
|
|
TEST_TARGET_SIZE (PPRIVILEGE_SET, 20)
|
|
|
|
TEST_TARGET_ALIGN(PPRIVILEGE_SET, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PRIVILEGE_SET(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* PRIVILEGE_SET */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRIVILEGE_SET, 20)
|
|
|
|
TEST_TYPE_ALIGN (PRIVILEGE_SET, 4)
|
|
|
|
TEST_FIELD_SIZE (PRIVILEGE_SET, PrivilegeCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (PRIVILEGE_SET, PrivilegeCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(PRIVILEGE_SET, PrivilegeCount, 0)
|
|
|
|
TEST_FIELD_SIZE (PRIVILEGE_SET, Control, 4)
|
|
|
|
TEST_FIELD_ALIGN (PRIVILEGE_SET, Control, 4)
|
|
|
|
TEST_FIELD_OFFSET(PRIVILEGE_SET, Control, 4)
|
|
|
|
TEST_FIELD_SIZE (PRIVILEGE_SET, Privilege, 12)
|
|
|
|
TEST_FIELD_ALIGN (PRIVILEGE_SET, Privilege, 4)
|
|
|
|
TEST_FIELD_OFFSET(PRIVILEGE_SET, Privilege, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PRLIST_ENTRY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PRLIST_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRLIST_ENTRY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PRLIST_ENTRY, 4)
|
|
|
|
TEST_TARGET_SIZE (PRLIST_ENTRY, 8)
|
|
|
|
TEST_TARGET_ALIGN(PRLIST_ENTRY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PRTL_CRITICAL_SECTION(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PRTL_CRITICAL_SECTION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRTL_CRITICAL_SECTION, 4)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_CRITICAL_SECTION, 4)
|
|
|
|
TEST_TARGET_SIZE (PRTL_CRITICAL_SECTION, 24)
|
|
|
|
TEST_TARGET_ALIGN(PRTL_CRITICAL_SECTION, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PRTL_CRITICAL_SECTION_DEBUG(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PRTL_CRITICAL_SECTION_DEBUG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRTL_CRITICAL_SECTION_DEBUG, 4)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_CRITICAL_SECTION_DEBUG, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_PRTL_OSVERSIONINFOEXW(void)
|
|
|
|
{
|
|
|
|
/* PRTL_OSVERSIONINFOEXW */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRTL_OSVERSIONINFOEXW, 4)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_OSVERSIONINFOEXW, 4)
|
|
|
|
TEST_TARGET_SIZE (PRTL_OSVERSIONINFOEXW, 284)
|
|
|
|
TEST_TARGET_ALIGN(PRTL_OSVERSIONINFOEXW, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRTL_OSVERSIONINFOW(void)
|
|
|
|
{
|
|
|
|
/* PRTL_OSVERSIONINFOW */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRTL_OSVERSIONINFOW, 4)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_OSVERSIONINFOW, 4)
|
|
|
|
TEST_TARGET_SIZE (PRTL_OSVERSIONINFOW, 276)
|
|
|
|
TEST_TARGET_ALIGN(PRTL_OSVERSIONINFOW, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PRTL_RESOURCE_DEBUG(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PRTL_RESOURCE_DEBUG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRTL_RESOURCE_DEBUG, 4)
|
|
|
|
TEST_TYPE_ALIGN (PRTL_RESOURCE_DEBUG, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_PSECURITY_DESCRIPTOR(void)
|
|
|
|
{
|
|
|
|
/* PSECURITY_DESCRIPTOR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSECURITY_DESCRIPTOR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSECURITY_DESCRIPTOR, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_PSECURITY_QUALITY_OF_SERVICE(void)
|
|
|
|
{
|
|
|
|
/* PSECURITY_QUALITY_OF_SERVICE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSECURITY_QUALITY_OF_SERVICE, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSECURITY_QUALITY_OF_SERVICE, 4)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_PSID(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2004-05-04 02:41:11 +02:00
|
|
|
/* PSID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSID, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSID, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PSID_IDENTIFIER_AUTHORITY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PSID_IDENTIFIER_AUTHORITY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSID_IDENTIFIER_AUTHORITY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSID_IDENTIFIER_AUTHORITY, 4)
|
|
|
|
TEST_TARGET_SIZE (PSID_IDENTIFIER_AUTHORITY, 6)
|
|
|
|
TEST_TARGET_ALIGN(PSID_IDENTIFIER_AUTHORITY, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PSINGLE_LIST_ENTRY(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PSINGLE_LIST_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSINGLE_LIST_ENTRY, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSINGLE_LIST_ENTRY, 4)
|
|
|
|
TEST_TARGET_SIZE (PSINGLE_LIST_ENTRY, 4)
|
|
|
|
TEST_TARGET_ALIGN(PSINGLE_LIST_ENTRY, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PSTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PSTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSTR, 4)
|
|
|
|
TEST_TARGET_SIZE (PSTR, 1)
|
|
|
|
TEST_TARGET_ALIGN(PSTR, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PSYSTEM_ALARM_ACE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PSYSTEM_ALARM_ACE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSYSTEM_ALARM_ACE, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSYSTEM_ALARM_ACE, 4)
|
|
|
|
TEST_TARGET_SIZE (PSYSTEM_ALARM_ACE, 12)
|
|
|
|
TEST_TARGET_ALIGN(PSYSTEM_ALARM_ACE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PSYSTEM_AUDIT_ACE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PSYSTEM_AUDIT_ACE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSYSTEM_AUDIT_ACE, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSYSTEM_AUDIT_ACE, 4)
|
|
|
|
TEST_TARGET_SIZE (PSYSTEM_AUDIT_ACE, 12)
|
|
|
|
TEST_TARGET_ALIGN(PSYSTEM_AUDIT_ACE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-09-06 23:26:57 +02:00
|
|
|
static void test_pack_PTOKEN_GROUPS(void)
|
|
|
|
{
|
|
|
|
/* PTOKEN_GROUPS */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PTOKEN_GROUPS, 4)
|
|
|
|
TEST_TYPE_ALIGN (PTOKEN_GROUPS, 4)
|
|
|
|
TEST_TARGET_SIZE (PTOKEN_GROUPS, 12)
|
|
|
|
TEST_TARGET_ALIGN(PTOKEN_GROUPS, 4)
|
2004-09-06 23:26:57 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PTOKEN_PRIVILEGES(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PTOKEN_PRIVILEGES */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PTOKEN_PRIVILEGES, 4)
|
|
|
|
TEST_TYPE_ALIGN (PTOKEN_PRIVILEGES, 4)
|
|
|
|
TEST_TARGET_SIZE (PTOKEN_PRIVILEGES, 16)
|
|
|
|
TEST_TARGET_ALIGN(PTOKEN_PRIVILEGES, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-09-06 23:26:57 +02:00
|
|
|
static void test_pack_PTOKEN_USER(void)
|
|
|
|
{
|
|
|
|
/* PTOKEN_USER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PTOKEN_USER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PTOKEN_USER, 4)
|
|
|
|
TEST_TARGET_SIZE (PTOKEN_USER, 8)
|
|
|
|
TEST_TARGET_ALIGN(PTOKEN_USER, 4)
|
2004-09-06 23:26:57 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PTSTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PTSTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PTSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PTSTR, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PULARGE_INTEGER(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PULARGE_INTEGER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PULARGE_INTEGER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PULARGE_INTEGER, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_PVECTORED_EXCEPTION_HANDLER(void)
|
|
|
|
{
|
|
|
|
/* PVECTORED_EXCEPTION_HANDLER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PVECTORED_EXCEPTION_HANDLER, 4)
|
|
|
|
TEST_TYPE_ALIGN (PVECTORED_EXCEPTION_HANDLER, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PVOID(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PVOID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PVOID, 4)
|
|
|
|
TEST_TYPE_ALIGN (PVOID, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PWCH(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PWCH */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PWCH, 4)
|
|
|
|
TEST_TYPE_ALIGN (PWCH, 4)
|
|
|
|
TEST_TARGET_SIZE (PWCH, 2)
|
|
|
|
TEST_TARGET_ALIGN(PWCH, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PWSTR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PWSTR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PWSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (PWSTR, 4)
|
|
|
|
TEST_TARGET_SIZE (PWSTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(PWSTR, 2)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_RTL_CRITICAL_SECTION(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* RTL_CRITICAL_SECTION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (RTL_CRITICAL_SECTION, 24)
|
|
|
|
TEST_TYPE_ALIGN (RTL_CRITICAL_SECTION, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, DebugInfo, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, DebugInfo, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, DebugInfo, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, LockCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, LockCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, LockCount, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, RecursionCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, RecursionCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, RecursionCount, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, OwningThread, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, OwningThread, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, OwningThread, 12)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, LockSemaphore, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, LockSemaphore, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, LockSemaphore, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION, SpinCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION, SpinCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION, SpinCount, 20)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_RTL_CRITICAL_SECTION_DEBUG(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* RTL_CRITICAL_SECTION_DEBUG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, Type, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, Type, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, Type, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, CriticalSection, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, CriticalSection, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, CriticalSection, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, ProcessLocksList, 8)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, ProcessLocksList, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, ProcessLocksList, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, EntryCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, EntryCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, EntryCount, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_CRITICAL_SECTION_DEBUG, ContentionCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_CRITICAL_SECTION_DEBUG, ContentionCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_CRITICAL_SECTION_DEBUG, ContentionCount, 20)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_RTL_OSVERSIONINFOEXW(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* RTL_OSVERSIONINFOEXW */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (RTL_OSVERSIONINFOEXW, 284)
|
|
|
|
TEST_TYPE_ALIGN (RTL_OSVERSIONINFOEXW, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwOSVersionInfoSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwOSVersionInfoSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwOSVersionInfoSize, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwMinorVersion, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwMinorVersion, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwMinorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwBuildNumber, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwBuildNumber, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwBuildNumber, 12)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, dwPlatformId, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, dwPlatformId, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, dwPlatformId, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, szCSDVersion, 256)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, szCSDVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, szCSDVersion, 20)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wServicePackMajor, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wServicePackMajor, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wServicePackMajor, 276)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wServicePackMinor, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wServicePackMinor, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wServicePackMinor, 278)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wSuiteMask, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wSuiteMask, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wSuiteMask, 280)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wProductType, 1)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wProductType, 1)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wProductType, 282)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOEXW, wReserved, 1)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOEXW, wReserved, 1)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOEXW, wReserved, 283)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RTL_OSVERSIONINFOW(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* RTL_OSVERSIONINFOW */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (RTL_OSVERSIONINFOW, 276)
|
|
|
|
TEST_TYPE_ALIGN (RTL_OSVERSIONINFOW, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwOSVersionInfoSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwOSVersionInfoSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwOSVersionInfoSize, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwMajorVersion, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwMinorVersion, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwMinorVersion, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwMinorVersion, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwBuildNumber, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwBuildNumber, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwBuildNumber, 12)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, dwPlatformId, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, dwPlatformId, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, dwPlatformId, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_OSVERSIONINFOW, szCSDVersion, 256)
|
|
|
|
TEST_FIELD_ALIGN (RTL_OSVERSIONINFOW, szCSDVersion, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_OSVERSIONINFOW, szCSDVersion, 20)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_RTL_RESOURCE_DEBUG(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* RTL_RESOURCE_DEBUG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, Type, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, Type, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, Type, 0)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, CreatorBackTraceIndex, 2)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, CriticalSection, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, CriticalSection, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, CriticalSection, 4)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, ProcessLocksList, 8)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, ProcessLocksList, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, ProcessLocksList, 8)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, EntryCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, EntryCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, EntryCount, 16)
|
|
|
|
TEST_FIELD_SIZE (RTL_RESOURCE_DEBUG, ContentionCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (RTL_RESOURCE_DEBUG, ContentionCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(RTL_RESOURCE_DEBUG, ContentionCount, 20)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SECURITY_CONTEXT_TRACKING_MODE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* SECURITY_CONTEXT_TRACKING_MODE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SECURITY_CONTEXT_TRACKING_MODE, 1)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_CONTEXT_TRACKING_MODE, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SECURITY_DESCRIPTOR(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SECURITY_DESCRIPTOR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SECURITY_DESCRIPTOR, 20)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_DESCRIPTOR, 4)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Revision, 1)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Revision, 1)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Revision, 0)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Sbz1, 1)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Sbz1, 1)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Sbz1, 1)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Control, 2)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Control, 2)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Control, 2)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Owner, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Owner, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Owner, 4)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Group, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Group, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Group, 8)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Sacl, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Sacl, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Sacl, 12)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR, Dacl, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR, Dacl, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR, Dacl, 16)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SECURITY_DESCRIPTOR_CONTROL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* SECURITY_DESCRIPTOR_CONTROL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SECURITY_DESCRIPTOR_CONTROL, 2)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_DESCRIPTOR_CONTROL, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(SECURITY_DESCRIPTOR_CONTROL)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SECURITY_DESCRIPTOR_RELATIVE(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SECURITY_DESCRIPTOR_RELATIVE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SECURITY_DESCRIPTOR_RELATIVE, 20)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, 4)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Revision, 1)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Revision, 1)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Revision, 0)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Sbz1, 1)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Sbz1, 1)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Sbz1, 1)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Control, 2)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Control, 2)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Control, 2)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Owner, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Owner, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Owner, 4)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Group, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Group, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Group, 8)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Sacl, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Sacl, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Sacl, 12)
|
|
|
|
TEST_FIELD_SIZE (SECURITY_DESCRIPTOR_RELATIVE, Dacl, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_DESCRIPTOR_RELATIVE, Dacl, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_DESCRIPTOR_RELATIVE, Dacl, 16)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SECURITY_INFORMATION(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* SECURITY_INFORMATION */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SECURITY_INFORMATION, 4)
|
|
|
|
TEST_TYPE_ALIGN (SECURITY_INFORMATION, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(SECURITY_INFORMATION)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_SECURITY_QUALITY_OF_SERVICE(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SECURITY_QUALITY_OF_SERVICE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_FIELD_SIZE (SECURITY_QUALITY_OF_SERVICE, Length, 4)
|
|
|
|
TEST_FIELD_ALIGN (SECURITY_QUALITY_OF_SERVICE, Length, 4)
|
|
|
|
TEST_FIELD_OFFSET(SECURITY_QUALITY_OF_SERVICE, Length, 0)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SHORT(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* SHORT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SHORT, 2)
|
|
|
|
TEST_TYPE_ALIGN (SHORT, 2)
|
|
|
|
TEST_TYPE_SIGNED(SHORT)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SID(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SID, 12)
|
|
|
|
TEST_TYPE_ALIGN (SID, 4)
|
|
|
|
TEST_FIELD_SIZE (SID, Revision, 1)
|
|
|
|
TEST_FIELD_ALIGN (SID, Revision, 1)
|
|
|
|
TEST_FIELD_OFFSET(SID, Revision, 0)
|
|
|
|
TEST_FIELD_SIZE (SID, SubAuthorityCount, 1)
|
|
|
|
TEST_FIELD_ALIGN (SID, SubAuthorityCount, 1)
|
|
|
|
TEST_FIELD_OFFSET(SID, SubAuthorityCount, 1)
|
|
|
|
TEST_FIELD_SIZE (SID, IdentifierAuthority, 6)
|
|
|
|
TEST_FIELD_ALIGN (SID, IdentifierAuthority, 1)
|
|
|
|
TEST_FIELD_OFFSET(SID, IdentifierAuthority, 2)
|
|
|
|
TEST_FIELD_SIZE (SID, SubAuthority, 4)
|
|
|
|
TEST_FIELD_ALIGN (SID, SubAuthority, 4)
|
|
|
|
TEST_FIELD_OFFSET(SID, SubAuthority, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SID_AND_ATTRIBUTES(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SID_AND_ATTRIBUTES */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SID_AND_ATTRIBUTES, 8)
|
|
|
|
TEST_TYPE_ALIGN (SID_AND_ATTRIBUTES, 4)
|
|
|
|
TEST_FIELD_SIZE (SID_AND_ATTRIBUTES, Sid, 4)
|
|
|
|
TEST_FIELD_ALIGN (SID_AND_ATTRIBUTES, Sid, 4)
|
|
|
|
TEST_FIELD_OFFSET(SID_AND_ATTRIBUTES, Sid, 0)
|
|
|
|
TEST_FIELD_SIZE (SID_AND_ATTRIBUTES, Attributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (SID_AND_ATTRIBUTES, Attributes, 4)
|
|
|
|
TEST_FIELD_OFFSET(SID_AND_ATTRIBUTES, Attributes, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SID_IDENTIFIER_AUTHORITY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SID_IDENTIFIER_AUTHORITY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SID_IDENTIFIER_AUTHORITY, 6)
|
|
|
|
TEST_TYPE_ALIGN (SID_IDENTIFIER_AUTHORITY, 1)
|
|
|
|
TEST_FIELD_SIZE (SID_IDENTIFIER_AUTHORITY, Value, 6)
|
|
|
|
TEST_FIELD_ALIGN (SID_IDENTIFIER_AUTHORITY, Value, 1)
|
|
|
|
TEST_FIELD_OFFSET(SID_IDENTIFIER_AUTHORITY, Value, 0)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SINGLE_LIST_ENTRY(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SINGLE_LIST_ENTRY */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SINGLE_LIST_ENTRY, 4)
|
|
|
|
TEST_TYPE_ALIGN (SINGLE_LIST_ENTRY, 4)
|
|
|
|
TEST_FIELD_SIZE (SINGLE_LIST_ENTRY, Next, 4)
|
|
|
|
TEST_FIELD_ALIGN (SINGLE_LIST_ENTRY, Next, 4)
|
|
|
|
TEST_FIELD_OFFSET(SINGLE_LIST_ENTRY, Next, 0)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SYSTEM_ALARM_ACE(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SYSTEM_ALARM_ACE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SYSTEM_ALARM_ACE, 12)
|
|
|
|
TEST_TYPE_ALIGN (SYSTEM_ALARM_ACE, 4)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_ALARM_ACE, Header, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_ALARM_ACE, Header, 2)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_ALARM_ACE, Header, 0)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_ALARM_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_ALARM_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_ALARM_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_ALARM_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_ALARM_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_ALARM_ACE, SidStart, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_SYSTEM_AUDIT_ACE(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SYSTEM_AUDIT_ACE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SYSTEM_AUDIT_ACE, 12)
|
|
|
|
TEST_TYPE_ALIGN (SYSTEM_AUDIT_ACE, 4)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_AUDIT_ACE, Header, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_AUDIT_ACE, Header, 2)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_AUDIT_ACE, Header, 0)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_AUDIT_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_AUDIT_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_AUDIT_ACE, Mask, 4)
|
|
|
|
TEST_FIELD_SIZE (SYSTEM_AUDIT_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_ALIGN (SYSTEM_AUDIT_ACE, SidStart, 4)
|
|
|
|
TEST_FIELD_OFFSET(SYSTEM_AUDIT_ACE, SidStart, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_TCHAR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* TCHAR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (TCHAR, 1)
|
|
|
|
TEST_TYPE_ALIGN (TCHAR, 1)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_TOKEN_DEFAULT_DACL(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* TOKEN_DEFAULT_DACL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (TOKEN_DEFAULT_DACL, 4)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_DEFAULT_DACL, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_DEFAULT_DACL, DefaultDacl, 4)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_DEFAULT_DACL, DefaultDacl, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_DEFAULT_DACL, DefaultDacl, 0)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_TOKEN_GROUPS(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* TOKEN_GROUPS */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (TOKEN_GROUPS, 12)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_GROUPS, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_GROUPS, GroupCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_GROUPS, GroupCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_GROUPS, GroupCount, 0)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_GROUPS, Groups, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_GROUPS, Groups, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_GROUPS, Groups, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_TOKEN_OWNER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* TOKEN_OWNER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (TOKEN_OWNER, 4)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_OWNER, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_OWNER, Owner, 4)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_OWNER, Owner, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_OWNER, Owner, 0)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_TOKEN_PRIMARY_GROUP(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* TOKEN_PRIMARY_GROUP */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (TOKEN_PRIMARY_GROUP, 4)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_PRIMARY_GROUP, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_PRIMARY_GROUP, PrimaryGroup, 4)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_PRIMARY_GROUP, PrimaryGroup, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_PRIMARY_GROUP, PrimaryGroup, 0)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_TOKEN_PRIVILEGES(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* TOKEN_PRIVILEGES */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (TOKEN_PRIVILEGES, 16)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_PRIVILEGES, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_PRIVILEGES, PrivilegeCount, 4)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_PRIVILEGES, PrivilegeCount, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_PRIVILEGES, PrivilegeCount, 0)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_PRIVILEGES, Privileges, 12)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_PRIVILEGES, Privileges, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_PRIVILEGES, Privileges, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_TOKEN_SOURCE(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* TOKEN_SOURCE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (TOKEN_SOURCE, 16)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_SOURCE, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_SOURCE, SourceName, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_SOURCE, SourceName, 1)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_SOURCE, SourceName, 0)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_SOURCE, SourceIdentifier, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_SOURCE, SourceIdentifier, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_SOURCE, SourceIdentifier, 8)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-08-25 02:42:50 +02:00
|
|
|
static void test_pack_TOKEN_STATISTICS(void)
|
|
|
|
{
|
|
|
|
/* TOKEN_STATISTICS (pack 4) */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_FIELD_SIZE (TOKEN_STATISTICS, TokenId, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_STATISTICS, TokenId, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_STATISTICS, TokenId, 0)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_STATISTICS, AuthenticationId, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_STATISTICS, AuthenticationId, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_STATISTICS, AuthenticationId, 8)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_STATISTICS, ExpirationTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_STATISTICS, ExpirationTime, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_STATISTICS, ExpirationTime, 16)
|
2004-08-25 02:42:50 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_TOKEN_USER(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* TOKEN_USER */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (TOKEN_USER, 8)
|
|
|
|
TEST_TYPE_ALIGN (TOKEN_USER, 4)
|
|
|
|
TEST_FIELD_SIZE (TOKEN_USER, User, 8)
|
|
|
|
TEST_FIELD_ALIGN (TOKEN_USER, User, 4)
|
|
|
|
TEST_FIELD_OFFSET(TOKEN_USER, User, 0)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-10-15 03:53:45 +02:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_ULARGE_INTEGER(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* ULARGE_INTEGER */
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_ULONGLONG(void)
|
2002-11-06 22:59:15 +01:00
|
|
|
{
|
2004-05-04 02:41:11 +02:00
|
|
|
/* ULONGLONG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ULONGLONG, 8)
|
|
|
|
TEST_TYPE_ALIGN (ULONGLONG, 8)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONGLONG)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_WAITORTIMERCALLBACKFUNC(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* WAITORTIMERCALLBACKFUNC */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (WAITORTIMERCALLBACKFUNC, 4)
|
|
|
|
TEST_TYPE_ALIGN (WAITORTIMERCALLBACKFUNC, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_WCHAR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* WCHAR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (WCHAR, 2)
|
|
|
|
TEST_TYPE_ALIGN (WCHAR, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(WCHAR)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_ATOM(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* ATOM */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ATOM, 2)
|
|
|
|
TEST_TYPE_ALIGN (ATOM, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(ATOM)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BOOL(void)
|
|
|
|
{
|
|
|
|
/* BOOL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (BOOL, 4)
|
|
|
|
TEST_TYPE_ALIGN (BOOL, 4)
|
|
|
|
TEST_TYPE_SIGNED(BOOL)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BYTE(void)
|
|
|
|
{
|
|
|
|
/* BYTE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (BYTE, 1)
|
|
|
|
TEST_TYPE_ALIGN (BYTE, 1)
|
|
|
|
TEST_TYPE_UNSIGNED(BYTE)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_COLORREF(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* COLORREF */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (COLORREF, 4)
|
|
|
|
TEST_TYPE_ALIGN (COLORREF, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(COLORREF)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DWORD(void)
|
|
|
|
{
|
|
|
|
/* DWORD */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (DWORD, 4)
|
|
|
|
TEST_TYPE_ALIGN (DWORD, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(DWORD)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_FARPROC(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* FARPROC */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (FARPROC, 4)
|
|
|
|
TEST_TYPE_ALIGN (FARPROC, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_FLOAT(void)
|
|
|
|
{
|
|
|
|
/* FLOAT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (FLOAT, 4)
|
|
|
|
TEST_TYPE_ALIGN (FLOAT, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_GLOBALHANDLE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* GLOBALHANDLE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (GLOBALHANDLE, 4)
|
|
|
|
TEST_TYPE_ALIGN (GLOBALHANDLE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_HCURSOR(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* HCURSOR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HCURSOR, 4)
|
|
|
|
TEST_TYPE_ALIGN (HCURSOR, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_HFILE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* HFILE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HFILE, 4)
|
|
|
|
TEST_TYPE_ALIGN (HFILE, 4)
|
|
|
|
TEST_TYPE_SIGNED(HFILE)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_HGDIOBJ(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* HGDIOBJ */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HGDIOBJ, 4)
|
|
|
|
TEST_TYPE_ALIGN (HGDIOBJ, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_HGLOBAL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* HGLOBAL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HGLOBAL, 4)
|
|
|
|
TEST_TYPE_ALIGN (HGLOBAL, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_HLOCAL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* HLOCAL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HLOCAL, 4)
|
|
|
|
TEST_TYPE_ALIGN (HLOCAL, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_HMODULE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* HMODULE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (HMODULE, 4)
|
|
|
|
TEST_TYPE_ALIGN (HMODULE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_INT(void)
|
|
|
|
{
|
|
|
|
/* INT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (INT, 4)
|
|
|
|
TEST_TYPE_ALIGN (INT, 4)
|
|
|
|
TEST_TYPE_SIGNED(INT)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LOCALHANDLE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LOCALHANDLE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LOCALHANDLE, 4)
|
|
|
|
TEST_TYPE_ALIGN (LOCALHANDLE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LPARAM(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LPARAM */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LPARAM, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPARAM, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LPCRECT(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LPCRECT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LPCRECT, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCRECT, 4)
|
|
|
|
TEST_TARGET_SIZE (LPCRECT, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPCRECT, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LPCRECTL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LPCRECTL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LPCRECTL, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCRECTL, 4)
|
|
|
|
TEST_TARGET_SIZE (LPCRECTL, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPCRECTL, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_LPCVOID(void)
|
|
|
|
{
|
|
|
|
/* LPCVOID */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LPCVOID, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCVOID, 4)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LPPOINT(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LPPOINT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LPPOINT, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPPOINT, 4)
|
|
|
|
TEST_TARGET_SIZE (LPPOINT, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPPOINT, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LPRECT(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LPRECT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LPRECT, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPRECT, 4)
|
|
|
|
TEST_TARGET_SIZE (LPRECT, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPRECT, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LPRECTL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LPRECTL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LPRECTL, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPRECTL, 4)
|
|
|
|
TEST_TARGET_SIZE (LPRECTL, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPRECTL, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LPSIZE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LPSIZE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LPSIZE, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSIZE, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSIZE, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPSIZE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_LRESULT(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* LRESULT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (LRESULT, 4)
|
|
|
|
TEST_TYPE_ALIGN (LRESULT, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_POINT(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* POINT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (POINT, 8)
|
|
|
|
TEST_TYPE_ALIGN (POINT, 4)
|
|
|
|
TEST_FIELD_SIZE (POINT, x, 4)
|
|
|
|
TEST_FIELD_ALIGN (POINT, x, 4)
|
|
|
|
TEST_FIELD_OFFSET(POINT, x, 0)
|
|
|
|
TEST_FIELD_SIZE (POINT, y, 4)
|
|
|
|
TEST_FIELD_ALIGN (POINT, y, 4)
|
|
|
|
TEST_FIELD_OFFSET(POINT, y, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_POINTL(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* POINTL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (POINTL, 8)
|
|
|
|
TEST_TYPE_ALIGN (POINTL, 4)
|
|
|
|
TEST_FIELD_SIZE (POINTL, x, 4)
|
|
|
|
TEST_FIELD_ALIGN (POINTL, x, 4)
|
|
|
|
TEST_FIELD_OFFSET(POINTL, x, 0)
|
|
|
|
TEST_FIELD_SIZE (POINTL, y, 4)
|
|
|
|
TEST_FIELD_ALIGN (POINTL, y, 4)
|
|
|
|
TEST_FIELD_OFFSET(POINTL, y, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PPOINT(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PPOINT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PPOINT, 4)
|
|
|
|
TEST_TYPE_ALIGN (PPOINT, 4)
|
|
|
|
TEST_TARGET_SIZE (PPOINT, 8)
|
|
|
|
TEST_TARGET_ALIGN(PPOINT, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-09-06 23:26:57 +02:00
|
|
|
static void test_pack_PPOINTL(void)
|
|
|
|
{
|
|
|
|
/* PPOINTL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PPOINTL, 4)
|
|
|
|
TEST_TYPE_ALIGN (PPOINTL, 4)
|
|
|
|
TEST_TARGET_SIZE (PPOINTL, 8)
|
|
|
|
TEST_TARGET_ALIGN(PPOINTL, 4)
|
2004-09-06 23:26:57 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PRECT(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PRECT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRECT, 4)
|
|
|
|
TEST_TYPE_ALIGN (PRECT, 4)
|
|
|
|
TEST_TARGET_SIZE (PRECT, 16)
|
|
|
|
TEST_TARGET_ALIGN(PRECT, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PRECTL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PRECTL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PRECTL, 4)
|
|
|
|
TEST_TYPE_ALIGN (PRECTL, 4)
|
|
|
|
TEST_TARGET_SIZE (PRECTL, 16)
|
|
|
|
TEST_TARGET_ALIGN(PRECTL, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PROC(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PROC */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PROC, 4)
|
|
|
|
TEST_TYPE_ALIGN (PROC, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_PSIZE(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* PSIZE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSIZE, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSIZE, 4)
|
|
|
|
TEST_TARGET_SIZE (PSIZE, 8)
|
|
|
|
TEST_TARGET_ALIGN(PSIZE, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-09-06 23:26:57 +02:00
|
|
|
static void test_pack_PSZ(void)
|
|
|
|
{
|
|
|
|
/* PSZ */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (PSZ, 4)
|
|
|
|
TEST_TYPE_ALIGN (PSZ, 4)
|
2004-09-06 23:26:57 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_RECT(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* RECT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (RECT, 16)
|
|
|
|
TEST_TYPE_ALIGN (RECT, 4)
|
|
|
|
TEST_FIELD_SIZE (RECT, left, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECT, left, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECT, left, 0)
|
|
|
|
TEST_FIELD_SIZE (RECT, top, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECT, top, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECT, top, 4)
|
|
|
|
TEST_FIELD_SIZE (RECT, right, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECT, right, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECT, right, 8)
|
|
|
|
TEST_FIELD_SIZE (RECT, bottom, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECT, bottom, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECT, bottom, 12)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RECTL(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* RECTL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (RECTL, 16)
|
|
|
|
TEST_TYPE_ALIGN (RECTL, 4)
|
|
|
|
TEST_FIELD_SIZE (RECTL, left, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECTL, left, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECTL, left, 0)
|
|
|
|
TEST_FIELD_SIZE (RECTL, top, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECTL, top, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECTL, top, 4)
|
|
|
|
TEST_FIELD_SIZE (RECTL, right, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECTL, right, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECTL, right, 8)
|
|
|
|
TEST_FIELD_SIZE (RECTL, bottom, 4)
|
|
|
|
TEST_FIELD_ALIGN (RECTL, bottom, 4)
|
|
|
|
TEST_FIELD_OFFSET(RECTL, bottom, 12)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SIZE(void)
|
|
|
|
{
|
2010-04-07 17:22:51 +02:00
|
|
|
/* SIZE */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SIZE, 8)
|
|
|
|
TEST_TYPE_ALIGN (SIZE, 4)
|
|
|
|
TEST_FIELD_SIZE (SIZE, cx, 4)
|
|
|
|
TEST_FIELD_ALIGN (SIZE, cx, 4)
|
|
|
|
TEST_FIELD_OFFSET(SIZE, cx, 0)
|
|
|
|
TEST_FIELD_SIZE (SIZE, cy, 4)
|
|
|
|
TEST_FIELD_ALIGN (SIZE, cy, 4)
|
|
|
|
TEST_FIELD_OFFSET(SIZE, cy, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SIZEL(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* SIZEL */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (SIZEL, 8)
|
|
|
|
TEST_TYPE_ALIGN (SIZEL, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2004-05-04 02:41:11 +02:00
|
|
|
static void test_pack_UCHAR(void)
|
|
|
|
{
|
|
|
|
/* UCHAR */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (UCHAR, 1)
|
|
|
|
TEST_TYPE_ALIGN (UCHAR, 1)
|
|
|
|
TEST_TYPE_UNSIGNED(UCHAR)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UINT(void)
|
|
|
|
{
|
|
|
|
/* UINT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (UINT, 4)
|
|
|
|
TEST_TYPE_ALIGN (UINT, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(UINT)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ULONG(void)
|
|
|
|
{
|
|
|
|
/* ULONG */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (ULONG, 4)
|
|
|
|
TEST_TYPE_ALIGN (ULONG, 4)
|
|
|
|
TEST_TYPE_UNSIGNED(ULONG)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_USHORT(void)
|
|
|
|
{
|
|
|
|
/* USHORT */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (USHORT, 2)
|
|
|
|
TEST_TYPE_ALIGN (USHORT, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(USHORT)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_WORD(void)
|
|
|
|
{
|
|
|
|
/* WORD */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (WORD, 2)
|
|
|
|
TEST_TYPE_ALIGN (WORD, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(WORD)
|
2004-05-04 02:41:11 +02:00
|
|
|
}
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack_WPARAM(void)
|
|
|
|
{
|
2002-11-04 23:40:40 +01:00
|
|
|
/* WPARAM */
|
2009-01-08 00:26:10 +01:00
|
|
|
TEST_TYPE_SIZE (WPARAM, 4)
|
|
|
|
TEST_TYPE_ALIGN (WPARAM, 4)
|
2002-11-06 22:59:15 +01:00
|
|
|
}
|
2002-11-04 23:40:40 +01:00
|
|
|
|
2010-04-07 17:22:51 +02:00
|
|
|
#endif /* _WIN64 */
|
|
|
|
|
2002-11-06 22:59:15 +01:00
|
|
|
static void test_pack(void)
|
|
|
|
{
|
|
|
|
test_pack_ACCESS_ALLOWED_ACE();
|
|
|
|
test_pack_ACCESS_DENIED_ACE();
|
|
|
|
test_pack_ACCESS_MASK();
|
|
|
|
test_pack_ACE_HEADER();
|
|
|
|
test_pack_ACL();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_ACL_REVISION_INFORMATION();
|
|
|
|
test_pack_ACL_SIZE_INFORMATION();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_ATOM();
|
|
|
|
test_pack_BOOL();
|
|
|
|
test_pack_BOOLEAN();
|
|
|
|
test_pack_BYTE();
|
|
|
|
test_pack_CCHAR();
|
|
|
|
test_pack_CHAR();
|
|
|
|
test_pack_COLORREF();
|
|
|
|
test_pack_DWORD();
|
|
|
|
test_pack_DWORD32();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_DWORD64();
|
|
|
|
test_pack_DWORDLONG();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_DWORD_PTR();
|
|
|
|
test_pack_EXCEPTION_POINTERS();
|
|
|
|
test_pack_EXCEPTION_RECORD();
|
|
|
|
test_pack_EXECUTION_STATE();
|
|
|
|
test_pack_FARPROC();
|
|
|
|
test_pack_FLOAT();
|
2004-08-23 00:28:53 +02:00
|
|
|
test_pack_FPO_DATA();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_GENERIC_MAPPING();
|
|
|
|
test_pack_GLOBALHANDLE();
|
|
|
|
test_pack_HALF_PTR();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_HANDLE();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_HCURSOR();
|
|
|
|
test_pack_HFILE();
|
|
|
|
test_pack_HGDIOBJ();
|
|
|
|
test_pack_HGLOBAL();
|
|
|
|
test_pack_HLOCAL();
|
|
|
|
test_pack_HMODULE();
|
|
|
|
test_pack_HRESULT();
|
|
|
|
test_pack_IMAGE_ARCHIVE_MEMBER_HEADER();
|
|
|
|
test_pack_IMAGE_AUX_SYMBOL();
|
|
|
|
test_pack_IMAGE_BASE_RELOCATION();
|
|
|
|
test_pack_IMAGE_BOUND_FORWARDER_REF();
|
|
|
|
test_pack_IMAGE_BOUND_IMPORT_DESCRIPTOR();
|
|
|
|
test_pack_IMAGE_COFF_SYMBOLS_HEADER();
|
|
|
|
test_pack_IMAGE_DATA_DIRECTORY();
|
|
|
|
test_pack_IMAGE_DEBUG_DIRECTORY();
|
|
|
|
test_pack_IMAGE_DEBUG_MISC();
|
|
|
|
test_pack_IMAGE_DOS_HEADER();
|
|
|
|
test_pack_IMAGE_EXPORT_DIRECTORY();
|
|
|
|
test_pack_IMAGE_FILE_HEADER();
|
|
|
|
test_pack_IMAGE_FUNCTION_ENTRY();
|
|
|
|
test_pack_IMAGE_IMPORT_BY_NAME();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_IMAGE_IMPORT_DESCRIPTOR();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_IMAGE_LINENUMBER();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_IMAGE_LOAD_CONFIG_DIRECTORY();
|
|
|
|
test_pack_IMAGE_NT_HEADERS();
|
2010-04-07 17:25:19 +02:00
|
|
|
test_pack_IMAGE_NT_HEADERS32();
|
|
|
|
test_pack_IMAGE_NT_HEADERS64();
|
|
|
|
test_pack_IMAGE_OPTIONAL_HEADER();
|
|
|
|
test_pack_IMAGE_OPTIONAL_HEADER32();
|
|
|
|
test_pack_IMAGE_OPTIONAL_HEADER64();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_IMAGE_OS2_HEADER();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_IMAGE_RELOCATION();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_IMAGE_RESOURCE_DATA_ENTRY();
|
|
|
|
test_pack_IMAGE_RESOURCE_DIRECTORY();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_IMAGE_RESOURCE_DIRECTORY_ENTRY();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_IMAGE_RESOURCE_DIRECTORY_STRING();
|
|
|
|
test_pack_IMAGE_RESOURCE_DIR_STRING_U();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_IMAGE_SECTION_HEADER();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_IMAGE_SEPARATE_DEBUG_HEADER();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_IMAGE_SYMBOL();
|
|
|
|
test_pack_IMAGE_THUNK_DATA();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_IMAGE_TLS_DIRECTORY();
|
2010-04-07 17:25:19 +02:00
|
|
|
test_pack_IMAGE_TLS_DIRECTORY32();
|
|
|
|
test_pack_IMAGE_TLS_DIRECTORY64();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_IMAGE_VXD_HEADER();
|
|
|
|
test_pack_INT();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_INT16();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_INT32();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_INT64();
|
|
|
|
test_pack_INT8();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_INT_PTR();
|
2004-08-24 22:16:25 +02:00
|
|
|
test_pack_IO_COUNTERS();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_LANGID();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_LARGE_INTEGER();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_LCID();
|
|
|
|
test_pack_LIST_ENTRY();
|
|
|
|
test_pack_LOCALHANDLE();
|
|
|
|
test_pack_LONG();
|
|
|
|
test_pack_LONG32();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_LONG64();
|
|
|
|
test_pack_LONGLONG();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_LONG_PTR();
|
|
|
|
test_pack_LPARAM();
|
|
|
|
test_pack_LPCRECT();
|
|
|
|
test_pack_LPCRECTL();
|
|
|
|
test_pack_LPCVOID();
|
|
|
|
test_pack_LPPOINT();
|
|
|
|
test_pack_LPRECT();
|
|
|
|
test_pack_LPRECTL();
|
|
|
|
test_pack_LPSIZE();
|
|
|
|
test_pack_LRESULT();
|
|
|
|
test_pack_LUID();
|
|
|
|
test_pack_LUID_AND_ATTRIBUTES();
|
|
|
|
test_pack_MEMORY_BASIC_INFORMATION();
|
|
|
|
test_pack_MESSAGE_RESOURCE_BLOCK();
|
|
|
|
test_pack_MESSAGE_RESOURCE_DATA();
|
|
|
|
test_pack_MESSAGE_RESOURCE_ENTRY();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_NT_TIB();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_OBJECT_TYPE_LIST();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PACCESS_ALLOWED_ACE();
|
|
|
|
test_pack_PACCESS_DENIED_ACE();
|
|
|
|
test_pack_PACCESS_TOKEN();
|
|
|
|
test_pack_PACE_HEADER();
|
|
|
|
test_pack_PACL();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_PACL_REVISION_INFORMATION();
|
|
|
|
test_pack_PACL_SIZE_INFORMATION();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PCCH();
|
|
|
|
test_pack_PCH();
|
|
|
|
test_pack_PCSTR();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_PCTSTR();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PCWCH();
|
|
|
|
test_pack_PCWSTR();
|
|
|
|
test_pack_PEXCEPTION_POINTERS();
|
|
|
|
test_pack_PEXCEPTION_RECORD();
|
2004-08-23 00:28:53 +02:00
|
|
|
test_pack_PFPO_DATA();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PGENERIC_MAPPING();
|
|
|
|
test_pack_PHANDLE();
|
|
|
|
test_pack_PIMAGE_ARCHIVE_MEMBER_HEADER();
|
|
|
|
test_pack_PIMAGE_AUX_SYMBOL();
|
|
|
|
test_pack_PIMAGE_BASE_RELOCATION();
|
|
|
|
test_pack_PIMAGE_BOUND_FORWARDER_REF();
|
|
|
|
test_pack_PIMAGE_BOUND_IMPORT_DESCRIPTOR();
|
|
|
|
test_pack_PIMAGE_COFF_SYMBOLS_HEADER();
|
|
|
|
test_pack_PIMAGE_DATA_DIRECTORY();
|
|
|
|
test_pack_PIMAGE_DEBUG_DIRECTORY();
|
|
|
|
test_pack_PIMAGE_DEBUG_MISC();
|
|
|
|
test_pack_PIMAGE_DOS_HEADER();
|
|
|
|
test_pack_PIMAGE_EXPORT_DIRECTORY();
|
|
|
|
test_pack_PIMAGE_FILE_HEADER();
|
|
|
|
test_pack_PIMAGE_FUNCTION_ENTRY();
|
|
|
|
test_pack_PIMAGE_IMPORT_BY_NAME();
|
|
|
|
test_pack_PIMAGE_IMPORT_DESCRIPTOR();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_PIMAGE_LINENUMBER();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PIMAGE_LOAD_CONFIG_DIRECTORY();
|
|
|
|
test_pack_PIMAGE_NT_HEADERS();
|
2010-04-07 17:25:19 +02:00
|
|
|
test_pack_PIMAGE_NT_HEADERS32();
|
|
|
|
test_pack_PIMAGE_NT_HEADERS64();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PIMAGE_OPTIONAL_HEADER();
|
2010-04-07 17:25:19 +02:00
|
|
|
test_pack_PIMAGE_OPTIONAL_HEADER32();
|
|
|
|
test_pack_PIMAGE_OPTIONAL_HEADER64();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PIMAGE_OS2_HEADER();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_PIMAGE_RELOCATION();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PIMAGE_RESOURCE_DATA_ENTRY();
|
|
|
|
test_pack_PIMAGE_RESOURCE_DIRECTORY();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_PIMAGE_RESOURCE_DIRECTORY_ENTRY();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PIMAGE_RESOURCE_DIRECTORY_STRING();
|
|
|
|
test_pack_PIMAGE_RESOURCE_DIR_STRING_U();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_PIMAGE_SECTION_HEADER();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PIMAGE_SEPARATE_DEBUG_HEADER();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_PIMAGE_SYMBOL();
|
|
|
|
test_pack_PIMAGE_THUNK_DATA();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PIMAGE_TLS_CALLBACK();
|
|
|
|
test_pack_PIMAGE_TLS_DIRECTORY();
|
|
|
|
test_pack_PIMAGE_VXD_HEADER();
|
2004-08-24 22:16:25 +02:00
|
|
|
test_pack_PIO_COUNTERS();
|
2004-08-14 01:55:43 +02:00
|
|
|
test_pack_PISECURITY_DESCRIPTOR();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PISECURITY_DESCRIPTOR_RELATIVE();
|
2004-08-14 01:55:43 +02:00
|
|
|
test_pack_PISID();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PLARGE_INTEGER();
|
|
|
|
test_pack_PLIST_ENTRY();
|
|
|
|
test_pack_PLUID();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_PLUID_AND_ATTRIBUTES();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PMEMORY_BASIC_INFORMATION();
|
|
|
|
test_pack_PMESSAGE_RESOURCE_BLOCK();
|
|
|
|
test_pack_PMESSAGE_RESOURCE_DATA();
|
|
|
|
test_pack_PMESSAGE_RESOURCE_ENTRY();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_PNT_TIB();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_POBJECT_TYPE_LIST();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_POINT();
|
|
|
|
test_pack_POINTL();
|
|
|
|
test_pack_PPOINT();
|
2004-09-06 23:26:57 +02:00
|
|
|
test_pack_PPOINTL();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PPRIVILEGE_SET();
|
|
|
|
test_pack_PRECT();
|
|
|
|
test_pack_PRECTL();
|
|
|
|
test_pack_PRIVILEGE_SET();
|
|
|
|
test_pack_PRLIST_ENTRY();
|
|
|
|
test_pack_PROC();
|
|
|
|
test_pack_PRTL_CRITICAL_SECTION();
|
|
|
|
test_pack_PRTL_CRITICAL_SECTION_DEBUG();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_PRTL_OSVERSIONINFOEXW();
|
|
|
|
test_pack_PRTL_OSVERSIONINFOW();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PRTL_RESOURCE_DEBUG();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_PSECURITY_DESCRIPTOR();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_PSECURITY_QUALITY_OF_SERVICE();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_PSID();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PSID_IDENTIFIER_AUTHORITY();
|
|
|
|
test_pack_PSINGLE_LIST_ENTRY();
|
|
|
|
test_pack_PSIZE();
|
|
|
|
test_pack_PSTR();
|
|
|
|
test_pack_PSYSTEM_ALARM_ACE();
|
|
|
|
test_pack_PSYSTEM_AUDIT_ACE();
|
2004-09-06 23:26:57 +02:00
|
|
|
test_pack_PSZ();
|
|
|
|
test_pack_PTOKEN_GROUPS();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PTOKEN_PRIVILEGES();
|
2004-09-06 23:26:57 +02:00
|
|
|
test_pack_PTOKEN_USER();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PTSTR();
|
|
|
|
test_pack_PULARGE_INTEGER();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_PVECTORED_EXCEPTION_HANDLER();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_PVOID();
|
|
|
|
test_pack_PWCH();
|
|
|
|
test_pack_PWSTR();
|
|
|
|
test_pack_RECT();
|
|
|
|
test_pack_RECTL();
|
|
|
|
test_pack_RTL_CRITICAL_SECTION();
|
|
|
|
test_pack_RTL_CRITICAL_SECTION_DEBUG();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_RTL_OSVERSIONINFOEXW();
|
|
|
|
test_pack_RTL_OSVERSIONINFOW();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_RTL_RESOURCE_DEBUG();
|
|
|
|
test_pack_SECURITY_CONTEXT_TRACKING_MODE();
|
|
|
|
test_pack_SECURITY_DESCRIPTOR();
|
|
|
|
test_pack_SECURITY_DESCRIPTOR_CONTROL();
|
|
|
|
test_pack_SECURITY_DESCRIPTOR_RELATIVE();
|
|
|
|
test_pack_SECURITY_INFORMATION();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_SECURITY_QUALITY_OF_SERVICE();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_SHORT();
|
|
|
|
test_pack_SID();
|
|
|
|
test_pack_SID_AND_ATTRIBUTES();
|
|
|
|
test_pack_SID_IDENTIFIER_AUTHORITY();
|
|
|
|
test_pack_SINGLE_LIST_ENTRY();
|
|
|
|
test_pack_SIZE();
|
|
|
|
test_pack_SIZEL();
|
|
|
|
test_pack_SIZE_T();
|
|
|
|
test_pack_SSIZE_T();
|
|
|
|
test_pack_SYSTEM_ALARM_ACE();
|
|
|
|
test_pack_SYSTEM_AUDIT_ACE();
|
|
|
|
test_pack_TCHAR();
|
|
|
|
test_pack_TOKEN_DEFAULT_DACL();
|
|
|
|
test_pack_TOKEN_GROUPS();
|
|
|
|
test_pack_TOKEN_OWNER();
|
|
|
|
test_pack_TOKEN_PRIMARY_GROUP();
|
|
|
|
test_pack_TOKEN_PRIVILEGES();
|
|
|
|
test_pack_TOKEN_SOURCE();
|
2004-08-25 02:42:50 +02:00
|
|
|
test_pack_TOKEN_STATISTICS();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_TOKEN_USER();
|
|
|
|
test_pack_UCHAR();
|
|
|
|
test_pack_UHALF_PTR();
|
|
|
|
test_pack_UINT();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_UINT16();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_UINT32();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_UINT64();
|
|
|
|
test_pack_UINT8();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_UINT_PTR();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_ULARGE_INTEGER();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_ULONG();
|
|
|
|
test_pack_ULONG32();
|
2004-05-04 02:41:11 +02:00
|
|
|
test_pack_ULONG64();
|
|
|
|
test_pack_ULONGLONG();
|
2002-11-06 22:59:15 +01:00
|
|
|
test_pack_ULONG_PTR();
|
|
|
|
test_pack_USHORT();
|
|
|
|
test_pack_WAITORTIMERCALLBACKFUNC();
|
|
|
|
test_pack_WCHAR();
|
|
|
|
test_pack_WORD();
|
|
|
|
test_pack_WPARAM();
|
2002-10-15 03:53:45 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
START_TEST(generated)
|
|
|
|
{
|
|
|
|
test_pack();
|
|
|
|
}
|