Skip to content

Commit 1d057a5

Browse files
committed
1 parent daa4a69 commit 1d057a5

File tree

11 files changed

+549
-78
lines changed

11 files changed

+549
-78
lines changed

Source/Include/KNSoft/NDK/NT/Ex/SysInfo.h

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ typedef enum _SYSTEM_INFORMATION_CLASS
8585
SystemHotpatchInformation, // q; s: SYSTEM_HOTPATCH_CODE_INFORMATION
8686
SystemObjectSecurityMode, // q: ULONG // 70
8787
SystemWatchdogTimerHandler, // s: SYSTEM_WATCHDOG_HANDLER_INFORMATION // (kernel-mode only)
88-
SystemWatchdogTimerInformation, // q: SYSTEM_WATCHDOG_TIMER_INFORMATION // NtQuerySystemInformationEx // (kernel-mode only)
88+
SystemWatchdogTimerInformation, // q: out: SYSTEM_WATCHDOG_TIMER_INFORMATION (EX in: ULONG WATCHDOG_INFORMATION_CLASS) // NtQuerySystemInformationEx
8989
SystemLogicalProcessorInformation, // q: SYSTEM_LOGICAL_PROCESSOR_INFORMATION (EX in: USHORT ProcessorGroup) // NtQuerySystemInformationEx
9090
SystemWow64SharedInformationObsolete, // not implemented
9191
SystemRegisterFirmwareTableInformationHandler, // s: SYSTEM_FIRMWARE_TABLE_HANDLER // (kernel-mode only)
@@ -1195,10 +1195,13 @@ typedef struct _SYSTEM_FIRMWARE_TABLE_INFORMATION
11951195
#endif
11961196

11971197
#if !defined(_KERNEL_MODE)
1198+
11981199
// private
1199-
typedef NTSTATUS(STDAPIVCALLTYPE* PFNFTH)(
1200+
typedef _Function_class_(FNFTH)
1201+
NTSTATUS STDAPIVCALLTYPE FNFTH(
12001202
_Inout_ PSYSTEM_FIRMWARE_TABLE_INFORMATION SystemFirmwareTableInfo
12011203
);
1204+
typedef FNFTH* PFNFTH;
12021205

12031206
// private
12041207
typedef struct _SYSTEM_FIRMWARE_TABLE_HANDLER
@@ -1208,6 +1211,7 @@ typedef struct _SYSTEM_FIRMWARE_TABLE_HANDLER
12081211
PFNFTH FirmwareTableHandler;
12091212
PVOID DriverObject;
12101213
} SYSTEM_FIRMWARE_TABLE_HANDLER, *PSYSTEM_FIRMWARE_TABLE_HANDLER;
1214+
12111215
#endif
12121216

12131217
// private

Source/Include/KNSoft/NDK/NT/Ldr.h

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -200,16 +200,18 @@ typedef struct _LDR_DATA_TABLE_ENTRY
200200
ULONG InIndexes : 1;
201201
ULONG ShimDll : 1;
202202
ULONG InExceptionTable : 1;
203-
ULONG ReservedFlags1 : 2;
203+
ULONG VerifierProvider : 1;
204+
ULONG ShimEngineCalloutSent : 1;
204205
ULONG LoadInProgress : 1;
205206
ULONG LoadConfigProcessed : 1;
206207
ULONG EntryProcessed : 1;
207208
ULONG ProtectDelayLoad : 1;
208-
ULONG ReservedFlags3 : 2;
209+
ULONG AuxIatCopyPrivate : 1;
210+
ULONG ReservedFlags3 : 1;
209211
ULONG DontCallForThreads : 1;
210212
ULONG ProcessAttachCalled : 1;
211213
ULONG ProcessAttachFailed : 1;
212-
ULONG CorDeferredValidate : 1;
214+
ULONG ScpInExceptionTable : 1;
213215
ULONG CorImage : 1;
214216
ULONG DontRelocate : 1;
215217
ULONG CorILOnly : 1;
@@ -247,6 +249,8 @@ typedef struct _LDR_DATA_TABLE_ENTRY
247249
LDR_HOT_PATCH_STATE HotPatchState;
248250
} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;
249251

252+
typedef const LDR_DATA_TABLE_ENTRY* PCLDR_DATA_TABLE_ENTRY;
253+
250254
typedef struct _LDR_DATA_TABLE_ENTRY64
251255
{
252256
LIST_ENTRY64 InLoadOrderLinks;
@@ -273,16 +277,18 @@ typedef struct _LDR_DATA_TABLE_ENTRY64
273277
ULONG InIndexes : 1;
274278
ULONG ShimDll : 1;
275279
ULONG InExceptionTable : 1;
276-
ULONG ReservedFlags1 : 2;
280+
ULONG VerifierProvider : 1;
281+
ULONG ShimEngineCalloutSent : 1;
277282
ULONG LoadInProgress : 1;
278283
ULONG LoadConfigProcessed : 1;
279284
ULONG EntryProcessed : 1;
280285
ULONG ProtectDelayLoad : 1;
281-
ULONG ReservedFlags3 : 2;
286+
ULONG AuxIatCopyPrivate : 1;
287+
ULONG ReservedFlags3 : 1;
282288
ULONG DontCallForThreads : 1;
283289
ULONG ProcessAttachCalled : 1;
284290
ULONG ProcessAttachFailed : 1;
285-
ULONG CorDeferredValidate : 1;
291+
ULONG ScpInExceptionTable : 1;
286292
ULONG CorImage : 1;
287293
ULONG DontRelocate : 1;
288294
ULONG CorILOnly : 1;
@@ -320,6 +326,8 @@ typedef struct _LDR_DATA_TABLE_ENTRY64
320326
LDR_HOT_PATCH_STATE HotPatchState;
321327
} LDR_DATA_TABLE_ENTRY64, *PLDR_DATA_TABLE_ENTRY64;
322328

329+
typedef const LDR_DATA_TABLE_ENTRY64* PCLDR_DATA_TABLE_ENTRY64;
330+
323331
typedef struct _LDR_DATA_TABLE_ENTRY32
324332
{
325333
LIST_ENTRY32 InLoadOrderLinks;
@@ -346,16 +354,18 @@ typedef struct _LDR_DATA_TABLE_ENTRY32
346354
ULONG InIndexes : 1;
347355
ULONG ShimDll : 1;
348356
ULONG InExceptionTable : 1;
349-
ULONG ReservedFlags1 : 2;
357+
ULONG VerifierProvider : 1;
358+
ULONG ShimEngineCalloutSent : 1;
350359
ULONG LoadInProgress : 1;
351360
ULONG LoadConfigProcessed : 1;
352361
ULONG EntryProcessed : 1;
353362
ULONG ProtectDelayLoad : 1;
354-
ULONG ReservedFlags3 : 2;
363+
ULONG AuxIatCopyPrivate : 1;
364+
ULONG ReservedFlags3 : 1;
355365
ULONG DontCallForThreads : 1;
356366
ULONG ProcessAttachCalled : 1;
357367
ULONG ProcessAttachFailed : 1;
358-
ULONG CorDeferredValidate : 1;
368+
ULONG ScpInExceptionTable : 1;
359369
ULONG CorImage : 1;
360370
ULONG DontRelocate : 1;
361371
ULONG CorILOnly : 1;
@@ -393,6 +403,8 @@ typedef struct _LDR_DATA_TABLE_ENTRY32
393403
LDR_HOT_PATCH_STATE HotPatchState;
394404
} LDR_DATA_TABLE_ENTRY32, *PLDR_DATA_TABLE_ENTRY32;
395405

406+
typedef const LDR_DATA_TABLE_ENTRY32* PCLDR_DATA_TABLE_ENTRY32;
407+
396408
#pragma endregion
397409

398410
#define LDR_IS_DATAFILE(DllHandle) (((ULONG_PTR)(DllHandle)) & (ULONG_PTR)1)
@@ -1718,4 +1730,12 @@ LdrpResGetMappingSize(
17181730
_In_ BOOLEAN GetFileSizeFromLoadAsDataTable
17191731
);
17201732

1733+
// rev
1734+
NTSYSAPI
1735+
NTSTATUS
1736+
NTAPI
1737+
LdrAppxHandleIntegrityFailure(
1738+
_In_ NTSTATUS Status
1739+
);
1740+
17211741
EXTERN_C_END

0 commit comments

Comments
 (0)