55 FoundDuplicate =
TRUE;
60 NextEntry = NextEntry->
Flink;
65 return FoundDuplicate;
84 FoundSession = Session;
89 NextEntry = NextEntry->
Flink;
158 DPRINT1(
"SMSS: Unable to keep track of session ID -- no memory available\n");
172 ULONG ProcessSession;
178 sizeof(ProcessSession),
188 DPRINT1(
"SMSS: GetProcessMuSessionId, Process=%p, Status=%x\n",
211 DPRINT1(
"SMSS: SetProcessMuSessionId, Process=%p, Status=%x\n",
PVOID NTAPI RtlAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size)
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
#define NT_SUCCESS(StatCode)
#define UNIMPLEMENTED_DBGBREAK(...)
#define RemoveEntryList(Entry)
#define InsertTailList(ListHead, Entry)
@ ProcessSessionInformation
_In_ HANDLE ProcessHandle
NTSYSAPI NTSTATUS NTAPI RtlEnterCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSYSAPI NTSTATUS NTAPI RtlLeaveCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSTATUS NTAPI NtSetInformationProcess(IN HANDLE ProcessHandle, IN PROCESSINFOCLASS ProcessInformationClass, IN PVOID ProcessInformation, IN ULONG ProcessInformationLength)
NTSTATUS NTAPI NtQueryInformationProcess(_In_ HANDLE ProcessHandle, _In_ PROCESSINFOCLASS ProcessInformationClass, _Out_ PVOID ProcessInformation, _In_ ULONG ProcessInformationLength, _Out_opt_ PULONG ReturnLength)
NTSTATUS NTAPI SmpGetProcessMuSessionId(IN HANDLE ProcessHandle, OUT PULONG SessionId)
LIST_ENTRY SmpSessionListHead
BOOLEAN NTAPI SmpCheckDuplicateMuSessionId(IN ULONG MuSessionId)
RTL_CRITICAL_SECTION SmpSessionListLock
BOOLEAN SmpNextSessionIdScanMode
NTSTATUS NTAPI SmpSetProcessMuSessionId(IN HANDLE ProcessHandle, IN ULONG SessionId)
ULONG NTAPI SmpAllocateSessionId(IN PSMP_SUBSYSTEM Subsystem, IN PSMP_SUBSYSTEM OtherSubsystem)
struct _SMP_SESSION SMP_SESSION
VOID NTAPI SmpDeleteSession(IN ULONG SessionId)
HANDLE SmpSessionsObjectDirectory
struct _SMP_SESSION * PSMP_SESSION
PSMP_SESSION NTAPI SmpSessionIdToSession(IN ULONG SessionId)
RTL_CRITICAL_SECTION SmpKnownSubSysLock
LIST_ENTRY SmpKnownSubSysHead
base of all file and directory entries
struct _LIST_ENTRY * Flink
PSMP_SUBSYSTEM OtherSubsystem
#define CONTAINING_RECORD(address, type, field)