mirror of
https://github.com/reactos/reactos.git
synced 2024-08-17 00:48:51 +00:00
- Move more stuff to wdm.h
- Add missing SE_* defines - Fix SE_MAX_WELL_KNOWN_PRIVILEGE define svn path=/branches/header-work/; revision=45726
This commit is contained in:
parent
e9fc612764
commit
820ea55592
|
@ -2422,6 +2422,100 @@ typedef struct _IO_COMPLETION_CONTEXT {
|
||||||
#define FO_SKIP_SET_EVENT 0x04000000
|
#define FO_SKIP_SET_EVENT 0x04000000
|
||||||
#define FO_SKIP_SET_FAST_IO 0x08000000
|
#define FO_SKIP_SET_FAST_IO 0x08000000
|
||||||
|
|
||||||
|
typedef struct _FILE_OBJECT
|
||||||
|
{
|
||||||
|
CSHORT Type;
|
||||||
|
CSHORT Size;
|
||||||
|
PDEVICE_OBJECT DeviceObject;
|
||||||
|
PVPB Vpb;
|
||||||
|
PVOID FsContext;
|
||||||
|
PVOID FsContext2;
|
||||||
|
PSECTION_OBJECT_POINTERS SectionObjectPointer;
|
||||||
|
PVOID PrivateCacheMap;
|
||||||
|
NTSTATUS FinalStatus;
|
||||||
|
struct _FILE_OBJECT *RelatedFileObject;
|
||||||
|
BOOLEAN LockOperation;
|
||||||
|
BOOLEAN DeletePending;
|
||||||
|
BOOLEAN ReadAccess;
|
||||||
|
BOOLEAN WriteAccess;
|
||||||
|
BOOLEAN DeleteAccess;
|
||||||
|
BOOLEAN SharedRead;
|
||||||
|
BOOLEAN SharedWrite;
|
||||||
|
BOOLEAN SharedDelete;
|
||||||
|
ULONG Flags;
|
||||||
|
UNICODE_STRING FileName;
|
||||||
|
LARGE_INTEGER CurrentByteOffset;
|
||||||
|
volatile ULONG Waiters;
|
||||||
|
volatile ULONG Busy;
|
||||||
|
PVOID LastLock;
|
||||||
|
KEVENT Lock;
|
||||||
|
KEVENT Event;
|
||||||
|
volatile PIO_COMPLETION_CONTEXT CompletionContext;
|
||||||
|
KSPIN_LOCK IrpListLock;
|
||||||
|
LIST_ENTRY IrpList;
|
||||||
|
volatile PVOID FileObjectExtension;
|
||||||
|
} FILE_OBJECT;
|
||||||
|
typedef struct _FILE_OBJECT *PFILE_OBJECT;
|
||||||
|
|
||||||
|
typedef enum _SECURITY_OPERATION_CODE {
|
||||||
|
SetSecurityDescriptor,
|
||||||
|
QuerySecurityDescriptor,
|
||||||
|
DeleteSecurityDescriptor,
|
||||||
|
AssignSecurityDescriptor
|
||||||
|
} SECURITY_OPERATION_CODE, *PSECURITY_OPERATION_CODE;
|
||||||
|
|
||||||
|
#define INITIAL_PRIVILEGE_COUNT 3
|
||||||
|
|
||||||
|
typedef struct _INITIAL_PRIVILEGE_SET {
|
||||||
|
ULONG PrivilegeCount;
|
||||||
|
ULONG Control;
|
||||||
|
LUID_AND_ATTRIBUTES Privilege[INITIAL_PRIVILEGE_COUNT];
|
||||||
|
} INITIAL_PRIVILEGE_SET, * PINITIAL_PRIVILEGE_SET;
|
||||||
|
|
||||||
|
#define SE_MIN_WELL_KNOWN_PRIVILEGE 2
|
||||||
|
#define SE_CREATE_TOKEN_PRIVILEGE 2
|
||||||
|
#define SE_ASSIGNPRIMARYTOKEN_PRIVILEGE 3
|
||||||
|
#define SE_LOCK_MEMORY_PRIVILEGE 4
|
||||||
|
#define SE_INCREASE_QUOTA_PRIVILEGE 5
|
||||||
|
#define SE_MACHINE_ACCOUNT_PRIVILEGE 6
|
||||||
|
#define SE_TCB_PRIVILEGE 7
|
||||||
|
#define SE_SECURITY_PRIVILEGE 8
|
||||||
|
#define SE_TAKE_OWNERSHIP_PRIVILEGE 9
|
||||||
|
#define SE_LOAD_DRIVER_PRIVILEGE 10
|
||||||
|
#define SE_SYSTEM_PROFILE_PRIVILEGE 11
|
||||||
|
#define SE_SYSTEMTIME_PRIVILEGE 12
|
||||||
|
#define SE_PROF_SINGLE_PROCESS_PRIVILEGE 13
|
||||||
|
#define SE_INC_BASE_PRIORITY_PRIVILEGE 14
|
||||||
|
#define SE_CREATE_PAGEFILE_PRIVILEGE 15
|
||||||
|
#define SE_CREATE_PERMANENT_PRIVILEGE 16
|
||||||
|
#define SE_BACKUP_PRIVILEGE 17
|
||||||
|
#define SE_RESTORE_PRIVILEGE 18
|
||||||
|
#define SE_SHUTDOWN_PRIVILEGE 19
|
||||||
|
#define SE_DEBUG_PRIVILEGE 20
|
||||||
|
#define SE_AUDIT_PRIVILEGE 21
|
||||||
|
#define SE_SYSTEM_ENVIRONMENT_PRIVILEGE 22
|
||||||
|
#define SE_CHANGE_NOTIFY_PRIVILEGE 23
|
||||||
|
#define SE_REMOTE_SHUTDOWN_PRIVILEGE 24
|
||||||
|
#define SE_UNDOCK_PRIVILEGE 25
|
||||||
|
#define SE_SYNC_AGENT_PRIVILEGE 26
|
||||||
|
#define SE_ENABLE_DELEGATION_PRIVILEGE 27
|
||||||
|
#define SE_MANAGE_VOLUME_PRIVILEGE 28
|
||||||
|
#define SE_IMPERSONATE_PRIVILEGE 29
|
||||||
|
#define SE_CREATE_GLOBAL_PRIVILEGE 30
|
||||||
|
#define SE_TRUSTED_CREDMAN_ACCESS_PRIVILEGE 31
|
||||||
|
#define SE_RELABEL_PRIVILEGE 32
|
||||||
|
#define SE_INC_WORKING_SET_PRIVILEGE 33
|
||||||
|
#define SE_TIME_ZONE_PRIVILEGE 34
|
||||||
|
#define SE_CREATE_SYMBOLIC_LINK_PRIVILEGE 35
|
||||||
|
#define SE_MAX_WELL_KNOWN_PRIVILEGE SE_CREATE_SYMBOLIC_LINK_PRIVILEGE
|
||||||
|
|
||||||
|
typedef struct _SECURITY_SUBJECT_CONTEXT {
|
||||||
|
PACCESS_TOKEN ClientToken;
|
||||||
|
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
|
||||||
|
PACCESS_TOKEN PrimaryToken;
|
||||||
|
PVOID ProcessAuditId;
|
||||||
|
} SECURITY_SUBJECT_CONTEXT, *PSECURITY_SUBJECT_CONTEXT;
|
||||||
|
|
||||||
/* Simple types */
|
/* Simple types */
|
||||||
typedef UCHAR KPROCESSOR_MODE;
|
typedef UCHAR KPROCESSOR_MODE;
|
||||||
typedef LONG KPRIORITY;
|
typedef LONG KPRIORITY;
|
||||||
|
|
|
@ -1131,95 +1131,7 @@ typedef union _FILE_SEGMENT_ELEMENT {
|
||||||
ULONGLONG Alignment;
|
ULONGLONG Alignment;
|
||||||
}FILE_SEGMENT_ELEMENT, *PFILE_SEGMENT_ELEMENT;
|
}FILE_SEGMENT_ELEMENT, *PFILE_SEGMENT_ELEMENT;
|
||||||
|
|
||||||
typedef struct _FILE_OBJECT
|
|
||||||
{
|
|
||||||
CSHORT Type;
|
|
||||||
CSHORT Size;
|
|
||||||
PDEVICE_OBJECT DeviceObject;
|
|
||||||
PVPB Vpb;
|
|
||||||
PVOID FsContext;
|
|
||||||
PVOID FsContext2;
|
|
||||||
PSECTION_OBJECT_POINTERS SectionObjectPointer;
|
|
||||||
PVOID PrivateCacheMap;
|
|
||||||
NTSTATUS FinalStatus;
|
|
||||||
struct _FILE_OBJECT *RelatedFileObject;
|
|
||||||
BOOLEAN LockOperation;
|
|
||||||
BOOLEAN DeletePending;
|
|
||||||
BOOLEAN ReadAccess;
|
|
||||||
BOOLEAN WriteAccess;
|
|
||||||
BOOLEAN DeleteAccess;
|
|
||||||
BOOLEAN SharedRead;
|
|
||||||
BOOLEAN SharedWrite;
|
|
||||||
BOOLEAN SharedDelete;
|
|
||||||
ULONG Flags;
|
|
||||||
UNICODE_STRING FileName;
|
|
||||||
LARGE_INTEGER CurrentByteOffset;
|
|
||||||
volatile ULONG Waiters;
|
|
||||||
volatile ULONG Busy;
|
|
||||||
PVOID LastLock;
|
|
||||||
KEVENT Lock;
|
|
||||||
KEVENT Event;
|
|
||||||
volatile PIO_COMPLETION_CONTEXT CompletionContext;
|
|
||||||
KSPIN_LOCK IrpListLock;
|
|
||||||
LIST_ENTRY IrpList;
|
|
||||||
volatile PVOID FileObjectExtension;
|
|
||||||
} FILE_OBJECT;
|
|
||||||
typedef struct _FILE_OBJECT *PFILE_OBJECT;
|
|
||||||
|
|
||||||
typedef enum _SECURITY_OPERATION_CODE {
|
|
||||||
SetSecurityDescriptor,
|
|
||||||
QuerySecurityDescriptor,
|
|
||||||
DeleteSecurityDescriptor,
|
|
||||||
AssignSecurityDescriptor
|
|
||||||
} SECURITY_OPERATION_CODE, *PSECURITY_OPERATION_CODE;
|
|
||||||
|
|
||||||
#define INITIAL_PRIVILEGE_COUNT 3
|
|
||||||
|
|
||||||
typedef struct _INITIAL_PRIVILEGE_SET {
|
|
||||||
ULONG PrivilegeCount;
|
|
||||||
ULONG Control;
|
|
||||||
LUID_AND_ATTRIBUTES Privilege[INITIAL_PRIVILEGE_COUNT];
|
|
||||||
} INITIAL_PRIVILEGE_SET, * PINITIAL_PRIVILEGE_SET;
|
|
||||||
|
|
||||||
#define SE_MIN_WELL_KNOWN_PRIVILEGE 2
|
|
||||||
#define SE_CREATE_TOKEN_PRIVILEGE 2
|
|
||||||
#define SE_ASSIGNPRIMARYTOKEN_PRIVILEGE 3
|
|
||||||
#define SE_LOCK_MEMORY_PRIVILEGE 4
|
|
||||||
#define SE_INCREASE_QUOTA_PRIVILEGE 5
|
|
||||||
#define SE_UNSOLICITED_INPUT_PRIVILEGE 6
|
#define SE_UNSOLICITED_INPUT_PRIVILEGE 6
|
||||||
#define SE_MACHINE_ACCOUNT_PRIVILEGE 6
|
|
||||||
#define SE_TCB_PRIVILEGE 7
|
|
||||||
#define SE_SECURITY_PRIVILEGE 8
|
|
||||||
#define SE_TAKE_OWNERSHIP_PRIVILEGE 9
|
|
||||||
#define SE_LOAD_DRIVER_PRIVILEGE 10
|
|
||||||
#define SE_SYSTEM_PROFILE_PRIVILEGE 11
|
|
||||||
#define SE_SYSTEMTIME_PRIVILEGE 12
|
|
||||||
#define SE_PROF_SINGLE_PROCESS_PRIVILEGE 13
|
|
||||||
#define SE_INC_BASE_PRIORITY_PRIVILEGE 14
|
|
||||||
#define SE_CREATE_PAGEFILE_PRIVILEGE 15
|
|
||||||
#define SE_CREATE_PERMANENT_PRIVILEGE 16
|
|
||||||
#define SE_BACKUP_PRIVILEGE 17
|
|
||||||
#define SE_RESTORE_PRIVILEGE 18
|
|
||||||
#define SE_SHUTDOWN_PRIVILEGE 19
|
|
||||||
#define SE_DEBUG_PRIVILEGE 20
|
|
||||||
#define SE_AUDIT_PRIVILEGE 21
|
|
||||||
#define SE_SYSTEM_ENVIRONMENT_PRIVILEGE 22
|
|
||||||
#define SE_CHANGE_NOTIFY_PRIVILEGE 23
|
|
||||||
#define SE_REMOTE_SHUTDOWN_PRIVILEGE 24
|
|
||||||
#define SE_UNDOCK_PRIVILEGE 25
|
|
||||||
#define SE_SYNC_AGENT_PRIVILEGE 26
|
|
||||||
#define SE_ENABLE_DELEGATION_PRIVILEGE 27
|
|
||||||
#define SE_MANAGE_VOLUME_PRIVILEGE 28
|
|
||||||
#define SE_IMPERSONATE_PRIVILEGE 29
|
|
||||||
#define SE_CREATE_GLOBAL_PRIVILEGE 30
|
|
||||||
#define SE_MAX_WELL_KNOWN_PRIVILEGE SE_CREATE_GLOBAL_PRIVILEGE
|
|
||||||
|
|
||||||
typedef struct _SECURITY_SUBJECT_CONTEXT {
|
|
||||||
PACCESS_TOKEN ClientToken;
|
|
||||||
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
|
|
||||||
PACCESS_TOKEN PrimaryToken;
|
|
||||||
PVOID ProcessAuditId;
|
|
||||||
} SECURITY_SUBJECT_CONTEXT, *PSECURITY_SUBJECT_CONTEXT;
|
|
||||||
|
|
||||||
#include <pshpack4.h>
|
#include <pshpack4.h>
|
||||||
typedef struct _ACCESS_STATE {
|
typedef struct _ACCESS_STATE {
|
||||||
|
|
Loading…
Reference in a new issue