mirror of
https://github.com/MSxDOS/ntapi
synced 2026-06-08 11:37:18 +00:00
Add SystemBasicProcessInformation (252) and SystemShadowStackInformation (221) (#22)
This commit is contained in:
+16
-1
@@ -940,7 +940,8 @@ ENUM!{enum SYSTEM_INFORMATION_CLASS {
|
||||
SystemCodeIntegrityUnlockModeInformation = 205,
|
||||
SystemLeapSecondInformation = 206,
|
||||
SystemFlags2Information = 207,
|
||||
MaxSystemInfoClass = 208,
|
||||
SystemShadowStackInformation = 221,
|
||||
SystemBasicProcessInformation = 252,
|
||||
}}
|
||||
STRUCT!{struct SYSTEM_BASIC_INFORMATION {
|
||||
Reserved: ULONG,
|
||||
@@ -1118,6 +1119,16 @@ STRUCT!{struct SYSTEM_PROCESS_INFORMATION {
|
||||
Threads: [SYSTEM_THREAD_INFORMATION; 1],
|
||||
}}
|
||||
pub type PSYSTEM_PROCESS_INFORMATION = *mut SYSTEM_PROCESS_INFORMATION;
|
||||
|
||||
STRUCT!{struct SYSTEM_BASICPROCESS_INFORMATION {
|
||||
NextEntryOffset: ULONG,
|
||||
UniqueProcessId: HANDLE,
|
||||
InheritedFromUniqueProcessId: HANDLE,
|
||||
SequenceNumber: ULONG64,
|
||||
ImageName: UNICODE_STRING,
|
||||
}}
|
||||
pub type PSYSTEM_BASICPROCESS_INFORMATION = *mut SYSTEM_BASICPROCESS_INFORMATION;
|
||||
|
||||
STRUCT!{struct SYSTEM_CALL_COUNT_INFORMATION {
|
||||
Length: ULONG,
|
||||
NumberOfTables: ULONG,
|
||||
@@ -2462,6 +2473,10 @@ STRUCT!{struct SYSTEM_WORKLOAD_ALLOWED_CPU_SET_INFORMATION {
|
||||
}}
|
||||
pub type PSYSTEM_WORKLOAD_ALLOWED_CPU_SET_INFORMATION =
|
||||
*mut SYSTEM_WORKLOAD_ALLOWED_CPU_SET_INFORMATION;
|
||||
STRUCT!{struct SYSTEM_SHADOW_STACK_INFORMATION {
|
||||
Flags: ULONG,
|
||||
}}
|
||||
pub type PSYSTEM_SHADOW_STACK_INFORMATION = *mut SYSTEM_SHADOW_STACK_INFORMATION;
|
||||
EXTERN!{extern "system" {
|
||||
fn NtQuerySystemInformation(
|
||||
SystemInformationClass: SYSTEM_INFORMATION_CLASS,
|
||||
|
||||
@@ -87,6 +87,8 @@ fn ntexapi() {
|
||||
assert_eq!(align_of::<SYSTEM_EXTENDED_THREAD_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_PROCESS_INFORMATION>(), 336);
|
||||
assert_eq!(align_of::<SYSTEM_PROCESS_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_BASICPROCESS_INFORMATION>(), 48);
|
||||
assert_eq!(align_of::<SYSTEM_BASICPROCESS_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_CALL_COUNT_INFORMATION>(), 8);
|
||||
assert_eq!(align_of::<SYSTEM_CALL_COUNT_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<SYSTEM_DEVICE_INFORMATION>(), 24);
|
||||
@@ -97,6 +99,8 @@ fn ntexapi() {
|
||||
assert_eq!(align_of::<SYSTEM_FLAGS_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<SYSTEM_CALL_TIME_INFORMATION>(), 16);
|
||||
assert_eq!(align_of::<SYSTEM_CALL_TIME_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_SHADOW_STACK_INFORMATION>(), 4);
|
||||
assert_eq!(align_of::<SYSTEM_SHADOW_STACK_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<RTL_PROCESS_LOCK_INFORMATION>(), 48);
|
||||
assert_eq!(align_of::<RTL_PROCESS_LOCK_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<RTL_PROCESS_LOCKS>(), 56);
|
||||
|
||||
@@ -87,6 +87,8 @@ fn ntexapi() {
|
||||
assert_eq!(align_of::<SYSTEM_EXTENDED_THREAD_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_PROCESS_INFORMATION>(), 248);
|
||||
assert_eq!(align_of::<SYSTEM_PROCESS_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_BASICPROCESS_INFORMATION>(), 32);
|
||||
assert_eq!(align_of::<SYSTEM_BASICPROCESS_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_CALL_COUNT_INFORMATION>(), 8);
|
||||
assert_eq!(align_of::<SYSTEM_CALL_COUNT_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<SYSTEM_DEVICE_INFORMATION>(), 24);
|
||||
@@ -97,6 +99,8 @@ fn ntexapi() {
|
||||
assert_eq!(align_of::<SYSTEM_FLAGS_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<SYSTEM_CALL_TIME_INFORMATION>(), 16);
|
||||
assert_eq!(align_of::<SYSTEM_CALL_TIME_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_SHADOW_STACK_INFORMATION>(), 4);
|
||||
assert_eq!(align_of::<SYSTEM_SHADOW_STACK_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<RTL_PROCESS_LOCK_INFORMATION>(), 36);
|
||||
assert_eq!(align_of::<RTL_PROCESS_LOCK_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<RTL_PROCESS_LOCKS>(), 40);
|
||||
|
||||
@@ -87,6 +87,8 @@ fn ntexapi() {
|
||||
assert_eq!(align_of::<SYSTEM_EXTENDED_THREAD_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_PROCESS_INFORMATION>(), 336);
|
||||
assert_eq!(align_of::<SYSTEM_PROCESS_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_BASICPROCESS_INFORMATION>(), 48);
|
||||
assert_eq!(align_of::<SYSTEM_BASICPROCESS_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_CALL_COUNT_INFORMATION>(), 8);
|
||||
assert_eq!(align_of::<SYSTEM_CALL_COUNT_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<SYSTEM_DEVICE_INFORMATION>(), 24);
|
||||
@@ -97,6 +99,8 @@ fn ntexapi() {
|
||||
assert_eq!(align_of::<SYSTEM_FLAGS_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<SYSTEM_CALL_TIME_INFORMATION>(), 16);
|
||||
assert_eq!(align_of::<SYSTEM_CALL_TIME_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<SYSTEM_SHADOW_STACK_INFORMATION>(), 4);
|
||||
assert_eq!(align_of::<SYSTEM_SHADOW_STACK_INFORMATION>(), 4);
|
||||
assert_eq!(size_of::<RTL_PROCESS_LOCK_INFORMATION>(), 48);
|
||||
assert_eq!(align_of::<RTL_PROCESS_LOCK_INFORMATION>(), 8);
|
||||
assert_eq!(size_of::<RTL_PROCESS_LOCKS>(), 56);
|
||||
|
||||
Reference in New Issue
Block a user