[XDK][NDK] Avoid code duplication by generating more definitions for winnt.h

This commit is contained in:
Timo Kreuzer 2025-05-13 13:02:21 +03:00
parent 8d2d9b803a
commit 9ea129b8a9
3 changed files with 12 additions and 47 deletions

View file

@ -518,48 +518,6 @@ typedef struct _KSYSTEM_TIME
LONG High2Time;
} KSYSTEM_TIME, *PKSYSTEM_TIME;
#define MAXIMUM_XSTATE_FEATURES 64
typedef struct _XSTATE_FEATURE
{
ULONG Offset;
ULONG Size;
} XSTATE_FEATURE, *PXSTATE_FEATURE;
typedef struct _XSTATE_CONFIGURATION
{
ULONG64 EnabledFeatures;
#if (NTDDI_VERSION >= NTDDI_WIN8)
ULONG64 EnabledVolatileFeatures;
#endif
ULONG Size;
union
{
ULONG ControlFlags;
struct
{
ULONG OptimizedSave:1;
ULONG CompactionEnabled:1; // WIN10+
ULONG ExtendedFeatureDisable:1; // Win11+
};
};
XSTATE_FEATURE Features[MAXIMUM_XSTATE_FEATURES];
#if (NTDDI_VERSION >= NTDDI_WIN10)
ULONG64 EnabledSupervisorFeatures;
ULONG64 AlignedFeatures;
ULONG AllFeatureSize;
ULONG AllFeatures[MAXIMUM_XSTATE_FEATURES];
#endif
#if (NTDDI_VERSION >= NTDDI_WIN10_RS5)
ULONG64 EnabledUserVisibleSupervisorFeatures;
#endif
#if (NTDDI_VERSION >= NTDDI_WIN11)
ULONG64 ExtendedFeatureDisableFeatures;
ULONG AllNonLargeFeatureSize;
ULONG Spare;
#endif
} XSTATE_CONFIGURATION, *PXSTATE_CONFIGURATION;
//
// Shared Kernel User Data
// Keep in sync with sdk/include/xdk/ketypes.h