#include <ntos.h>
#include <ntrtl.h>
#include <nturtl.h>
#include <heap.h>
#include "ldrp.h"
Go to the source code of this file.
Defines | |
#define | DESIRED_EVENT_ACCESS (EVENT_QUERY_STATE | EVENT_MODIFY_STATE | SYNCHRONIZE) |
#define | DESIRED_SEMAPHORE_ACCESS (SEMAPHORE_QUERY_STATE | SEMAPHORE_MODIFY_STATE | SYNCHRONIZE) |
#define | MAX_SPIN_COUNT 0x00ffffff |
#define | PREALLOCATE_EVENT_MASK 0x80000000 |
Functions | |
VOID | RtlDumpResource (IN PRTL_RESOURCE Resource) |
VOID | RtlpInitDeferedCriticalSection (VOID) |
PRTL_CRITICAL_SECTION_DEBUG | RtlpChainDebugInfo (IN PVOID BaseAddress, IN ULONG Size) |
PVOID | RtlpAllocateDebugInfo (VOID) |
VOID | RtlpFreeDebugInfo (IN PVOID DebugInfo) |
VOID | RtlpCreateCriticalSectionSem (IN PRTL_CRITICAL_SECTION CriticalSection) |
BOOLEAN | NtdllOkayToLockRoutine (IN PVOID Lock) |
VOID | RtlInitializeResource (IN PRTL_RESOURCE Resource) |
BOOLEAN | RtlAcquireResourceShared (IN PRTL_RESOURCE Resource, IN BOOLEAN Wait) |
BOOLEAN | RtlAcquireResourceExclusive (IN PRTL_RESOURCE Resource, IN BOOLEAN Wait) |
VOID | RtlReleaseResource (IN PRTL_RESOURCE Resource) |
VOID | RtlConvertSharedToExclusive (IN PRTL_RESOURCE Resource) |
VOID | RtlConvertExclusiveToShared (IN PRTL_RESOURCE Resource) |
VOID | RtlDeleteResource (IN PRTL_RESOURCE Resource) |
NTSTATUS | RtlInitializeCriticalSection (IN PRTL_CRITICAL_SECTION CriticalSection) |
VOID | RtlEnableEarlyCriticalSectionEventCreation (VOID) |
NTSTATUS | RtlInitializeCriticalSectionAndSpinCount (IN PRTL_CRITICAL_SECTION CriticalSection, ULONG SpinCount) |
ULONG | RtlSetCriticalSectionSpinCount (IN PRTL_CRITICAL_SECTION CriticalSection, ULONG SpinCount) |
VOID | RtlpCheckDeferedCriticalSection (IN PRTL_CRITICAL_SECTION CriticalSection) |
NTSTATUS | RtlDeleteCriticalSection (IN PRTL_CRITICAL_SECTION CriticalSection) |
void | RtlpWaitForCriticalSection (IN PRTL_CRITICAL_SECTION CriticalSection) |
void | RtlpUnWaitCriticalSection (IN PRTL_CRITICAL_SECTION CriticalSection) |
void | RtlpNotOwnerCriticalSection (IN PRTL_CRITICAL_SECTION CriticalSection) |
void | RtlCheckForOrphanedCriticalSections (IN HANDLE hThread) |
Variables | |
BOOLEAN | LdrpShutdownInProgress |
HANDLE | LdrpShutdownThreadId |
RTL_CRITICAL_SECTION | DeferedCriticalSection |
RTL_CRITICAL_SECTION_DEBUG | RtlpStaticDebugInfo [64] |
PRTL_CRITICAL_SECTION_DEBUG | RtlpDebugInfoFreeList |
BOOLEAN | RtlpCritSectInitialized |
|
Definition at line 38 of file dll/resource.c. Referenced by RtlInitializeCriticalSectionAndSpinCount(), and RtlpCreateCriticalSectionSem(). |
|
Definition at line 41 of file dll/resource.c. Referenced by RtlInitializeResource(). |
|
Definition at line 1236 of file dll/resource.c. Referenced by RtlInitializeCriticalSectionAndSpinCount(). |
|
Definition at line 1237 of file dll/resource.c. Referenced by RtlInitializeCriticalSectionAndSpinCount(). |
|
Definition at line 236 of file dll/resource.c.
|
|
Definition at line 515 of file dll/resource.c. References _ERESOURCE::ContentionCount, DbgPrint, FALSE, NT_SUCCESS, NTSTATUS(), NtWaitForSingleObject(), NULL, Resource, RtlImageNtHeader(), RtlpTimeout, RtlRaiseException(), RtlRaiseStatus(), Status, and TRUE.
|
|
Definition at line 350 of file dll/resource.c. References _ERESOURCE::ContentionCount, DbgPrint, FALSE, NT_SUCCESS, NTSTATUS(), NtWaitForSingleObject(), NULL, Resource, RtlImageNtHeader(), RtlpTimeout, RtlRaiseException(), RtlRaiseStatus(), Status, and TRUE.
|
|
Definition at line 1788 of file dll/resource.c. References DbgPrint, FALSE, LdrpShutdownInProgress, NT_SUCCESS, NtQueryInformationThread(), NtReadVirtualMemory(), NTSTATUS(), NULL, RtlCriticalSectionList, RtlCriticalSectionLock, Status, and TRUE.
|
|
Definition at line 1061 of file dll/resource.c. References DbgPrint, NT_SUCCESS, NtReleaseSemaphore(), NTSTATUS(), NULL, Resource, RtlRaiseStatus(), and Status.
|
|
Definition at line 851 of file dll/resource.c. References _ERESOURCE::ContentionCount, DbgPrint, FALSE, NT_SUCCESS, NTSTATUS(), NtWaitForSingleObject(), NULL, Resource, RtlImageNtHeader(), RtlpTimeout, RtlRaiseException(), RtlRaiseStatus(), Status, and TRUE.
|
|
Definition at line 1474 of file dll/resource.c. References NtClose(), NTSTATUS(), NULL, RtlCriticalSectionLock, RtlpFreeDebugInfo(), Status, and UnProtectHandle(). Referenced by AllocateConsole(), DestroyConsole(), FreeInputHandle(), ImmDllInitialize(), RtlCreateLpcServer(), RtlDeleteResource(), RtlpDebugPageHeapDestroy(), RtlpDestroyLockAtomTable(), and UserClientDllInitialize().
|
|
Definition at line 1158 of file dll/resource.c. References NtClose(), Resource, RtlDeleteCriticalSection(), and RtlpFreeDebugInfo().
|
|
Definition at line 1193 of file dll/resource.c. References DbgPrint, and Resource.
|
|
Definition at line 1240 of file dll/resource.c.
|
|
|
Definition at line 1266 of file dll/resource.c. References DESIRED_EVENT_ACCESS, FALSE, MAX_SPIN_COUNT, NT_SUCCESS, NtClose(), NtCreateEvent(), NTSTATUS(), NULL, PREALLOCATE_EVENT_MASK, ProtectHandle(), RtlCriticalSectionList, RtlCriticalSectionLock, RtlpAllocateDebugInfo(), RtlpCritSectInitialized, Status, UnProtectHandle(), and USHORT. Referenced by ConServerDllInitialization(), InitializeConsoleHandleTable(), InitializeScrollBuffer(), RtlCreateLpcServer(), RtlInitializeCriticalSection(), RtlInitializeResource(), and RtlpInitDeferedCriticalSection().
|
|
Definition at line 247 of file dll/resource.c. References DESIRED_SEMAPHORE_ACCESS, NT_SUCCESS, NtCreateSemaphore(), NTSTATUS(), NULL, Resource, RtlInitializeCriticalSectionAndSpinCount(), RtlpAllocateDebugInfo(), RtlRaiseStatus(), and Status.
|
|
Definition at line 151 of file dll/resource.c. References DeferedCriticalSection, HEAP_GRANULARITY, NULL, PAGE_SIZE, RtlAllocateHeap, RtlpChainDebugInfo(), RtlpCritSectInitialized, and RtlpDebugInfoFreeList. Referenced by RtlInitializeCriticalSectionAndSpinCount(), and RtlInitializeResource().
|
|
Definition at line 121 of file dll/resource.c. Referenced by RtlpAllocateDebugInfo(), and RtlpInitDeferedCriticalSection().
|
|
Definition at line 1456 of file dll/resource.c. References DeferedCriticalSection, and RtlpCreateCriticalSectionSem(). Referenced by RtlpUnWaitCriticalSection(), and RtlpWaitForCriticalSection().
|
|
Definition at line 1412 of file dll/resource.c. References DESIRED_EVENT_ACCESS, FALSE, NT_SUCCESS, NtCreateEvent(), NtDelayExecution(), NTSTATUS(), NULL, ProtectHandle(), RtlRaiseStatus(), and Status. Referenced by RtlpCheckDeferedCriticalSection(), and RtlpInitDeferedCriticalSection().
|
|
Definition at line 188 of file dll/resource.c. References DeferedCriticalSection, and RtlpDebugInfoFreeList. Referenced by RtlDeleteCriticalSection(), and RtlDeleteResource().
|
|
Referenced by LdrpForkProcess(), and LdrpInitializeProcess(). |
|
Definition at line 1717 of file dll/resource.c. References DbgPrint, LdrpShutdownInProgress, LdrpShutdownThreadId, and RtlRaiseStatus().
|
|
Definition at line 1675 of file dll/resource.c. References DbgPrint, NT_SUCCESS, NtSetEvent(), NTSTATUS(), NULL, RtlpCheckDeferedCriticalSection(), and RtlRaiseStatus().
|
|
Definition at line 1544 of file dll/resource.c. References ASSERT, DbgPrint, FALSE, LdrpShutdownInProgress, LdrpShutdownThreadId, NT_SUCCESS, NTSTATUS(), NtWaitForSingleObject(), NULL, RtlImageNtHeader(), RtlpCheckDeferedCriticalSection(), RtlpTimeout, RtlpTimoutDisable, RtlRaiseException(), RtlRaiseStatus(), and TRUE.
|
|
Definition at line 680 of file dll/resource.c. References DbgPrint, NT_SUCCESS, NtReleaseSemaphore(), NTSTATUS(), NULL, Resource, RtlRaiseStatus(), and Status.
|
|
Definition at line 1374 of file dll/resource.c.
|
|
Definition at line 51 of file dll/resource.c. Referenced by RtlpAllocateDebugInfo(), RtlpCheckDeferedCriticalSection(), RtlpFreeDebugInfo(), and RtlpInitDeferedCriticalSection(). |
|
Definition at line 46 of file dll/resource.c. |
|
Definition at line 47 of file dll/resource.c. Referenced by LdrShutdownProcess(), RtlpNotOwnerCriticalSection(), and RtlpWaitForCriticalSection(). |
|
Definition at line 118 of file dll/resource.c. Referenced by RtlInitializeCriticalSectionAndSpinCount(), RtlpAllocateDebugInfo(), and RtlpInitDeferedCriticalSection(). |
|
Definition at line 117 of file dll/resource.c. Referenced by RtlpAllocateDebugInfo(), RtlpFreeDebugInfo(), and RtlpInitDeferedCriticalSection(). |
|
Definition at line 116 of file dll/resource.c. Referenced by RtlpInitDeferedCriticalSection(). |