mirror of
https://github.com/reactos/reactos.git
synced 2024-12-27 17:44:45 +00:00
Added some more prototypes
svn path=/trunk/; revision=2641
This commit is contained in:
parent
e21b78b3e3
commit
14f393cb80
5 changed files with 159 additions and 50 deletions
|
@ -1,11 +1,53 @@
|
|||
#ifndef _INCLUDE_DDK_OBFUNCS_H
|
||||
#define _INCLUDE_DDK_OBFUNCS_H
|
||||
/* OBJECT MANAGER ************************************************************/
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObCreateObject(PHANDLE Handle,
|
||||
ACCESS_MASK DesiredAccess,
|
||||
POBJECT_ATTRIBUTES ObjectAttributes,
|
||||
POBJECT_TYPE Type,
|
||||
PVOID *Object);
|
||||
ObAssignSecurity(IN PACCESS_STATE AccessState,
|
||||
IN PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
IN PVOID Object,
|
||||
IN POBJECT_TYPE Type);
|
||||
|
||||
/*
|
||||
BOOLEAN STDCALL
|
||||
ObCheckCreateObjectAccess(IN PVOID Object,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
ULONG Param3,
|
||||
ULONG Param4,
|
||||
ULONG Param5,
|
||||
IN KPROCESSOR_MODE AccessMode,
|
||||
OUT PNTSTATUS AccessStatus);
|
||||
*/
|
||||
|
||||
/*
|
||||
BOOLEAN STDCALL
|
||||
ObCheckObjectAccess(IN PVOID Object,
|
||||
ULONG Param2,
|
||||
ULONG Param3,
|
||||
IN KPROCESSOR_MODE AccessMode,
|
||||
OUT PACCESS_MODE GrantedAccess);
|
||||
*/
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObCreateObject(OUT PHANDLE Handle,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
IN POBJECT_ATTRIBUTES ObjectAttributes,
|
||||
IN POBJECT_TYPE Type,
|
||||
OUT PVOID *Object);
|
||||
|
||||
#if 0
|
||||
/* original implementation */
|
||||
NTSTATUS STDCALL
|
||||
ObCreateObject(IN KPROCESSOR_MODE ObjectAttributesAccessMode OPTIONAL,
|
||||
IN POBJECT_TYPE Type,
|
||||
IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
|
||||
IN KPROCESSOR_MODE AccessMode,
|
||||
IN OUT PVOID ParseContext OPTIONAL,
|
||||
IN ULONG ObjectSize,
|
||||
IN ULONG PagedPoolCharge OPTIONAL,
|
||||
IN ULONG NonPagedPoolCharge OPTIONAL,
|
||||
OUT PVOID *Object);
|
||||
#endif
|
||||
|
||||
VOID FASTCALL
|
||||
ObfDereferenceObject(IN PVOID Object);
|
||||
|
@ -19,16 +61,29 @@ ObfReferenceObject(IN PVOID Object);
|
|||
#define ObReferenceObject(Object) \
|
||||
ObfReferenceObject(Object)
|
||||
|
||||
/*
|
||||
BOOLEAN STDCALL
|
||||
ObFindHandleForObject(ULONG Param1,
|
||||
ULONG Param2,
|
||||
ULONG Param3,
|
||||
ULONG Param4);
|
||||
*/
|
||||
|
||||
ULONG STDCALL
|
||||
ObGetObjectPointerCount(IN PVOID Object);
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObInsertObject(PVOID Object,
|
||||
PACCESS_STATE PassedAccessState,
|
||||
ACCESS_MASK DesiredAccess,
|
||||
ULONG AdditionalReferences,
|
||||
PVOID* ReferencedObject,
|
||||
PHANDLE Handle);
|
||||
ObGetObjectSecurity(IN PVOID Object,
|
||||
OUT PSECURITY_DESCRIPTOR *SecurityDescriptor,
|
||||
OUT PBOOLEAN MemoryAllocated);
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObInsertObject(IN PVOID Object,
|
||||
IN PACCESS_STATE PassedAccessState OPTIONAL,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
IN ULONG AdditionalReferences,
|
||||
OUT PVOID* ReferencedObject OPTIONAL,
|
||||
OUT PHANDLE Handle);
|
||||
|
||||
VOID STDCALL
|
||||
ObMakeTemporaryObject(IN PVOID ObjectBody);
|
||||
|
@ -36,7 +91,7 @@ ObMakeTemporaryObject(IN PVOID ObjectBody);
|
|||
NTSTATUS STDCALL
|
||||
ObOpenObjectByName(IN POBJECT_ATTRIBUTES ObjectAttributes,
|
||||
IN POBJECT_TYPE ObjectType,
|
||||
IN PVOID ParseContext,
|
||||
IN OUT PVOID ParseContext OPTIONAL,
|
||||
IN KPROCESSOR_MODE AccessMode,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
IN PACCESS_STATE PassedAccessState,
|
||||
|
@ -45,12 +100,22 @@ ObOpenObjectByName(IN POBJECT_ATTRIBUTES ObjectAttributes,
|
|||
NTSTATUS STDCALL
|
||||
ObOpenObjectByPointer(IN PVOID Object,
|
||||
IN ULONG HandleAttributes,
|
||||
IN PACCESS_STATE PassedAccessState,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
IN POBJECT_TYPE ObjectType,
|
||||
IN PACCESS_STATE PassedAccessState OPTIONAL,
|
||||
IN ACCESS_MASK DesiredAccess OPTIONAL,
|
||||
IN POBJECT_TYPE ObjectType OPTIONAL,
|
||||
IN KPROCESSOR_MODE AccessMode,
|
||||
OUT PHANDLE Handle);
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObQueryNameString(IN PVOID Object,
|
||||
OUT POBJECT_NAME_INFORMATION ObjectNameInfo,
|
||||
IN ULONG Length,
|
||||
OUT PULONG ReturnLength);
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObQueryObjectAuditingByHandle(IN HANDLE Handle,
|
||||
OUT PBOOLEAN GenerateOnClose);
|
||||
|
||||
/*
|
||||
* FUNCTION: Performs access validation on an object handle and if access
|
||||
* is granted returns a pointer to the object's body
|
||||
|
@ -66,12 +131,12 @@ ObOpenObjectByPointer(IN PVOID Object,
|
|||
* RETURNS: Status
|
||||
*/
|
||||
NTSTATUS STDCALL
|
||||
ObReferenceObjectByHandle(HANDLE Handle,
|
||||
ACCESS_MASK DesiredAccess,
|
||||
POBJECT_TYPE ObjectType,
|
||||
KPROCESSOR_MODE AccessMode,
|
||||
PVOID* Object,
|
||||
POBJECT_HANDLE_INFORMATION HandleInfo);
|
||||
ObReferenceObjectByHandle(IN HANDLE Handle,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
IN POBJECT_TYPE ObjectType OPTIONAL,
|
||||
IN KPROCESSOR_MODE AccessMode,
|
||||
OUT PVOID* Object,
|
||||
OUT POBJECT_HANDLE_INFORMATION HandleInfo OPTIONAL);
|
||||
|
||||
/*
|
||||
* FUNCTION: Increments the reference count for a given object
|
||||
|
@ -83,18 +148,33 @@ ObReferenceObjectByHandle(HANDLE Handle,
|
|||
* RETURNS: Status
|
||||
*/
|
||||
NTSTATUS STDCALL
|
||||
ObReferenceObjectByPointer(PVOID Object,
|
||||
ACCESS_MASK DesiredAccess,
|
||||
POBJECT_TYPE ObjectType,
|
||||
KPROCESSOR_MODE AccessMode);
|
||||
ObReferenceObjectByPointer(IN PVOID Object,
|
||||
IN ACCESS_MASK DesiredAccess,
|
||||
IN POBJECT_TYPE ObjectType,
|
||||
IN KPROCESSOR_MODE AccessMode);
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObReferenceObjectByName(PUNICODE_STRING ObjectPath,
|
||||
ULONG Attributes,
|
||||
PACCESS_STATE PassedAccessState,
|
||||
ACCESS_MASK DesiredAccess,
|
||||
POBJECT_TYPE ObjectType,
|
||||
KPROCESSOR_MODE AccessMode,
|
||||
PVOID ParseContext,
|
||||
PVOID* ObjectPtr);
|
||||
ObReferenceObjectByName(IN PUNICODE_STRING ObjectPath,
|
||||
IN ULONG Attributes,
|
||||
IN PACCESS_STATE PassedAccessState OPTIONAL,
|
||||
IN ACCESS_MASK DesiredAccess OPTIONAL,
|
||||
IN POBJECT_TYPE ObjectType,
|
||||
IN KPROCESSOR_MODE AccessMode,
|
||||
IN OUT PVOID ParseContext OPTIONAL,
|
||||
OUT PVOID* ObjectPtr);
|
||||
|
||||
VOID STDCALL
|
||||
ObReleaseObjectSecurity(IN PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
IN BOOLEAN MemoryAllocated);
|
||||
|
||||
/*
|
||||
NTSTATUS STDCALL
|
||||
ObSetSecurityDescriptorInfo(IN PVOID Object,
|
||||
IN PSECURITY_INFORMATION SecurityInformation,
|
||||
IN PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
ULONG Param4,
|
||||
IN POOL_TYPE PoolType,
|
||||
IN PGENERIC_MAPPING GenericMapping);
|
||||
*/
|
||||
|
||||
#endif /* ndef _INCLUDE_DDK_OBFUNCS_H */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#ifndef _INCLUDE_DDK_SEFUNCS_H
|
||||
#define _INCLUDE_DDK_SEFUNCS_H
|
||||
/* $Id: sefuncs.h,v 1.16 2002/02/22 13:34:36 ekohl Exp $ */
|
||||
/* $Id: sefuncs.h,v 1.17 2002/02/22 17:57:17 ekohl Exp $ */
|
||||
|
||||
BOOLEAN STDCALL
|
||||
SeAccessCheck(IN PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
|
@ -54,6 +54,9 @@ SeCreateClientSecurity(IN struct _ETHREAD *Thread,
|
|||
NTSTATUS STDCALL
|
||||
SeDeassignSecurity(IN OUT PSECURITY_DESCRIPTOR* SecurityDescriptor);
|
||||
|
||||
VOID STDCALL
|
||||
SeDeleteAccessState(IN PACCESS_STATE AccessState);
|
||||
|
||||
VOID STDCALL
|
||||
SeDeleteObjectAuditAlarm(IN PVOID Object,
|
||||
IN HANDLE Handle);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
; $Id: ntoskrnl.def,v 1.128 2002/02/20 20:16:49 ekohl Exp $
|
||||
; $Id: ntoskrnl.def,v 1.129 2002/02/22 17:57:57 ekohl Exp $
|
||||
;
|
||||
; reactos/ntoskrnl/ntoskrnl.def
|
||||
;
|
||||
|
@ -554,14 +554,14 @@ NtVdmControl@8
|
|||
NtW32Call@20
|
||||
NtWaitForSingleObject@12
|
||||
NtWriteFile@36
|
||||
;ObAssignSecurity@16
|
||||
ObAssignSecurity@16
|
||||
;ObCheckCreateObjectAccess@28
|
||||
;ObCheckObjectAccess@20
|
||||
;ObCreateObject@36
|
||||
ObCreateObject@20
|
||||
;ObFindHandleForObject@20
|
||||
;ObGetObjectPointerCount@4
|
||||
;ObGetObjectSecurity@12
|
||||
ObGetObjectPointerCount@4
|
||||
ObGetObjectSecurity@12
|
||||
;ObInsertObject@24
|
||||
ObMakeTemporaryObject@4
|
||||
ObOpenObjectByName@28
|
||||
|
@ -573,7 +573,7 @@ ObOpenObjectByPointer@28
|
|||
ObReferenceObjectByHandle@24
|
||||
ObReferenceObjectByName@32
|
||||
ObReferenceObjectByPointer@16
|
||||
;ObReleaseObjectSecurity@8
|
||||
ObReleaseObjectSecurity@8
|
||||
;ObSetSecurityDescriptorInfo@24
|
||||
;PfxFindPrefix
|
||||
;PfxInitialize
|
||||
|
@ -846,9 +846,9 @@ SePublicDefaultDacl DATA
|
|||
SeReleaseSubjectContext@4
|
||||
;SeSetAccessStateGenericMapping@8
|
||||
;SeSetSecurityDescriptorInfo@24
|
||||
;SeSinglePrivilegeCheck@12
|
||||
SeSinglePrivilegeCheck@12
|
||||
SeSystemDefaultDacl DATA
|
||||
;SeTokenImpersonationLevel@4
|
||||
SeTokenImpersonationLevel@4
|
||||
SeTokenType@4
|
||||
;SeUnlockSubjectContext@4
|
||||
;SeUnregisterLogonSessionTerminatedRoutine@4
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
; $Id: ntoskrnl.edf,v 1.114 2002/02/20 20:16:49 ekohl Exp $
|
||||
; $Id: ntoskrnl.edf,v 1.115 2002/02/22 17:57:57 ekohl Exp $
|
||||
;
|
||||
; reactos/ntoskrnl/ntoskrnl.def
|
||||
;
|
||||
|
@ -554,14 +554,14 @@ NtVdmControl=NtVdmControl@8
|
|||
NtW32Call=NtW32Call@20
|
||||
NtWaitForSingleObject=NtWaitForSingleObject@12
|
||||
NtWriteFile=NtWriteFile@36
|
||||
;ObAssignSecurity=ObAssignSecurity@16
|
||||
ObAssignSecurity=ObAssignSecurity@16
|
||||
;ObCheckCreateObjectAccess=ObCheckCreateObjectAccess@28
|
||||
;ObCheckObjectAccess=ObCheckObjectAccess@20
|
||||
;ObCreateObject=ObCreateObject@36
|
||||
ObCreateObject=ObCreateObject@20
|
||||
;ObFindHandleForObject=ObFindHandleForObject@20
|
||||
;ObGetObjectPointerCount=ObGetObjectPointerCount@4
|
||||
;ObGetObjectSecurity=ObGetObjectSecurity@12
|
||||
ObGetObjectPointerCount=ObGetObjectPointerCount@4
|
||||
ObGetObjectSecurity=ObGetObjectSecurity@12
|
||||
;ObInsertObject=ObInsertObject@24
|
||||
ObMakeTemporaryObject=ObMakeTemporaryObject@4
|
||||
ObOpenObjectByName=ObOpenObjectByName@28
|
||||
|
@ -573,7 +573,7 @@ ObfReferenceObject=@ObfReferenceObject@4
|
|||
ObReferenceObjectByHandle=ObReferenceObjectByHandle@24
|
||||
ObReferenceObjectByName=ObReferenceObjectByName@32
|
||||
ObReferenceObjectByPointer=ObReferenceObjectByPointer@16
|
||||
;ObReleaseObjectSecurity=ObReleaseObjectSecurity@8
|
||||
ObReleaseObjectSecurity=ObReleaseObjectSecurity@8
|
||||
;ObSetSecurityDescriptorInfo=ObSetSecurityDescriptorInfo@24
|
||||
;PfxFindPrefix
|
||||
;PfxInitialize
|
||||
|
@ -845,9 +845,9 @@ SePublicDefaultDacl DATA
|
|||
SeReleaseSubjectContext=SeReleaseSubjectContext@4
|
||||
;SeSetAccessStateGenericMapping=SeSetAccessStateGenericMapping@8
|
||||
;SeSetSecurityDescriptorInfo=SeSetSecurityDescriptorInfo@24
|
||||
;SeSinglePrivilegeCheck=SeSinglePrivilegeCheck@12
|
||||
SeSinglePrivilegeCheck=SeSinglePrivilegeCheck@12
|
||||
SeSystemDefaultDacl DATA
|
||||
;SeTokenImpersonationLevel=SeTokenImpersonationLevel@4
|
||||
SeTokenImpersonationLevel=SeTokenImpersonationLevel@4
|
||||
SeTokenType=SeTokenType@4
|
||||
;SeUnlockSubjectContext=SeUnlockSubjectContext@4
|
||||
;SeUnregisterLogonSessionTerminatedRoutine=SeUnregisterLogonSessionTerminatedRoutine@4
|
||||
|
|
|
@ -17,6 +17,33 @@
|
|||
|
||||
/* FUNCTIONS ***************************************************************/
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObAssignSecurity(IN PACCESS_STATE AccessState,
|
||||
IN PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
IN PVOID Object,
|
||||
IN POBJECT_TYPE Type)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
}
|
||||
|
||||
|
||||
NTSTATUS STDCALL
|
||||
ObGetObjectSecurity(IN PVOID Object,
|
||||
OUT PSECURITY_DESCRIPTOR *SecurityDescriptor,
|
||||
OUT PBOOLEAN MemoryAllocated)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
}
|
||||
|
||||
|
||||
VOID STDCALL
|
||||
ObReleaseObjectSecurity(IN PSECURITY_DESCRIPTOR SecurityDescriptor,
|
||||
IN BOOLEAN MemoryAllocated)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
}
|
||||
|
||||
|
||||
NTSTATUS STDCALL
|
||||
NtQuerySecurityObject(IN HANDLE ObjectHandle,
|
||||
IN CINT SecurityObjectInformationClass,
|
||||
|
@ -67,5 +94,4 @@ NtSetSecurityObject(IN HANDLE Handle,
|
|||
UNIMPLEMENTED;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* EOF */
|
||||
|
|
Loading…
Reference in a new issue