mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 10:04:49 +00:00
Added mapping of access rights
svn path=/trunk/; revision=1579
This commit is contained in:
parent
6c726dfe40
commit
c06ef435fb
10 changed files with 132 additions and 64 deletions
|
@ -13,28 +13,41 @@
|
||||||
#ifndef __INCLUDE_PS_H
|
#ifndef __INCLUDE_PS_H
|
||||||
#define __INCLUDE_PS_H
|
#define __INCLUDE_PS_H
|
||||||
|
|
||||||
|
/* Thread access rights */
|
||||||
|
#define THREAD_TERMINATE (0x0001L)
|
||||||
|
#define THREAD_SUSPEND_RESUME (0x0002L)
|
||||||
|
#define THREAD_GET_CONTEXT (0x0008L)
|
||||||
|
#define THREAD_SET_CONTEXT (0x0010L)
|
||||||
|
#define THREAD_SET_INFORMATION (0x0020L)
|
||||||
|
#define THREAD_QUERY_INFORMATION (0x0040L)
|
||||||
|
#define THREAD_SET_THREAD_TOKEN (0x0080L)
|
||||||
|
#define THREAD_IMPERSONATE (0x0100L)
|
||||||
|
#define THREAD_DIRECT_IMPERSONATION (0x0200L)
|
||||||
|
|
||||||
#define THREAD_ALL_ACCESS (0x1f03ffL)
|
#define THREAD_ALL_ACCESS (0x1f03ffL)
|
||||||
#define THREAD_DIRECT_IMPERSONATION (512)
|
#define THREAD_READ (0x020048L)
|
||||||
#define THREAD_GET_CONTEXT (8)
|
#define THREAD_WRITE (0x020037L)
|
||||||
#define THREAD_IMPERSONATE (256)
|
#define THREAD_EXECUTE (0x120000L)
|
||||||
#define THREAD_QUERY_INFORMATION (64)
|
|
||||||
#define THREAD_SET_CONTEXT (16)
|
/* Process access rights */
|
||||||
#define THREAD_SET_INFORMATION (32)
|
#define PROCESS_TERMINATE (0x0001L)
|
||||||
#define THREAD_SET_THREAD_TOKEN (128)
|
#define PROCESS_CREATE_THREAD (0x0002L)
|
||||||
#define THREAD_SUSPEND_RESUME (2)
|
#define PROCESS_SET_SESSIONID (0x0004L)
|
||||||
#define THREAD_TERMINATE (1)
|
#define PROCESS_VM_OPERATION (0x0008L)
|
||||||
|
#define PROCESS_VM_READ (0x0010L)
|
||||||
|
#define PROCESS_VM_WRITE (0x0020L)
|
||||||
|
#define PROCESS_DUP_HANDLE (0x0040L)
|
||||||
|
#define PROCESS_CREATE_PROCESS (0x0080L)
|
||||||
|
#define PROCESS_SET_QUOTA (0x0100L)
|
||||||
|
#define PROCESS_SET_INFORMATION (0x0200L)
|
||||||
|
#define PROCESS_QUERY_INFORMATION (0x0400L)
|
||||||
|
|
||||||
#define PROCESS_ALL_ACCESS (0x1f0fffL)
|
#define PROCESS_ALL_ACCESS (0x1f0fffL)
|
||||||
#define PROCESS_CREATE_PROCESS (128)
|
#define PROCESS_READ (0x020410L)
|
||||||
#define PROCESS_CREATE_THREAD (2)
|
#define PROCESS_WRITE (0x020bebL)
|
||||||
#define PROCESS_DUP_HANDLE (64)
|
#define PROCESS_EXECUTE (0x120000L)
|
||||||
#define PROCESS_QUERY_INFORMATION (1024)
|
|
||||||
#define PROCESS_SET_INFORMATION (512)
|
|
||||||
#define PROCESS_TERMINATE (1)
|
|
||||||
#define PROCESS_VM_OPERATION (8)
|
|
||||||
#define PROCESS_VM_READ (16)
|
|
||||||
#define PROCESS_VM_WRITE (32)
|
|
||||||
|
|
||||||
|
/* Thread priorities */
|
||||||
#define THREAD_PRIORITY_ABOVE_NORMAL (1)
|
#define THREAD_PRIORITY_ABOVE_NORMAL (1)
|
||||||
#define THREAD_PRIORITY_BELOW_NORMAL (-1)
|
#define THREAD_PRIORITY_BELOW_NORMAL (-1)
|
||||||
#define THREAD_PRIORITY_HIGHEST (2)
|
#define THREAD_PRIORITY_HIGHEST (2)
|
||||||
|
|
|
@ -20,6 +20,20 @@
|
||||||
#define STANDARD_RIGHTS_ALL (0x1f0000L)
|
#define STANDARD_RIGHTS_ALL (0x1f0000L)
|
||||||
#define SPECIFIC_RIGHTS_ALL (0xffffL)
|
#define SPECIFIC_RIGHTS_ALL (0xffffL)
|
||||||
|
|
||||||
|
/* Token rights */
|
||||||
|
#define TOKEN_ASSIGN_PRIMARY (0x0001L)
|
||||||
|
#define TOKEN_DUPLICATE (0x0002L)
|
||||||
|
#define TOKEN_IMPERSONATE (0x0004L)
|
||||||
|
#define TOKEN_QUERY (0x0008L)
|
||||||
|
#define TOKEN_QUERY_SOURCE (0x0010L)
|
||||||
|
#define TOKEN_ADJUST_PRIVILEGES (0x0020L)
|
||||||
|
#define TOKEN_ADJUST_GROUPS (0x0040L)
|
||||||
|
#define TOKEN_ADJUST_DEFAULT (0x0080L)
|
||||||
|
|
||||||
|
#define TOKEN_ALL_ACCESS (0xf00ffL)
|
||||||
|
#define TOKEN_READ (0x20008L)
|
||||||
|
#define TOKEN_WRITE (0x200e0L)
|
||||||
|
#define TOKEN_EXECUTE (0x20000L)
|
||||||
|
|
||||||
typedef BOOL SECURITY_CONTEXT_TRACKING_MODE;
|
typedef BOOL SECURITY_CONTEXT_TRACKING_MODE;
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: file.c,v 1.11 2000/09/03 14:49:17 ekohl Exp $
|
/* $Id: file.c,v 1.12 2001/01/28 17:37:48 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -204,14 +204,6 @@ NtSetInformationFile (
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
PGENERIC_MAPPING
|
|
||||||
STDCALL
|
|
||||||
IoGetFileObjectGenericMapping(VOID)
|
|
||||||
{
|
|
||||||
UNIMPLEMENTED;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
STDCALL
|
STDCALL
|
||||||
NtQueryAttributesFile (
|
NtQueryAttributesFile (
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: iomgr.c,v 1.16 2000/10/05 19:15:50 ekohl Exp $
|
/* $Id: iomgr.c,v 1.17 2001/01/28 17:37:48 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -32,6 +32,11 @@ ULONG EXPORTED IoWriteOperationCount = 0; /* FIXME: unknown type */
|
||||||
ULONG EXPORTED IoWriteTransferCount = 0; /* FIXME: unknown type */
|
ULONG EXPORTED IoWriteTransferCount = 0; /* FIXME: unknown type */
|
||||||
ULONG EXPORTED IoStatisticsLock = 0; /* FIXME: unknown type */
|
ULONG EXPORTED IoStatisticsLock = 0; /* FIXME: unknown type */
|
||||||
|
|
||||||
|
static GENERIC_MAPPING IopFileMapping = {FILE_GENERIC_READ,
|
||||||
|
FILE_GENERIC_WRITE,
|
||||||
|
FILE_GENERIC_EXECUTE,
|
||||||
|
FILE_ALL_ACCESS};
|
||||||
|
|
||||||
/* FUNCTIONS ****************************************************************/
|
/* FUNCTIONS ****************************************************************/
|
||||||
|
|
||||||
VOID IopCloseFile(PVOID ObjectBody, ULONG HandleCount)
|
VOID IopCloseFile(PVOID ObjectBody, ULONG HandleCount)
|
||||||
|
@ -121,6 +126,7 @@ VOID IoInit (VOID)
|
||||||
IoDeviceObjectType->MaxHandles = ULONG_MAX;
|
IoDeviceObjectType->MaxHandles = ULONG_MAX;
|
||||||
IoDeviceObjectType->PagedPoolCharge = 0;
|
IoDeviceObjectType->PagedPoolCharge = 0;
|
||||||
IoDeviceObjectType->NonpagedPoolCharge = sizeof (DEVICE_OBJECT);
|
IoDeviceObjectType->NonpagedPoolCharge = sizeof (DEVICE_OBJECT);
|
||||||
|
IoDeviceObjectType->Mapping = &IopFileMapping;
|
||||||
IoDeviceObjectType->Dump = NULL;
|
IoDeviceObjectType->Dump = NULL;
|
||||||
IoDeviceObjectType->Open = NULL;
|
IoDeviceObjectType->Open = NULL;
|
||||||
IoDeviceObjectType->Close = NULL;
|
IoDeviceObjectType->Close = NULL;
|
||||||
|
@ -151,6 +157,7 @@ VOID IoInit (VOID)
|
||||||
IoFileObjectType->MaxHandles = ULONG_MAX;
|
IoFileObjectType->MaxHandles = ULONG_MAX;
|
||||||
IoFileObjectType->PagedPoolCharge = 0;
|
IoFileObjectType->PagedPoolCharge = 0;
|
||||||
IoFileObjectType->NonpagedPoolCharge = sizeof(FILE_OBJECT);
|
IoFileObjectType->NonpagedPoolCharge = sizeof(FILE_OBJECT);
|
||||||
|
IoFileObjectType->Mapping = &IopFileMapping;
|
||||||
IoFileObjectType->Dump = NULL;
|
IoFileObjectType->Dump = NULL;
|
||||||
IoFileObjectType->Open = NULL;
|
IoFileObjectType->Open = NULL;
|
||||||
IoFileObjectType->Close = IopCloseFile;
|
IoFileObjectType->Close = IopCloseFile;
|
||||||
|
@ -245,4 +252,11 @@ VOID IoInit (VOID)
|
||||||
&DeviceName);
|
&DeviceName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PGENERIC_MAPPING STDCALL
|
||||||
|
IoGetFileObjectGenericMapping(VOID)
|
||||||
|
{
|
||||||
|
return &IopFileMapping;
|
||||||
|
}
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: symlink.c,v 1.17 2000/10/22 16:36:50 ekohl Exp $
|
/* $Id: symlink.c,v 1.18 2001/01/28 17:37:48 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -30,6 +30,12 @@ typedef struct
|
||||||
|
|
||||||
POBJECT_TYPE IoSymbolicLinkType = NULL;
|
POBJECT_TYPE IoSymbolicLinkType = NULL;
|
||||||
|
|
||||||
|
static GENERIC_MAPPING IopSymbolicLinkMapping = {
|
||||||
|
STANDARD_RIGHTS_READ|SYMBOLIC_LINK_QUERY,
|
||||||
|
STANDARD_RIGHTS_WRITE,
|
||||||
|
STANDARD_RIGHTS_EXECUTE|SYMBOLIC_LINK_QUERY,
|
||||||
|
SYMBOLIC_LINK_ALL_ACCESS};
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
|
|
||||||
|
@ -171,6 +177,7 @@ VOID IoInitSymbolicLinkImplementation (VOID)
|
||||||
IoSymbolicLinkType->MaxHandles = ULONG_MAX;
|
IoSymbolicLinkType->MaxHandles = ULONG_MAX;
|
||||||
IoSymbolicLinkType->PagedPoolCharge = 0;
|
IoSymbolicLinkType->PagedPoolCharge = 0;
|
||||||
IoSymbolicLinkType->NonpagedPoolCharge = sizeof (SYMLNK_OBJECT);
|
IoSymbolicLinkType->NonpagedPoolCharge = sizeof (SYMLNK_OBJECT);
|
||||||
|
IoSymbolicLinkType->Mapping = &IopSymbolicLinkMapping;
|
||||||
IoSymbolicLinkType->Dump = NULL;
|
IoSymbolicLinkType->Dump = NULL;
|
||||||
IoSymbolicLinkType->Open = NULL;
|
IoSymbolicLinkType->Open = NULL;
|
||||||
IoSymbolicLinkType->Close = NULL;
|
IoSymbolicLinkType->Close = NULL;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: port.c,v 1.3 2000/10/22 16:36:51 ekohl Exp $
|
/* $Id: port.c,v 1.4 2001/01/28 17:38:12 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -30,6 +30,12 @@
|
||||||
POBJECT_TYPE ExPortType = NULL;
|
POBJECT_TYPE ExPortType = NULL;
|
||||||
ULONG EiNextLpcMessageId = 0;
|
ULONG EiNextLpcMessageId = 0;
|
||||||
|
|
||||||
|
static GENERIC_MAPPING ExpPortMapping = {
|
||||||
|
STANDARD_RIGHTS_READ,
|
||||||
|
STANDARD_RIGHTS_WRITE,
|
||||||
|
0,
|
||||||
|
PORT_ALL_ACCESS};
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
|
|
||||||
|
@ -45,6 +51,7 @@ NTSTATUS NiInitPort (VOID)
|
||||||
ExPortType->TotalHandles = 0;
|
ExPortType->TotalHandles = 0;
|
||||||
ExPortType->PagedPoolCharge = 0;
|
ExPortType->PagedPoolCharge = 0;
|
||||||
ExPortType->NonpagedPoolCharge = sizeof(EPORT);
|
ExPortType->NonpagedPoolCharge = sizeof(EPORT);
|
||||||
|
ExPortType->Mapping = &ExpPortMapping;
|
||||||
ExPortType->Dump = NULL;
|
ExPortType->Dump = NULL;
|
||||||
ExPortType->Open = NULL;
|
ExPortType->Open = NULL;
|
||||||
ExPortType->Close = NiClosePort;
|
ExPortType->Close = NiClosePort;
|
||||||
|
|
|
@ -24,6 +24,12 @@ POBJECT_TYPE ObDirectoryType = NULL;
|
||||||
|
|
||||||
PDIRECTORY_OBJECT NameSpaceRoot = NULL;
|
PDIRECTORY_OBJECT NameSpaceRoot = NULL;
|
||||||
|
|
||||||
|
static GENERIC_MAPPING ObpDirectoryMapping = {
|
||||||
|
STANDARD_RIGHTS_READ|DIRECTORY_QUERY|DIRECTORY_TRAVERSE,
|
||||||
|
STANDARD_RIGHTS_WRITE|DIRECTORY_CREATE_OBJECT|DIRECTORY_CREATE_SUBDIRECTORY,
|
||||||
|
STANDARD_RIGHTS_EXECUTE|DIRECTORY_QUERY|DIRECTORY_TRAVERSE,
|
||||||
|
DIRECTORY_ALL_ACCESS};
|
||||||
|
|
||||||
/* FUNCTIONS **************************************************************/
|
/* FUNCTIONS **************************************************************/
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS STDCALL
|
||||||
|
@ -83,8 +89,8 @@ DPRINT("Object %p\n", Object);
|
||||||
* ...
|
* ...
|
||||||
* ObjectType
|
* ObjectType
|
||||||
* ...
|
* ...
|
||||||
* Unknown3
|
* ParseContext
|
||||||
* ???
|
* ...
|
||||||
* AccessMode
|
* AccessMode
|
||||||
* ...
|
* ...
|
||||||
* DesiredAccess
|
* DesiredAccess
|
||||||
|
@ -100,7 +106,7 @@ DPRINT("Object %p\n", Object);
|
||||||
NTSTATUS STDCALL
|
NTSTATUS STDCALL
|
||||||
ObOpenObjectByName(POBJECT_ATTRIBUTES ObjectAttributes,
|
ObOpenObjectByName(POBJECT_ATTRIBUTES ObjectAttributes,
|
||||||
POBJECT_TYPE ObjectType,
|
POBJECT_TYPE ObjectType,
|
||||||
ULONG Unknown3, /* ?? */
|
PVOID ParseContext,
|
||||||
KPROCESSOR_MODE AccessMode,
|
KPROCESSOR_MODE AccessMode,
|
||||||
ACCESS_MASK DesiredAccess,
|
ACCESS_MASK DesiredAccess,
|
||||||
PACCESS_STATE PassedAccessState,
|
PACCESS_STATE PassedAccessState,
|
||||||
|
@ -308,6 +314,7 @@ VOID ObInit(VOID)
|
||||||
ObDirectoryType->MaxHandles = ULONG_MAX;
|
ObDirectoryType->MaxHandles = ULONG_MAX;
|
||||||
ObDirectoryType->PagedPoolCharge = 0;
|
ObDirectoryType->PagedPoolCharge = 0;
|
||||||
ObDirectoryType->NonpagedPoolCharge = sizeof(DIRECTORY_OBJECT);
|
ObDirectoryType->NonpagedPoolCharge = sizeof(DIRECTORY_OBJECT);
|
||||||
|
ObDirectoryType->Mapping = &ObpDirectoryMapping;
|
||||||
ObDirectoryType->Dump = NULL;
|
ObDirectoryType->Dump = NULL;
|
||||||
ObDirectoryType->Open = NULL;
|
ObDirectoryType->Open = NULL;
|
||||||
ObDirectoryType->Close = NULL;
|
ObDirectoryType->Close = NULL;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: process.c,v 1.55 2001/01/21 14:54:29 dwelch Exp $
|
/* $Id: process.c,v 1.56 2001/01/28 17:38:40 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -39,6 +39,11 @@ static LIST_ENTRY PsProcessListHead;
|
||||||
static KSPIN_LOCK PsProcessListLock;
|
static KSPIN_LOCK PsProcessListLock;
|
||||||
static ULONG PiNextProcessUniqueId = 0;
|
static ULONG PiNextProcessUniqueId = 0;
|
||||||
|
|
||||||
|
static GENERIC_MAPPING PiProcessMapping = {PROCESS_READ,
|
||||||
|
PROCESS_WRITE,
|
||||||
|
PROCESS_EXECUTE,
|
||||||
|
PROCESS_ALL_ACCESS};
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
|
|
||||||
|
@ -176,6 +181,7 @@ VOID PsInitProcessManagment(VOID)
|
||||||
PsProcessType->MaxHandles = ULONG_MAX;
|
PsProcessType->MaxHandles = ULONG_MAX;
|
||||||
PsProcessType->PagedPoolCharge = 0;
|
PsProcessType->PagedPoolCharge = 0;
|
||||||
PsProcessType->NonpagedPoolCharge = sizeof(EPROCESS);
|
PsProcessType->NonpagedPoolCharge = sizeof(EPROCESS);
|
||||||
|
PsProcessType->Mapping = &PiProcessMapping;
|
||||||
PsProcessType->Dump = NULL;
|
PsProcessType->Dump = NULL;
|
||||||
PsProcessType->Open = NULL;
|
PsProcessType->Open = NULL;
|
||||||
PsProcessType->Close = NULL;
|
PsProcessType->Close = NULL;
|
||||||
|
@ -799,10 +805,9 @@ NTSTATUS STDCALL NtSetInformationProcess(IN HANDLE ProcessHandle,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#if 0
|
|
||||||
/**********************************************************************
|
/**********************************************************************
|
||||||
* NAME INTERNAL
|
* NAME INTERNAL
|
||||||
* PiSnapshotProcessTable
|
* PiQuerySystemProcessInformation
|
||||||
*
|
*
|
||||||
* DESCRIPTION
|
* DESCRIPTION
|
||||||
* Compute the size of a process+thread snapshot as
|
* Compute the size of a process+thread snapshot as
|
||||||
|
@ -816,13 +821,13 @@ NTSTATUS STDCALL NtSetInformationProcess(IN HANDLE ProcessHandle,
|
||||||
* We assume (sizeof (PVOID) == sizeof (ULONG)) holds.
|
* We assume (sizeof (PVOID) == sizeof (ULONG)) holds.
|
||||||
*/
|
*/
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
STDCALL
|
PiQuerySystemProcessInformation(PVOID Buffer,
|
||||||
PiSnapshotProcessTable (
|
ULONG Size,
|
||||||
IN PVOID SnapshotBuffer,
|
PULONG ReqSize)
|
||||||
IN ULONG Size,
|
|
||||||
IN PULONG pRequiredSize
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
|
return STATUS_NOT_IMPLEMENTED;
|
||||||
|
|
||||||
|
#if 0
|
||||||
KIRQL OldIrql;
|
KIRQL OldIrql;
|
||||||
PLIST_ENTRY CurrentEntryP;
|
PLIST_ENTRY CurrentEntryP;
|
||||||
PEPROCESS CurrentP;
|
PEPROCESS CurrentP;
|
||||||
|
@ -839,13 +844,10 @@ PiSnapshotProcessTable (
|
||||||
PSYSTEM_THREAD_INFO pInfoT = NULL;
|
PSYSTEM_THREAD_INFO pInfoT = NULL;
|
||||||
|
|
||||||
|
|
||||||
/*
|
/* Lock the process list. */
|
||||||
* Lock the process list.
|
KeAcquireSpinLock(&PsProcessListLock,
|
||||||
*/
|
&OldIrql);
|
||||||
KeAcquireSpinLock (
|
|
||||||
& PsProcessListLock,
|
|
||||||
& OldIrql
|
|
||||||
);
|
|
||||||
/*
|
/*
|
||||||
* Scan the process list. Since the
|
* Scan the process list. Since the
|
||||||
* list is circular, the guard is false
|
* list is circular, the guard is false
|
||||||
|
@ -1010,7 +1012,7 @@ PiSnapshotProcessTable (
|
||||||
pInfoP->RelativeOffset = 0L;
|
pInfoP->RelativeOffset = 0L;
|
||||||
/* OK */
|
/* OK */
|
||||||
return STATUS_SUCCESS;
|
return STATUS_SUCCESS;
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: thread.c,v 1.67 2001/01/21 14:54:30 dwelch Exp $
|
/* $Id: thread.c,v 1.68 2001/01/28 17:38:40 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -49,6 +49,11 @@ ULONG PiNrRunnableThreads = 0;
|
||||||
|
|
||||||
static PETHREAD CurrentThread = NULL;
|
static PETHREAD CurrentThread = NULL;
|
||||||
|
|
||||||
|
static GENERIC_MAPPING PiThreadMapping = {THREAD_READ,
|
||||||
|
THREAD_WRITE,
|
||||||
|
THREAD_EXECUTE,
|
||||||
|
THREAD_ALL_ACCESS};
|
||||||
|
|
||||||
/* FUNCTIONS ***************************************************************/
|
/* FUNCTIONS ***************************************************************/
|
||||||
|
|
||||||
PKTHREAD STDCALL KeGetCurrentThread(VOID)
|
PKTHREAD STDCALL KeGetCurrentThread(VOID)
|
||||||
|
@ -273,6 +278,7 @@ PsInitThreadManagment(VOID)
|
||||||
PsThreadType->MaxHandles = 0;
|
PsThreadType->MaxHandles = 0;
|
||||||
PsThreadType->PagedPoolCharge = 0;
|
PsThreadType->PagedPoolCharge = 0;
|
||||||
PsThreadType->NonpagedPoolCharge = sizeof(ETHREAD);
|
PsThreadType->NonpagedPoolCharge = sizeof(ETHREAD);
|
||||||
|
PsThreadType->Mapping = &PiThreadMapping;
|
||||||
PsThreadType->Dump = NULL;
|
PsThreadType->Dump = NULL;
|
||||||
PsThreadType->Open = NULL;
|
PsThreadType->Open = NULL;
|
||||||
PsThreadType->Close = PiCloseThread;
|
PsThreadType->Close = PiCloseThread;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: token.c,v 1.8 2000/07/01 22:38:15 ekohl Exp $
|
/* $Id: token.c,v 1.9 2001/01/28 17:42:56 ekohl Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -21,6 +21,11 @@
|
||||||
|
|
||||||
POBJECT_TYPE EXPORTED SeTokenType = NULL;
|
POBJECT_TYPE EXPORTED SeTokenType = NULL;
|
||||||
|
|
||||||
|
static GENERIC_MAPPING SepTokenMapping = {TOKEN_READ,
|
||||||
|
TOKEN_WRITE,
|
||||||
|
TOKEN_EXECUTE,
|
||||||
|
TOKEN_ALL_ACCESS};
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
VOID SepFreeProxyData(PVOID ProxyData)
|
VOID SepFreeProxyData(PVOID ProxyData)
|
||||||
|
@ -227,6 +232,7 @@ VOID SeInitializeTokenManager(VOID)
|
||||||
SeTokenType->TotalHandles = 0;
|
SeTokenType->TotalHandles = 0;
|
||||||
SeTokenType->PagedPoolCharge = 0;
|
SeTokenType->PagedPoolCharge = 0;
|
||||||
SeTokenType->NonpagedPoolCharge = 0;
|
SeTokenType->NonpagedPoolCharge = 0;
|
||||||
|
SeTokenType->Mapping = &SepTokenMapping;
|
||||||
SeTokenType->Dump = NULL;
|
SeTokenType->Dump = NULL;
|
||||||
SeTokenType->Open = NULL;
|
SeTokenType->Open = NULL;
|
||||||
SeTokenType->Close = NULL;
|
SeTokenType->Close = NULL;
|
||||||
|
|
Loading…
Reference in a new issue