12 #define _LPC_DEBUG_ 0x00 17 #define LPC_CREATE_DEBUG 0x01 18 #define LPC_CLOSE_DEBUG 0x02 19 #define LPC_CONNECT_DEBUG 0x04 20 #define LPC_LISTEN_DEBUG 0x08 21 #define LPC_REPLY_DEBUG 0x10 22 #define LPC_COMPLETE_DEBUG 0x20 23 #define LPC_SEND_DEBUG 0x40 29 #ifdef NEW_DEBUG_SYSTEM_IMPLEMENTED // enable when Debug Filters are implemented 30 #define LPCTRACE(x, ...) \ 32 DbgPrintEx("%s [%.16s] - ", \ 34 PsGetCurrentProcess()->ImageFileName); \ 35 DbgPrintEx(__VA_ARGS__); \ 38 #define LPCTRACE(x, ...) \ 39 if (x & LpcpTraceLevel) \ 41 DbgPrint("%s [%.16s:%lx] - ", \ 43 PsGetCurrentProcess()->ImageFileName, \ 44 PsGetCurrentThreadId()); \ 45 DbgPrint(__VA_ARGS__); \ 49 #define LPCTRACE(x, fmt, ...) DPRINT(fmt, ##__VA_ARGS__) 55 #define LPCP_THREAD_FLAG_IS_PORT 1 56 #define LPCP_THREAD_FLAG_NO_IMPERSONATION 2 57 #define LPCP_THREAD_FLAGS (LPCP_THREAD_FLAG_IS_PORT | \ 58 LPCP_THREAD_FLAG_NO_IMPERSONATION) 63 #define LPCP_LOCK_HELD 1 64 #define LPCP_LOCK_RELEASE 2
struct _LPCP_DATA_INFO * PLPCP_DATA_INFO
PAGED_LOOKASIDE_LIST LpcpMessagesLookaside
BOOLEAN NTAPI LpcInitSystem(VOID)
VOID NTAPI LpcpMoveMessage(IN PPORT_MESSAGE Destination, IN PPORT_MESSAGE Origin, IN PVOID Data, IN ULONG MessageType, IN PCLIENT_ID ClientId)
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
BOOLEAN NTAPI LpcpValidateClientPort(PETHREAD ClientThread, PLPCP_PORT_OBJECT Port)
struct _LPCP_DATA_INFO::@1746 Entries[1]
UINT CALLBACK ClientThread(_Inout_ PVOID Parameter)
POBJECT_TYPE LpcPortObjectType
NTSTATUS NTAPI LpcpInitializePortQueue(IN PLPCP_PORT_OBJECT Port)
struct _LPCP_DATA_INFO LPCP_DATA_INFO
_Out_ PCLIENT_ID ClientId
VOID NTAPI LpcpDeletePort(IN PVOID ObjectBody)
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
_In_ PUNICODE_STRING _Inout_ PUNICODE_STRING Destination
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
VOID NTAPI LpcpFreeToPortZone(IN PLPCP_MESSAGE Message, IN ULONG LockFlags)
struct LOOKASIDE_ALIGN _PAGED_LOOKASIDE_LIST PAGED_LOOKASIDE_LIST
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
VOID NTAPI LpcExitThread(IN PETHREAD Thread)
VOID NTAPI LpcpClosePort(IN PEPROCESS Process OPTIONAL, IN PVOID Object, IN ACCESS_MASK GrantedAccess, IN ULONG ProcessHandleCount, IN ULONG SystemHandleCount)
_In_ PSECURITY_SUBJECT_CONTEXT _In_ BOOLEAN _In_ ACCESS_MASK _In_ ACCESS_MASK _Outptr_opt_ PPRIVILEGE_SET _In_ PGENERIC_MAPPING _In_ KPROCESSOR_MODE _Out_ PACCESS_MASK GrantedAccess
VOID NTAPI LpcpSaveDataInfoMessage(IN PLPCP_PORT_OBJECT Port, IN PLPCP_MESSAGE Message, IN ULONG LockFlags)
PULONG MinorVersion OPTIONAL