#include "obp.h"
Go to the source code of this file.
Functions | |
NTSTATUS | ObCreateObject (IN KPROCESSOR_MODE ProbeMode, IN POBJECT_TYPE ObjectType, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN KPROCESSOR_MODE OwnershipMode, IN OUT PVOID ParseContext OPTIONAL, IN ULONG ObjectBodySize, IN ULONG PagedPoolCharge, IN ULONG NonPagedPoolCharge, OUT PVOID *Object) |
NTSTATUS | ObpCaptureObjectCreateInformation (IN POBJECT_TYPE ObjectType OPTIONAL, IN KPROCESSOR_MODE ProbeMode, IN POBJECT_ATTRIBUTES ObjectAttributes, IN OUT PUNICODE_STRING CapturedObjectName, IN POBJECT_CREATE_INFORMATION ObjectCreateInfo, IN LOGICAL UseLookaside) |
NTSTATUS | ObpCaptureObjectName (IN KPROCESSOR_MODE ProbeMode, IN PUNICODE_STRING ObjectName, IN OUT PUNICODE_STRING CapturedObjectName, IN LOGICAL UseLookaside) |
PWCHAR | ObpAllocateObjectNameBuffer (IN ULONG Length, IN LOGICAL UseLookaside, IN OUT PUNICODE_STRING ObjectName) |
VOID FASTCALL | ObpFreeObjectNameBuffer (OUT PUNICODE_STRING ObjectName) |
NTKERNELAPI VOID | ObDeleteCapturedInsertInfo (IN PVOID Object) |
NTSTATUS | ObpAllocateObject (IN POBJECT_CREATE_INFORMATION ObjectCreateInfo, IN KPROCESSOR_MODE OwnershipMode, IN POBJECT_TYPE ObjectType OPTIONAL, IN PUNICODE_STRING ObjectName, IN ULONG ObjectBodySize, OUT POBJECT_HEADER *ReturnedObjectHeader) |
VOID FASTCALL | ObpFreeObject (IN PVOID Object) |
VOID FASTCALL | ObFreeObjectCreateInfoBuffer (IN POBJECT_CREATE_INFORMATION ObjectCreateInfo) |
Variables | |
ULONG | ObpObjectsCreated |
ULONG | ObpObjectsWithPoolQuota |
ULONG | ObpObjectsWithHandleDB |
ULONG | ObpObjectsWithName |
ULONG | ObpObjectsWithCreatorInfo |
|
Definition at line 55 of file obcreate.c. References _OBJECT_CREATE_INFORMATION::Attributes, _OBJECT_HEADER::Body, FALSE, _OBJECT_HEADER::Flags, _OBJECT_CREATE_INFORMATION::NonPagedPoolCharge, NT_SUCCESS, NTSTATUS(), NULL, OB_FLAG_PERMANENT_OBJECT, ObjectAttributes, ObpAllocateObject(), ObpAllocateObjectCreateInfoBuffer, ObpCaptureObjectCreateInformation(), ObpFreeObject(), ObpFreeObjectCreateInfoBuffer, ObpFreeObjectNameBuffer(), ObpReleaseObjectCreateInformation, PAGED_CODE, _OBJECT_CREATE_INFORMATION::PagedPoolCharge, SeCreatePermanentPrivilege, SeSinglePrivilegeCheck(), and Status. Referenced by CmpCreateRegistryRoot(), CmpDoCreateChild(), CmpDoOpen(), ExCreateCallback(), IoCreateController(), IoCreateDevice(), IoCreateDriver(), IoCreateStreamFileObject(), IoCreateStreamFileObjectLite(), IopInitializeAttributesAndCreateObject(), IopLoadDriver(), IopParseDevice(), LpcpCreatePort(), MiSectionInitialization(), MmCreateSection(), NtAcceptConnectPort(), NtCreateChannel(), NtCreateDirectoryObject(), NtCreateEvent(), NtCreateEventPair(), NtCreateIoCompletion(), NtCreateJobObject(), NtCreateMutant(), NtCreateProfile(), NtCreateSemaphore(), NtCreateSuperSection(), NtCreateSymbolicLinkObject(), NtCreateTimer(), NtOpenChannel(), NtSecureConnectPort(), obtest(), PspCreateProcess(), PspCreateThread(), SepCreateToken(), SepDuplicateToken(), SepFilterToken(), xxxCreateDesktop2(), and xxxCreateWindowStation().
|
|
Definition at line 713 of file obcreate.c. References _OBJECT_HEADER::Flags, NULL, OB_FLAG_NEW_OBJECT, OBJECT_TO_OBJECT_HEADER, _OBJECT_HEADER::ObjectCreateInfo, ObpFreeObjectCreateInformation, and PAGED_CODE. Referenced by CcInitializeCacheMap(), SepCreateClientSecurity(), and SepCreateToken().
|
|
Definition at line 1279 of file obcreate.c. References ObpFreeObjectCreateInfoBuffer. Referenced by IoCreateStreamFileObjectLite().
|
|
Definition at line 761 of file obcreate.c. References _OBJECT_HEADER_CREATOR_INFO::CreatorBackTraceIndex, _OBJECT_HEADER_CREATOR_INFO::CreatorUniqueProcess, DbgPrint, _OBJECT_HEADER_NAME_INFO::Directory, ExAllocatePoolWithTag, _OBJECT_HEADER_QUOTA_INFO::ExclusiveProcess, _OBJECT_HEADER::Flags, _OBJECT_HANDLE_COUNT_ENTRY::HandleCount, _OBJECT_HEADER::HandleCount, _OBJECT_HEADER::HandleInfoOffset, KernelMode, _OBJECT_HEADER_NAME_INFO::Name, _OBJECT_HEADER::NameInfoOffset, NonPagedPool, _OBJECT_HEADER_QUOTA_INFO::NonPagedPoolCharge, NTSTATUS(), NULL, OB_FLAG_CREATOR_INFO, OB_FLAG_EXCLUSIVE_OBJECT, OB_FLAG_KERNEL_OBJECT, OB_FLAG_NEW_OBJECT, OB_FLAG_PERMANENT_OBJECT, OB_FLAG_SINGLE_HANDLE_ENTRY, _OBJECT_HEADER::ObjectCreateInfo, ObpObjectsCreated, ObpObjectsWithCreatorInfo, ObpObjectsWithHandleDB, ObpObjectsWithName, ObpObjectsWithPoolQuota, PAGED_CODE, PagedPool, _OBJECT_HEADER_QUOTA_INFO::PagedPoolCharge, _OBJECT_HEADER::PointerCount, POOL_TYPE, PROTECTED_POOL, PsGetCurrentProcess, _OBJECT_HEADER::QuotaInfoOffset, SE_DEFAULT_SECURITY_QUOTA, _OBJECT_HEADER::SecurityDescriptor, _OBJECT_HEADER_QUOTA_INFO::SecurityDescriptorCharge, _OBJECT_HEADER_HANDLE_INFO::SingleEntry, Status, _OBJECT_HEADER::Type, and _OBJECT_HEADER_CREATOR_INFO::TypeList. Referenced by ObCreateObject(), and ObCreateObjectType().
|
|
Definition at line 583 of file obcreate.c. References Buffer, ExAllocateFromPPNPagedLookasideList(), ExAllocatePoolWithTag, FALSE, LookasideNameBufferList, NonPagedPool, OBJECT_NAME_BUFFER_SIZE, and USHORT. Referenced by ObpCaptureObjectName().
|
|
Definition at line 248 of file obcreate.c. References ExSystemExceptionFilter(), KernelMode, NT_SUCCESS, NTSTATUS(), NULL, ObjectAttributes, ObpCaptureObjectName(), ObpReleaseObjectCreateInformation, PAGED_CODE, PagedPool, ProbeForRead, SeCaptureSecurityDescriptor(), SeComputeQuotaInformationSize(), SeComputeSecurityQuota, SecurityQos, Size, Status, and TRUE.
|
|
Definition at line 438 of file obcreate.c. References ExFreePool(), ExSystemExceptionFilter(), KernelMode, NTSTATUS(), NULL, ObpAllocateObjectNameBuffer(), PAGED_CODE, ProbeAndReadUnicodeString, ProbeForRead, and Status. Referenced by ObpCaptureObjectCreateInformation(), and ObReferenceObjectByName().
|
|
Definition at line 1098 of file obcreate.c. References DbgPrint, _OBJECT_TYPE_INITIALIZER::DefaultNonPagedPoolCharge, _OBJECT_TYPE_INITIALIZER::DefaultPagedPoolCharge, ExFreePool(), ExFreePoolWithTag, _OBJECT_HEADER_HANDLE_INFO::HandleCountDataBase, _OBJECT_TYPE::Name, _OBJECT_HEADER_NAME_INFO::Name, _OBJECT_HEADER_QUOTA_INFO::NonPagedPoolCharge, NULL, OB_FLAG_DEFAULT_SECURITY_QUOTA, OB_FLAG_NEW_OBJECT, OB_FLAG_SINGLE_HANDLE_ENTRY, OBJECT_HEADER_TO_CREATOR_INFO, OBJECT_HEADER_TO_HANDLE_INFO, OBJECT_HEADER_TO_NAME_INFO, OBJECT_HEADER_TO_QUOTA_INFO, OBJECT_TO_OBJECT_HEADER, ObpFreeObjectCreateInformation, PAGED_CODE, _OBJECT_HEADER_QUOTA_INFO::PagedPoolCharge, PROTECTED_POOL, PsReturnSharedPoolQuota(), SE_DEFAULT_SECURITY_QUOTA, _OBJECT_HEADER_QUOTA_INFO::SecurityDescriptorCharge, _OBJECT_TYPE::TotalNumberOfObjects, _OBJECT_HEADER::Type, and _OBJECT_TYPE::TypeInfo. Referenced by ObCreateObject(), and ObpRemoveObjectRoutine().
|
|
Definition at line 663 of file obcreate.c. References Buffer, ExFreePool(), ExFreeToPPNPagedLookasideList(), LookasideNameBufferList, and OBJECT_NAME_BUFFER_SIZE.
|
|
Definition at line 47 of file obcreate.c. Referenced by ObpAllocateObject(). |
|
Definition at line 51 of file obcreate.c. Referenced by ObpAllocateObject(). |
|
Definition at line 49 of file obcreate.c. Referenced by ObpAllocateObject(). |
|
Definition at line 50 of file obcreate.c. Referenced by ObpAllocateObject(). |
|
Definition at line 48 of file obcreate.c. Referenced by ObpAllocateObject(). |