From 767c5ce44fc07f479eabadf8cf4cc43af5d2d452 Mon Sep 17 00:00:00 2001 From: Alex Ionescu Date: Sat, 25 Jun 2005 05:01:29 +0000 Subject: [PATCH] Fix token structure, add aux_data, fix KeDisconnectInterrupt and add NtBuildNumber (fixes for NDK) svn path=/trunk/; revision=16263 --- reactos/include/ndk/kefuncs.h | 2 +- reactos/include/ndk/ketypes.h | 1 + reactos/include/ndk/setypes.h | 71 +++++++++++++++++++---------------- 3 files changed, 40 insertions(+), 34 deletions(-) diff --git a/reactos/include/ndk/kefuncs.h b/reactos/include/ndk/kefuncs.h index 186f58dd820..3c0d719156e 100644 --- a/reactos/include/ndk/kefuncs.h +++ b/reactos/include/ndk/kefuncs.h @@ -235,7 +235,7 @@ KeConnectInterrupt( PKINTERRUPT InterruptObject ); -VOID +BOOLEAN STDCALL KeDisconnectInterrupt( PKINTERRUPT InterruptObject diff --git a/reactos/include/ndk/ketypes.h b/reactos/include/ndk/ketypes.h index d1923db3fd5..680bb4cb73a 100644 --- a/reactos/include/ndk/ketypes.h +++ b/reactos/include/ndk/ketypes.h @@ -36,6 +36,7 @@ extern KAFFINITY NTOSAPI KeActiveProcessors; extern ULONG NTOSAPI KiDmaIoCoherency; /* RISC Architectures only */ extern ULONG NTOSAPI KeMaximumIncrement; extern ULONG NTOSAPI KeMinimumIncrement; +extern ULONG NTOSAPI NtBuildNumber; extern SSDT_ENTRY NTOSAPI KeServiceDescriptorTable[SSDT_MAX_ENTRIES]; extern SSDT_ENTRY NTOSAPI KeServiceDescriptorTableShadow[SSDT_MAX_ENTRIES]; diff --git a/reactos/include/ndk/setypes.h b/reactos/include/ndk/setypes.h index 0efaaa56bd7..79a3626b448 100644 --- a/reactos/include/ndk/setypes.h +++ b/reactos/include/ndk/setypes.h @@ -48,39 +48,44 @@ typedef struct _SEP_AUDIT_POLICY }; } SEP_AUDIT_POLICY, *PSEP_AUDIT_POLICY; -typedef struct _TOKEN -{ - TOKEN_SOURCE TokenSource; /* 0x00 */ - LUID TokenId; /* 0x10 */ - LUID AuthenticationId; /* 0x18 */ - LUID ParentTokenId; /* 0x20 */ - LARGE_INTEGER ExpirationTime; /* 0x28 */ - struct _ERESOURCE *TokenLock; /* 0x30 */ - ULONG Padding; /* 0x34 */ - SEP_AUDIT_POLICY AuditPolicy; /* 0x38 */ - LUID ModifiedId; /* 0x40 */ - ULONG SessionId; /* 0x48 */ - ULONG UserAndGroupCount; /* 0x4C */ - ULONG RestrictedSidCount; /* 0x50 */ - ULONG PrivilegeCount; /* 0x54 */ - ULONG VariableLength; /* 0x58 */ - ULONG DynamicCharged; /* 0x5C */ - ULONG DynamicAvailable; /* 0x60 */ - ULONG DefaultOwnerIndex; /* 0x64 */ - PSID_AND_ATTRIBUTES UserAndGroups; /* 0x68 */ - PSID_AND_ATTRIBUTES RestrictedSids; /* 0x6C */ - PSID PrimaryGroup; /* 0x70 */ - PLUID_AND_ATTRIBUTES Privileges; /* 0x74 */ - PULONG DynamicPart; /* 0x78 */ - PACL DefaultDacl; /* 0x7C */ - TOKEN_TYPE TokenType; /* 0x80 */ - SECURITY_IMPERSONATION_LEVEL ImpersonationLevel; /* 0x84 */ - ULONG TokenFlags; /* 0x88 */ - ULONG TokenInUse; /* 0x8C */ - PVOID ProxyData; /* 0x90 */ - PVOID AuditData; /* 0x94 */ - LUID OriginatingLogonSession; /* 0x98 */ - UCHAR VariablePart[1]; /* 0xA0 */ +#define TOKEN_HAS_TRAVERSE_PRIVILEGE 0x01 +typedef struct _TOKEN { + TOKEN_SOURCE TokenSource; /* 0x00 */ + LUID TokenId; /* 0x10 */ + LUID AuthenticationId; /* 0x18 */ + LUID ParentTokenId; /* 0x20 */ + LARGE_INTEGER ExpirationTime; /* 0x28 */ + struct _ERESOURCE *TokenLock; /* 0x30 */ + SEP_AUDIT_POLICY AuditPolicy; /* 0x38 */ + LUID ModifiedId; /* 0x40 */ + ULONG SessionId; /* 0x48 */ + ULONG UserAndGroupCount; /* 0x4C */ + ULONG RestrictedSidCount; /* 0x50 */ + ULONG PrivilegeCount; /* 0x54 */ + ULONG VariableLength; /* 0x58 */ + ULONG DynamicCharged; /* 0x5C */ + ULONG DynamicAvailable; /* 0x60 */ + ULONG DefaultOwnerIndex; /* 0x64 */ + PSID_AND_ATTRIBUTES UserAndGroups; /* 0x68 */ + PSID_AND_ATTRIBUTES RestrictedSids; /* 0x6C */ + PSID PrimaryGroup; /* 0x70 */ + PLUID_AND_ATTRIBUTES Privileges; /* 0x74 */ + PULONG DynamicPart; /* 0x78 */ + PACL DefaultDacl; /* 0x7C */ + TOKEN_TYPE TokenType; /* 0x80 */ + SECURITY_IMPERSONATION_LEVEL ImpersonationLevel; /* 0x84 */ + ULONG TokenFlags; /* 0x88 */ + BOOLEAN TokenInUse; /* 0x8C */ + PVOID ProxyData; /* 0x90 */ + PVOID AuditData; /* 0x94 */ + LUID OriginatingLogonSession; /* 0x98 */ + ULONG VariablePart; /* 0xA0 */ } TOKEN, *PTOKEN; +typedef struct _AUX_DATA +{ + PPRIVILEGE_SET PrivilegeSet; + GENERIC_MAPPING GenericMapping; + ULONG Reserved; +} AUX_DATA, *PAUX_DATA; #endif