From: Amine Khaldi Date: Fri, 5 Mar 2010 18:20:08 +0000 (+0000) Subject: - Move more stuff to wdm.h X-Git-Tag: backups/header-work@57446~242 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=d1a7b6136cd05febf727ef9a546c1e721ff93207 - Move more stuff to wdm.h - Improve more Ps* and Se* definitions svn path=/branches/header-work/; revision=45877 --- diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h index a2aebe127f3..ec6e1c0b727 100644 --- a/include/ddk/wdm.h +++ b/include/ddk/wdm.h @@ -2400,6 +2400,68 @@ typedef struct _ACCESS_STATE { UNICODE_STRING ObjectTypeName; } ACCESS_STATE, *PACCESS_STATE; +/****************************************************************************** + * Security Manager Functions * + ******************************************************************************/ + +#if (NTDDI_VERSION >= NTDDI_WIN2K) + +NTKERNELAPI +BOOLEAN +NTAPI +SeAccessCheck( + IN PSECURITY_DESCRIPTOR SecurityDescriptor, + IN PSECURITY_SUBJECT_CONTEXT SubjectSecurityContext, + IN BOOLEAN SubjectContextLocked, + IN ACCESS_MASK DesiredAccess, + IN ACCESS_MASK PreviouslyGrantedAccess, + OUT PPRIVILEGE_SET *Privileges OPTIONAL, + IN PGENERIC_MAPPING GenericMapping, + IN KPROCESSOR_MODE AccessMode, + OUT PACCESS_MASK GrantedAccess, + OUT PNTSTATUS AccessStatus); + +NTKERNELAPI +NTSTATUS +NTAPI +SeAssignSecurity( + IN PSECURITY_DESCRIPTOR ParentDescriptor OPTIONAL, + IN PSECURITY_DESCRIPTOR ExplicitDescriptor OPTIONAL, + OUT PSECURITY_DESCRIPTOR *NewDescriptor, + IN BOOLEAN IsDirectoryObject, + IN PSECURITY_SUBJECT_CONTEXT SubjectContext, + IN PGENERIC_MAPPING GenericMapping, + IN POOL_TYPE PoolType); + +NTKERNELAPI +NTSTATUS +NTAPI +SeAssignSecurityEx( + IN PSECURITY_DESCRIPTOR ParentDescriptor OPTIONAL, + IN PSECURITY_DESCRIPTOR ExplicitDescriptor OPTIONAL, + OUT PSECURITY_DESCRIPTOR *NewDescriptor, + IN GUID *ObjectType OPTIONAL, + IN BOOLEAN IsDirectoryObject, + IN ULONG AutoInheritFlags, + IN PSECURITY_SUBJECT_CONTEXT SubjectContext, + IN PGENERIC_MAPPING GenericMapping, + IN POOL_TYPE PoolType); + +NTKERNELAPI +NTSTATUS +NTAPI +SeDeassignSecurity( + IN OUT PSECURITY_DESCRIPTOR *SecurityDescriptor); + +NTKERNELAPI +BOOLEAN +NTAPI +SeValidSecurityDescriptor( + IN ULONG Length, + IN PSECURITY_DESCRIPTOR SecurityDescriptor); + +#endif + /****************************************************************************** * Power Types * @@ -9458,6 +9520,53 @@ ObReleaseObjectSecurity( #endif +/****************************************************************************** + * Process Manager Functions * + ******************************************************************************/ + +/* + * PEPROCESS + * PsGetCurrentProcess(VOID) + */ +#define PsGetCurrentProcess IoGetCurrentProcess + +#if !defined(_PSGETCURRENTTHREAD_) + +#define _PSGETCURRENTTHREAD_ + +FORCEINLINE +PETHREAD +NTAPI +PsGetCurrentThread ( + VOID) +{ + return (PETHREAD)KeGetCurrentThread(); +} + +#endif + +#if (NTDDI_VERSION >= NTDDI_WIN2K) + +NTKERNELAPI +NTSTATUS +NTAPI +PsCreateSystemThread( + OUT PHANDLE ThreadHandle, + IN ULONG DesiredAccess, + IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, + IN HANDLE ProcessHandle OPTIONAL, + OUT PCLIENT_ID ClientId OPTIONAL, + IN PKSTART_ROUTINE StartRoutine, + IN PVOID StartContext OPTIONAL); + +NTKERNELAPI +NTSTATUS +NTAPI +PsTerminateSystemThread( + IN NTSTATUS ExitStatus); + +#define + /****************************************************************************** * Unsorted * diff --git a/include/ddk/winddk.h b/include/ddk/winddk.h index 24fff7931cc..311c903d2b9 100644 --- a/include/ddk/winddk.h +++ b/include/ddk/winddk.h @@ -3324,37 +3324,12 @@ PsCreateSystemProcess( IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes); -NTKERNELAPI -NTSTATUS -NTAPI -PsCreateSystemThread( - OUT PHANDLE ThreadHandle, - IN ULONG DesiredAccess, - IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, - IN HANDLE ProcessHandle OPTIONAL, - OUT PCLIENT_ID ClientId OPTIONAL, - IN PKSTART_ROUTINE StartRoutine, - IN PVOID StartContext); - -/* - * PEPROCESS - * PsGetCurrentProcess(VOID) - */ -#define PsGetCurrentProcess IoGetCurrentProcess - NTKERNELAPI HANDLE NTAPI PsGetCurrentProcessId( VOID); -/* - * PETHREAD - * PsGetCurrentThread(VOID) - */ -#define PsGetCurrentThread() \ - ((PETHREAD) KeGetCurrentThread()) - NTKERNELAPI HANDLE NTAPI @@ -3406,64 +3381,10 @@ NTAPI PsSetLoadImageNotifyRoutine( IN PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine); -NTKERNELAPI -NTSTATUS -NTAPI -PsTerminateSystemThread( - IN NTSTATUS ExitStatus); - extern NTSYSAPI PEPROCESS PsInitialSystemProcess; - /** Security reference monitor routines **/ -NTKERNELAPI -BOOLEAN -NTAPI -SeAccessCheck( - IN PSECURITY_DESCRIPTOR SecurityDescriptor, - IN PSECURITY_SUBJECT_CONTEXT SubjectSecurityContext, - IN BOOLEAN SubjectContextLocked, - IN ACCESS_MASK DesiredAccess, - IN ACCESS_MASK PreviouslyGrantedAccess, - OUT PPRIVILEGE_SET *Privileges OPTIONAL, - IN PGENERIC_MAPPING GenericMapping, - IN KPROCESSOR_MODE AccessMode, - OUT PACCESS_MASK GrantedAccess, - OUT PNTSTATUS AccessStatus); - -NTKERNELAPI -NTSTATUS -NTAPI -SeAssignSecurity( - IN PSECURITY_DESCRIPTOR ParentDescriptor OPTIONAL, - IN PSECURITY_DESCRIPTOR ExplicitDescriptor OPTIONAL, - OUT PSECURITY_DESCRIPTOR *NewDescriptor, - IN BOOLEAN IsDirectoryObject, - IN PSECURITY_SUBJECT_CONTEXT SubjectContext, - IN PGENERIC_MAPPING GenericMapping, - IN POOL_TYPE PoolType); - -NTKERNELAPI -NTSTATUS -NTAPI -SeAssignSecurityEx( - IN PSECURITY_DESCRIPTOR ParentDescriptor OPTIONAL, - IN PSECURITY_DESCRIPTOR ExplicitDescriptor OPTIONAL, - OUT PSECURITY_DESCRIPTOR *NewDescriptor, - IN GUID *ObjectType OPTIONAL, - IN BOOLEAN IsDirectoryObject, - IN ULONG AutoInheritFlags, - IN PSECURITY_SUBJECT_CONTEXT SubjectContext, - IN PGENERIC_MAPPING GenericMapping, - IN POOL_TYPE PoolType); - -NTKERNELAPI -NTSTATUS -NTAPI -SeDeassignSecurity( - IN OUT PSECURITY_DESCRIPTOR *SecurityDescriptor); - NTKERNELAPI BOOLEAN NTAPI @@ -3471,15 +3392,6 @@ SeSinglePrivilegeCheck( LUID PrivilegeValue, KPROCESSOR_MODE PreviousMode); -NTKERNELAPI -BOOLEAN -NTAPI -SeValidSecurityDescriptor( - IN ULONG Length, - IN PSECURITY_DESCRIPTOR SecurityDescriptor); - - - /** NtXxx routines **/ NTSYSCALLAPI