#include "psp.h"
Go to the source code of this file.
Defines | |
#define | DESCRIPTOR_GRAN 0x00800000 |
#define | DESCRIPTOR_NP 0x00008000 |
#define | DESCRIPTOR_SYSTEM 0x00001000 |
#define | DESCRIPTOR_CONFORM 0x00001C00 |
#define | DESCRIPTOR_DPL 0x00006000 |
#define | DESCRIPTOR_TYPEDPL 0x00007F00 |
Functions | |
PLDT_ENTRY | PspCreateLdt (IN PLDT_ENTRY Ldt, IN ULONG Offset, IN ULONG Size, IN ULONG AllocationSize) |
BOOLEAN | PspIsDescriptorValid (IN PLDT_ENTRY Descriptor) |
NTSTATUS | PspLdtInitialize () |
NTSTATUS | PspQueryLdtInformation (IN PEPROCESS Process, OUT PPROCESS_LDT_INFORMATION LdtInformation, IN ULONG LdtInformationLength, OUT PULONG ReturnLength) |
NTSTATUS | PspSetLdtSize (IN PEPROCESS Process, IN PPROCESS_LDT_SIZE LdtSize, IN ULONG LdtSizeLength) |
NTSTATUS | PspSetLdtInformation (IN PEPROCESS Process, IN PPROCESS_LDT_INFORMATION LdtInformation, IN ULONG LdtInformationLength) |
NTSTATUS | PspQueryDescriptorThread (PETHREAD Thread, PVOID ThreadInformation, ULONG ThreadInformationLength, PULONG ReturnLength) |
VOID | PspDeleteLdt (IN PEPROCESS Process) |
NTSTATUS | NtSetLdtEntries (IN ULONG Selector0, IN ULONG Entry0Low, IN ULONG Entry0Hi, IN ULONG Selector1, IN ULONG Entry1Low, IN ULONG Entry1Hi) |
Variables | |
KMUTEX | LdtMutex |
|
Definition at line 46 of file i386/psldt.c. Referenced by NtSetLdtEntries(). |
|
Definition at line 47 of file i386/psldt.c. Referenced by NtSetLdtEntries(). |
|
Definition at line 43 of file i386/psldt.c. Referenced by NtSetLdtEntries(). |
|
Definition at line 44 of file i386/psldt.c. Referenced by NtSetLdtEntries(). |
|
Definition at line 45 of file i386/psldt.c. Referenced by NtSetLdtEntries(). |
|
Definition at line 48 of file i386/psldt.c. Referenced by NtSetLdtEntries(). |
|
Definition at line 1235 of file i386/psldt.c. References ASSERT, DESCRIPTOR_CONFORM, DESCRIPTOR_DPL, DESCRIPTOR_GRAN, DESCRIPTOR_NP, DESCRIPTOR_SYSTEM, DESCRIPTOR_TYPEDPL, ExAllocatePool, EXCEPTION_EXECUTE_HANDLER, Executive, ExFreePool(), FALSE, Ke386SetDescriptorProcess(), Ke386SetLdtProcess(), KeReleaseMutex(), KernelMode, KeWaitForSingleObject(), L, _EPROCESS::LdtInformation, LdtMutex, NT_SUCCESS, NTSTATUS(), NULL, PAGE_SIZE, PAGED_CODE, PagedPool, _EPROCESS::Pcb, PsChargePoolQuota(), PsGetCurrentProcess, and Status.
|
|
Definition at line 902 of file i386/psldt.c. References ASSERT, ExAllocatePool, NULL, Offset, PAGED_CODE, PagedPool, and Size. Referenced by PspSetLdtInformation(), and PspSetLdtSize().
|
|
Definition at line 1202 of file i386/psldt.c. References ExFreePool(), NULL, and PAGED_CODE.
|
|
Definition at line 952 of file i386/psldt.c. References FALSE, PAGED_CODE, and TRUE. Referenced by PspSetLdtInformation().
|
|
Definition at line 84 of file i386/psldt.c. References KeInitializeMutex(), LdtMutex, and MUTEX_LEVEL_PS_LDT. Referenced by PspInitPhase0().
|
|
Definition at line 1061 of file i386/psldt.c. References ASSERT, EXCEPTION_EXECUTE_HANDLER, Executive, FALSE, Ke386GetGdtEntryThread(), KeReleaseMutex(), KernelMode, KeWaitForSingleObject(), _EPROCESS::LdtInformation, LdtMutex, NT_SUCCESS, NTSTATUS(), NULL, PAGED_CODE, Status, _ETHREAD::Tcb, THREAD_TO_PROCESS, and TRUE.
|
|
Definition at line 108 of file i386/psldt.c. References ASSERT, EXCEPTION_EXECUTE_HANDLER, Executive, FALSE, KeReleaseMutex(), KernelMode, KeWaitForSingleObject(), LdtMutex, NT_SUCCESS, NTSTATUS(), NULL, PAGED_CODE, Start, Status, and TRUE.
|
|
Definition at line 503 of file i386/psldt.c. References ASSERT, ExAllocatePool, EXCEPTION_EXECUTE_HANDLER, Executive, ExFreePool(), FALSE, Ke386SetDescriptorProcess(), Ke386SetLdtProcess(), KeReleaseMutex(), KernelMode, KeWaitForSingleObject(), LdtMutex, NT_SUCCESS, NTSTATUS(), NULL, PAGE_SIZE, PAGED_CODE, PagedPool, PsChargePoolQuota(), PspCreateLdt(), PspIsDescriptorValid(), PsReturnPoolQuota(), Size, and Status.
|
|
Definition at line 308 of file i386/psldt.c. References ASSERT, EXCEPTION_EXECUTE_HANDLER, Executive, ExFreePool(), FALSE, Ke386SetLdtProcess(), KeReleaseMutex(), KernelMode, KeWaitForSingleObject(), LdtMutex, NT_SUCCESS, NTSTATUS(), NULL, PAGE_SIZE, PAGED_CODE, PagedPool, PspCreateLdt(), PsReturnPoolQuota(), Status, and TRUE.
|
|
Definition at line 51 of file i386/psldt.c. Referenced by NtSetLdtEntries(), PspLdtInitialize(), PspQueryDescriptorThread(), PspQueryLdtInformation(), PspSetLdtInformation(), and PspSetLdtSize(). |