Process Hacker
ntlpcapi.h File Reference

Go to the source code of this file.

Data Structures

struct  _PORT_MESSAGE
 
struct  _PORT_DATA_ENTRY
 
struct  _PORT_DATA_INFORMATION
 
struct  _LPC_CLIENT_DIED_MSG
 
struct  _PORT_VIEW
 
struct  _REMOTE_PORT_VIEW
 
struct  _PORT_MESSAGE64
 
struct  _LPC_CLIENT_DIED_MSG64
 
struct  _PORT_VIEW64
 
struct  _REMOTE_PORT_VIEW64
 
struct  _ALPC_PORT_ATTRIBUTES
 
struct  _ALPC_MESSAGE_ATTRIBUTES
 
struct  _ALPC_COMPLETION_LIST_STATE
 
struct  _ALPC_CONTEXT_ATTR
 
struct  _ALPC_HANDLE_ATTR
 
struct  _ALPC_SECURITY_ATTR
 
struct  _ALPC_DATA_VIEW_ATTR
 
struct  _ALPC_BASIC_INFORMATION
 
struct  _ALPC_PORT_ASSOCIATE_COMPLETION_PORT
 
struct  _ALPC_SERVER_INFORMATION
 
struct  _ALPC_PORT_MESSAGE_ZONE_INFORMATION
 
struct  _ALPC_PORT_COMPLETION_LIST_INFORMATION
 

Macros

#define PORT_CONNECT   0x0001
 
#define PORT_ALL_ACCESS   (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1)
 
#define LPC_REQUEST   1
 
#define LPC_REPLY   2
 
#define LPC_DATAGRAM   3
 
#define LPC_LOST_REPLY   4
 
#define LPC_PORT_CLOSED   5
 
#define LPC_CLIENT_DIED   6
 
#define LPC_EXCEPTION   7
 
#define LPC_DEBUG_EVENT   8
 
#define LPC_ERROR_EVENT   9
 
#define LPC_CONNECTION_REQUEST   10
 
#define LPC_KERNELMODE_MESSAGE   (CSHORT)0x8000
 
#define LPC_NO_IMPERSONATE   (CSHORT)0x4000
 
#define PORT_VALID_OBJECT_ATTRIBUTES   OBJ_CASE_INSENSITIVE
 
#define PORT_MAXIMUM_MESSAGE_LENGTH   256
 
#define LPC_MAX_CONNECTION_INFO_SIZE   (16 * sizeof(ULONG_PTR))
 
#define PORT_TOTAL_MAXIMUM_MESSAGE_LENGTH   ((PORT_MAXIMUM_MESSAGE_LENGTH + sizeof(PORT_MESSAGE) + LPC_MAX_CONNECTION_INFO_SIZE + 0xf) & ~0xf)
 
#define ALPC_PORFLG_ALLOW_LPC_REQUESTS   0x20000
 
#define ALPC_PORFLG_WAITABLE_PORT   0x40000
 
#define ALPC_PORFLG_SYSTEM_PROCESS   0x100000
 
#define ALPC_MESSAGE_SECURITY_ATTRIBUTE   0x80000000
 
#define ALPC_MESSAGE_VIEW_ATTRIBUTE   0x40000000
 
#define ALPC_MESSAGE_CONTEXT_ATTRIBUTE   0x20000000
 
#define ALPC_MESSAGE_HANDLE_ATTRIBUTE   0x10000000
 
#define ALPC_COMPLETION_LIST_BUFFER_GRANULARITY_MASK   0x3f
 
#define ALPC_HANDLEFLG_DUPLICATE_SAME_ACCESS   0x10000
 
#define ALPC_HANDLEFLG_DUPLICATE_SAME_ATTRIBUTES   0x20000
 
#define ALPC_HANDLEFLG_DUPLICATE_INHERIT   0x80000
 
#define ALPC_SECFLG_CREATE_HANDLE   0x20000
 
#define ALPC_VIEWFLG_NOT_SECURE   0x40000
 
#define ALPC_MSGFLG_REPLY_MESSAGE   0x1
 
#define ALPC_MSGFLG_LPC_MODE   0x2
 
#define ALPC_MSGFLG_RELEASE_MESSAGE   0x10000
 
#define ALPC_MSGFLG_SYNC_REQUEST   0x20000
 
#define ALPC_MSGFLG_WAIT_USER_MODE   0x100000
 
#define ALPC_MSGFLG_WAIT_ALERTABLE   0x200000
 
#define ALPC_MSGFLG_WOW64_CALL   0x80000000
 
#define ALPC_CANCELFLG_TRY_CANCEL   0x1
 
#define ALPC_CANCELFLG_NO_CONTEXT_CHECK   0x8
 
#define ALPC_CANCELFLGP_FLUSH   0x10000
 

Typedefs

typedef struct _PORT_MESSAGE PORT_MESSAGE
 
typedef struct _PORT_MESSAGEPPORT_MESSAGE
 
typedef struct _PORT_DATA_ENTRY PORT_DATA_ENTRY
 
typedef struct _PORT_DATA_ENTRYPPORT_DATA_ENTRY
 
typedef struct
_PORT_DATA_INFORMATION 
PORT_DATA_INFORMATION
 
typedef struct
_PORT_DATA_INFORMATION
PPORT_DATA_INFORMATION
 
typedef struct _LPC_CLIENT_DIED_MSG LPC_CLIENT_DIED_MSG
 
typedef struct
_LPC_CLIENT_DIED_MSG
PLPC_CLIENT_DIED_MSG
 
typedef struct _PORT_VIEW PORT_VIEW
 
typedef struct _PORT_VIEWPPORT_VIEW
 
typedef struct _REMOTE_PORT_VIEW REMOTE_PORT_VIEW
 
typedef struct _REMOTE_PORT_VIEWPREMOTE_PORT_VIEW
 
typedef struct _PORT_MESSAGE64 PORT_MESSAGE64
 
typedef struct _PORT_MESSAGE64PPORT_MESSAGE64
 
typedef struct
_LPC_CLIENT_DIED_MSG64 
LPC_CLIENT_DIED_MSG64
 
typedef struct
_LPC_CLIENT_DIED_MSG64
PLPC_CLIENT_DIED_MSG64
 
typedef struct _PORT_VIEW64 PORT_VIEW64
 
typedef struct _PORT_VIEW64PPORT_VIEW64
 
typedef struct _REMOTE_PORT_VIEW64 REMOTE_PORT_VIEW64
 
typedef struct
_REMOTE_PORT_VIEW64
PREMOTE_PORT_VIEW64
 
typedef enum
_PORT_INFORMATION_CLASS 
PORT_INFORMATION_CLASS
 
typedef HANDLE ALPC_HANDLE
 
typedef HANDLE * PALPC_HANDLE
 
typedef struct
_ALPC_PORT_ATTRIBUTES 
ALPC_PORT_ATTRIBUTES
 
typedef struct
_ALPC_PORT_ATTRIBUTES
PALPC_PORT_ATTRIBUTES
 
typedef struct
_ALPC_MESSAGE_ATTRIBUTES 
ALPC_MESSAGE_ATTRIBUTES
 
typedef struct
_ALPC_MESSAGE_ATTRIBUTES
PALPC_MESSAGE_ATTRIBUTES
 
typedef struct
_ALPC_COMPLETION_LIST_STATE 
ALPC_COMPLETION_LIST_STATE
 
typedef struct
_ALPC_COMPLETION_LIST_STATE
PALPC_COMPLETION_LIST_STATE
 
typedef struct _ALPC_CONTEXT_ATTR ALPC_CONTEXT_ATTR
 
typedef struct _ALPC_CONTEXT_ATTRPALPC_CONTEXT_ATTR
 
typedef struct _ALPC_HANDLE_ATTR ALPC_HANDLE_ATTR
 
typedef struct _ALPC_HANDLE_ATTRPALPC_HANDLE_ATTR
 
typedef struct _ALPC_SECURITY_ATTR ALPC_SECURITY_ATTR
 
typedef struct
_ALPC_SECURITY_ATTR
PALPC_SECURITY_ATTR
 
typedef struct _ALPC_DATA_VIEW_ATTR ALPC_DATA_VIEW_ATTR
 
typedef struct
_ALPC_DATA_VIEW_ATTR
PALPC_DATA_VIEW_ATTR
 
typedef enum
_ALPC_PORT_INFORMATION_CLASS 
ALPC_PORT_INFORMATION_CLASS
 
typedef struct
_ALPC_BASIC_INFORMATION 
ALPC_BASIC_INFORMATION
 
typedef struct
_ALPC_BASIC_INFORMATION
PALPC_BASIC_INFORMATION
 
typedef struct
_ALPC_PORT_ASSOCIATE_COMPLETION_PORT 
ALPC_PORT_ASSOCIATE_COMPLETION_PORT
 
typedef struct
_ALPC_PORT_ASSOCIATE_COMPLETION_PORT
PALPC_PORT_ASSOCIATE_COMPLETION_PORT
 
typedef struct
_ALPC_SERVER_INFORMATION 
ALPC_SERVER_INFORMATION
 
typedef struct
_ALPC_SERVER_INFORMATION
PALPC_SERVER_INFORMATION
 
typedef struct
_ALPC_PORT_MESSAGE_ZONE_INFORMATION 
ALPC_PORT_MESSAGE_ZONE_INFORMATION
 
typedef struct
_ALPC_PORT_MESSAGE_ZONE_INFORMATION
PALPC_PORT_MESSAGE_ZONE_INFORMATION
 
typedef struct
_ALPC_PORT_COMPLETION_LIST_INFORMATION 
ALPC_PORT_COMPLETION_LIST_INFORMATION
 
typedef struct
_ALPC_PORT_COMPLETION_LIST_INFORMATION
PALPC_PORT_COMPLETION_LIST_INFORMATION
 
typedef enum
_ALPC_MESSAGE_INFORMATION_CLASS 
ALPC_MESSAGE_INFORMATION_CLASS
 
typedef enum
_ALPC_MESSAGE_INFORMATION_CLASS
PALPC_MESSAGE_INFORMATION_CLASS
 

Enumerations

enum  _PORT_INFORMATION_CLASS { PortBasicInformation, PortDumpInformation }
 
enum  _ALPC_PORT_INFORMATION_CLASS {
  AlpcBasicInformation, AlpcPortInformation, AlpcAssociateCompletionPortInformation, AlpcConnectedSIDInformation,
  AlpcServerInformation, AlpcMessageZoneInformation, AlpcRegisterCompletionListInformation, AlpcUnregisterCompletionListInformation,
  AlpcAdjustCompletionListConcurrencyCountInformation, AlpcRegisterCallbackInformation, AlpcCompletionListRundownInformation, AlpcWaitForPortReferences,
  MaxAlpcPortInfoClass
}
 
enum  _ALPC_MESSAGE_INFORMATION_CLASS { AlpcMessageSidInformation, AlpcMessageTokenModifiedIdInformation, MaxAlpcMessageInfoClass }
 

Functions

NTSYSCALLAPI NTSTATUS NTAPI NtCreatePort (_Out_ PHANDLE PortHandle, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ ULONG MaxConnectionInfoLength, _In_ ULONG MaxMessageLength, _In_opt_ ULONG MaxPoolUsage)
 
NTSYSCALLAPI NTSTATUS NTAPI NtCreateWaitablePort (_Out_ PHANDLE PortHandle, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ ULONG MaxConnectionInfoLength, _In_ ULONG MaxMessageLength, _In_opt_ ULONG MaxPoolUsage)
 
NTSYSCALLAPI NTSTATUS NTAPI NtConnectPort (_Out_ PHANDLE PortHandle, _In_ PUNICODE_STRING PortName, _In_ PSECURITY_QUALITY_OF_SERVICE SecurityQos, _Inout_opt_ PPORT_VIEW ClientView, _Inout_opt_ PREMOTE_PORT_VIEW ServerView, _Out_opt_ PULONG MaxMessageLength, _Inout_updates_bytes_to_opt_(*ConnectionInformationLength,*ConnectionInformationLength) PVOID ConnectionInformation, _Inout_opt_ PULONG ConnectionInformationLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtSecureConnectPort (_Out_ PHANDLE PortHandle, _In_ PUNICODE_STRING PortName, _In_ PSECURITY_QUALITY_OF_SERVICE SecurityQos, _Inout_opt_ PPORT_VIEW ClientView, _In_opt_ PSID RequiredServerSid, _Inout_opt_ PREMOTE_PORT_VIEW ServerView, _Out_opt_ PULONG MaxMessageLength, _Inout_updates_bytes_to_opt_(*ConnectionInformationLength,*ConnectionInformationLength) PVOID ConnectionInformation, _Inout_opt_ PULONG ConnectionInformationLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtListenPort (_In_ HANDLE PortHandle, _Out_ PPORT_MESSAGE ConnectionRequest)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAcceptConnectPort (_Out_ PHANDLE PortHandle, _In_opt_ PVOID PortContext, _In_ PPORT_MESSAGE ConnectionRequest, _In_ BOOLEAN AcceptConnection, _Inout_opt_ PPORT_VIEW ServerView, _Out_opt_ PREMOTE_PORT_VIEW ClientView)
 
NTSYSCALLAPI NTSTATUS NTAPI NtCompleteConnectPort (_In_ HANDLE PortHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtRequestPort (_In_ HANDLE PortHandle, _In_reads_bytes_(RequestMessage->u1.s1.TotalLength) PPORT_MESSAGE RequestMessage)
 
NTSYSCALLAPI NTSTATUS NTAPI NtRequestWaitReplyPort (_In_ HANDLE PortHandle, _In_reads_bytes_(RequestMessage->u1.s1.TotalLength) PPORT_MESSAGE RequestMessage, _Out_ PPORT_MESSAGE ReplyMessage)
 
NTSYSCALLAPI NTSTATUS NTAPI NtReplyPort (_In_ HANDLE PortHandle, _In_reads_bytes_(ReplyMessage->u1.s1.TotalLength) PPORT_MESSAGE ReplyMessage)
 
NTSYSCALLAPI NTSTATUS NTAPI NtReplyWaitReplyPort (_In_ HANDLE PortHandle, _Inout_ PPORT_MESSAGE ReplyMessage)
 
NTSYSCALLAPI NTSTATUS NTAPI NtReplyWaitReceivePort (_In_ HANDLE PortHandle, _Out_opt_ PVOID *PortContext, _In_reads_bytes_opt_(ReplyMessage->u1.s1.TotalLength) PPORT_MESSAGE ReplyMessage, _Out_ PPORT_MESSAGE ReceiveMessage)
 
NTSYSCALLAPI NTSTATUS NTAPI NtReplyWaitReceivePortEx (_In_ HANDLE PortHandle, _Out_opt_ PVOID *PortContext, _In_reads_bytes_opt_(ReplyMessage->u1.s1.TotalLength) PPORT_MESSAGE ReplyMessage, _Out_ PPORT_MESSAGE ReceiveMessage, _In_opt_ PLARGE_INTEGER Timeout)
 
NTSYSCALLAPI NTSTATUS NTAPI NtImpersonateClientOfPort (_In_ HANDLE PortHandle, _In_ PPORT_MESSAGE Message)
 
NTSYSCALLAPI NTSTATUS NTAPI NtReadRequestData (_In_ HANDLE PortHandle, _In_ PPORT_MESSAGE Message, _In_ ULONG DataEntryIndex, _Out_writes_bytes_to_(BufferSize,*NumberOfBytesRead) PVOID Buffer, _In_ SIZE_T BufferSize, _Out_opt_ PSIZE_T NumberOfBytesRead)
 
NTSYSCALLAPI NTSTATUS NTAPI NtWriteRequestData (_In_ HANDLE PortHandle, _In_ PPORT_MESSAGE Message, _In_ ULONG DataEntryIndex, _In_reads_bytes_(BufferSize) PVOID Buffer, _In_ SIZE_T BufferSize, _Out_opt_ PSIZE_T NumberOfBytesWritten)
 
NTSYSCALLAPI NTSTATUS NTAPI NtQueryInformationPort (_In_ HANDLE PortHandle, _In_ PORT_INFORMATION_CLASS PortInformationClass, _Out_writes_bytes_to_(Length,*ReturnLength) PVOID PortInformation, _In_ ULONG Length, _Out_opt_ PULONG ReturnLength)
 
struct DECLSPEC_ALIGN (128) _ALPC_COMPLETION_LIST_HEADER
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreatePort (_Out_ PHANDLE PortHandle, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_opt_ PALPC_PORT_ATTRIBUTES PortAttributes)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDisconnectPort (_In_ HANDLE PortHandle, _In_ ULONG Flags)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcQueryInformation (_In_opt_ HANDLE PortHandle, _In_ ALPC_PORT_INFORMATION_CLASS PortInformationClass, _Inout_updates_bytes_to_(Length,*ReturnLength) PVOID PortInformation, _In_ ULONG Length, _Out_opt_ PULONG ReturnLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcSetInformation (_In_ HANDLE PortHandle, _In_ ALPC_PORT_INFORMATION_CLASS PortInformationClass, _In_reads_bytes_opt_(Length) PVOID PortInformation, _In_ ULONG Length)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreatePortSection (_In_ HANDLE PortHandle, _In_ ULONG Flags, _In_opt_ HANDLE SectionHandle, _In_ SIZE_T SectionSize, _Out_ PALPC_HANDLE AlpcSectionHandle, _Out_ PSIZE_T ActualSectionSize)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDeletePortSection (_In_ HANDLE PortHandle, _Reserved_ ULONG Flags, _In_ ALPC_HANDLE SectionHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreateResourceReserve (_In_ HANDLE PortHandle, _Reserved_ ULONG Flags, _In_ SIZE_T MessageSize, _Out_ PALPC_HANDLE ResourceId)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDeleteResourceReserve (_In_ HANDLE PortHandle, _Reserved_ ULONG Flags, _In_ ALPC_HANDLE ResourceId)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreateSectionView (_In_ HANDLE PortHandle, _Reserved_ ULONG Flags, _Inout_ PALPC_DATA_VIEW_ATTR ViewAttributes)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDeleteSectionView (_In_ HANDLE PortHandle, _Reserved_ ULONG Flags, _In_ PVOID ViewBase)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreateSecurityContext (_In_ HANDLE PortHandle, _Reserved_ ULONG Flags, _Inout_ PALPC_SECURITY_ATTR SecurityAttribute)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDeleteSecurityContext (_In_ HANDLE PortHandle, _Reserved_ ULONG Flags, _In_ ALPC_HANDLE ContextHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcRevokeSecurityContext (_In_ HANDLE PortHandle, _Reserved_ ULONG Flags, _In_ ALPC_HANDLE ContextHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcQueryInformationMessage (_In_ HANDLE PortHandle, _In_ PPORT_MESSAGE PortMessage, _In_ ALPC_MESSAGE_INFORMATION_CLASS MessageInformationClass, _Out_writes_bytes_to_opt_(Length,*ReturnLength) PVOID MessageInformation, _In_ ULONG Length, _Out_opt_ PULONG ReturnLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcConnectPort (_Out_ PHANDLE PortHandle, _In_ PUNICODE_STRING PortName, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_opt_ PALPC_PORT_ATTRIBUTES PortAttributes, _In_ ULONG Flags, _In_opt_ PSID RequiredServerSid, _Inout_updates_bytes_to_opt_(*BufferLength,*BufferLength) PPORT_MESSAGE ConnectionMessage, _Inout_opt_ PULONG BufferLength, _Inout_opt_ PALPC_MESSAGE_ATTRIBUTES OutMessageAttributes, _Inout_opt_ PALPC_MESSAGE_ATTRIBUTES InMessageAttributes, _In_opt_ PLARGE_INTEGER Timeout)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcConnectPortEx (_Out_ PHANDLE PortHandle, _In_ POBJECT_ATTRIBUTES ConnectionPortObjectAttributes, _In_opt_ POBJECT_ATTRIBUTES ClientPortObjectAttributes, _In_opt_ PALPC_PORT_ATTRIBUTES PortAttributes, _In_ ULONG Flags, _In_opt_ PSECURITY_DESCRIPTOR ServerSecurityRequirements, _Inout_updates_bytes_to_opt_(*BufferLength,*BufferLength) PPORT_MESSAGE ConnectionMessage, _Inout_opt_ PSIZE_T BufferLength, _Inout_opt_ PALPC_MESSAGE_ATTRIBUTES OutMessageAttributes, _Inout_opt_ PALPC_MESSAGE_ATTRIBUTES InMessageAttributes, _In_opt_ PLARGE_INTEGER Timeout)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcAcceptConnectPort (_Out_ PHANDLE PortHandle, _In_ HANDLE ConnectionPortHandle, _In_ ULONG Flags, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_opt_ PALPC_PORT_ATTRIBUTES PortAttributes, _In_opt_ PVOID PortContext, _In_reads_bytes_(ConnectionRequest->u1.s1.TotalLength) PPORT_MESSAGE ConnectionRequest, _Inout_opt_ PALPC_MESSAGE_ATTRIBUTES ConnectionMessageAttributes, _In_ BOOLEAN AcceptConnection)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcSendWaitReceivePort (_In_ HANDLE PortHandle, _In_ ULONG Flags, _In_reads_bytes_opt_(SendMessage->u1.s1.TotalLength) PPORT_MESSAGE SendMessage, _Inout_opt_ PALPC_MESSAGE_ATTRIBUTES SendMessageAttributes, _Out_writes_bytes_to_opt_(*BufferLength,*BufferLength) PPORT_MESSAGE ReceiveMessage, _Inout_opt_ PSIZE_T BufferLength, _Inout_opt_ PALPC_MESSAGE_ATTRIBUTES ReceiveMessageAttributes, _In_opt_ PLARGE_INTEGER Timeout)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCancelMessage (_In_ HANDLE PortHandle, _In_ ULONG Flags, _In_ PALPC_CONTEXT_ATTR MessageContext)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcImpersonateClientOfPort (_In_ HANDLE PortHandle, _In_ PPORT_MESSAGE Message, _In_ PVOID Flags)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcImpersonateClientContainerOfPort (_In_ HANDLE PortHandle, _In_ PPORT_MESSAGE Message, _In_ ULONG Flags)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcOpenSenderProcess (_Out_ PHANDLE ProcessHandle, _In_ HANDLE PortHandle, _In_ PPORT_MESSAGE PortMessage, _In_ ULONG Flags, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcOpenSenderThread (_Out_ PHANDLE ThreadHandle, _In_ HANDLE PortHandle, _In_ PPORT_MESSAGE PortMessage, _In_ ULONG Flags, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
 
NTSYSAPI ULONG NTAPI AlpcMaxAllowedMessageLength (VOID)
 
NTSYSAPI ULONG NTAPI AlpcGetHeaderSize (_In_ ULONG Flags)
 
NTSYSAPI NTSTATUS NTAPI AlpcInitializeMessageAttribute (_In_ ULONG AttributeFlags, _Out_opt_ PALPC_MESSAGE_ATTRIBUTES Buffer, _In_ ULONG BufferSize, _Out_ PULONG RequiredBufferSize)
 
NTSYSAPI PVOID NTAPI AlpcGetMessageAttribute (_In_ PALPC_MESSAGE_ATTRIBUTES Buffer, _In_ ULONG AttributeFlag)
 
NTSYSAPI NTSTATUS NTAPI AlpcRegisterCompletionList (_In_ HANDLE PortHandle, _Out_ PALPC_COMPLETION_LIST_HEADER Buffer, _In_ ULONG Size, _In_ ULONG ConcurrencyCount, _In_ ULONG AttributeFlags)
 
NTSYSAPI NTSTATUS NTAPI AlpcUnregisterCompletionList (_In_ HANDLE PortHandle)
 
NTSYSAPI NTSTATUS NTAPI AlpcRundownCompletionList (_In_ HANDLE PortHandle)
 
NTSYSAPI NTSTATUS NTAPI AlpcAdjustCompletionListConcurrencyCount (_In_ HANDLE PortHandle, _In_ ULONG ConcurrencyCount)
 
NTSYSAPI BOOLEAN NTAPI AlpcRegisterCompletionListWorkerThread (_Inout_ PVOID CompletionList)
 
NTSYSAPI BOOLEAN NTAPI AlpcUnregisterCompletionListWorkerThread (_Inout_ PVOID CompletionList)
 
NTSYSAPI VOID NTAPI AlpcGetCompletionListLastMessageInformation (_In_ PVOID CompletionList, _Out_ PULONG LastMessageId, _Out_ PULONG LastCallbackId)
 
NTSYSAPI ULONG NTAPI AlpcGetOutstandingCompletionListMessageCount (_In_ PVOID CompletionList)
 
NTSYSAPI PPORT_MESSAGE NTAPI AlpcGetMessageFromCompletionList (_In_ PVOID CompletionList, _Out_opt_ PALPC_MESSAGE_ATTRIBUTES *MessageAttributes)
 
NTSYSAPI VOID NTAPI AlpcFreeCompletionListMessage (_Inout_ PVOID CompletionList, _In_ PPORT_MESSAGE Message)
 
NTSYSAPI
PALPC_MESSAGE_ATTRIBUTES NTAPI 
AlpcGetCompletionListMessageAttributes (_In_ PVOID CompletionList, _In_ PPORT_MESSAGE Message)
 

Variables

 ALPC_COMPLETION_LIST_HEADER
 
PALPC_COMPLETION_LIST_HEADER
 

Macro Definition Documentation

#define ALPC_CANCELFLG_NO_CONTEXT_CHECK   0x8

Definition at line 776 of file ntlpcapi.h.

#define ALPC_CANCELFLG_TRY_CANCEL   0x1

Definition at line 775 of file ntlpcapi.h.

#define ALPC_CANCELFLGP_FLUSH   0x10000

Definition at line 777 of file ntlpcapi.h.

#define ALPC_COMPLETION_LIST_BUFFER_GRANULARITY_MASK   0x3f

Definition at line 410 of file ntlpcapi.h.

#define ALPC_HANDLEFLG_DUPLICATE_INHERIT   0x80000

Definition at line 451 of file ntlpcapi.h.

#define ALPC_HANDLEFLG_DUPLICATE_SAME_ACCESS   0x10000

Definition at line 449 of file ntlpcapi.h.

#define ALPC_HANDLEFLG_DUPLICATE_SAME_ATTRIBUTES   0x20000

Definition at line 450 of file ntlpcapi.h.

#define ALPC_MESSAGE_CONTEXT_ATTRIBUTE   0x20000000

Definition at line 384 of file ntlpcapi.h.

#define ALPC_MESSAGE_HANDLE_ATTRIBUTE   0x10000000

Definition at line 385 of file ntlpcapi.h.

#define ALPC_MESSAGE_SECURITY_ATTRIBUTE   0x80000000

Definition at line 382 of file ntlpcapi.h.

#define ALPC_MESSAGE_VIEW_ATTRIBUTE   0x40000000

Definition at line 383 of file ntlpcapi.h.

#define ALPC_MSGFLG_LPC_MODE   0x2

Definition at line 703 of file ntlpcapi.h.

#define ALPC_MSGFLG_RELEASE_MESSAGE   0x10000

Definition at line 704 of file ntlpcapi.h.

#define ALPC_MSGFLG_REPLY_MESSAGE   0x1

Definition at line 702 of file ntlpcapi.h.

#define ALPC_MSGFLG_SYNC_REQUEST   0x20000

Definition at line 705 of file ntlpcapi.h.

#define ALPC_MSGFLG_WAIT_ALERTABLE   0x200000

Definition at line 707 of file ntlpcapi.h.

#define ALPC_MSGFLG_WAIT_USER_MODE   0x100000

Definition at line 706 of file ntlpcapi.h.

#define ALPC_MSGFLG_WOW64_CALL   0x80000000

Definition at line 708 of file ntlpcapi.h.

#define ALPC_PORFLG_ALLOW_LPC_REQUESTS   0x20000

Definition at line 360 of file ntlpcapi.h.

#define ALPC_PORFLG_SYSTEM_PROCESS   0x100000

Definition at line 362 of file ntlpcapi.h.

#define ALPC_PORFLG_WAITABLE_PORT   0x40000

Definition at line 361 of file ntlpcapi.h.

#define ALPC_SECFLG_CREATE_HANDLE   0x20000

Definition at line 463 of file ntlpcapi.h.

#define ALPC_VIEWFLG_NOT_SECURE   0x40000

Definition at line 474 of file ntlpcapi.h.

#define LPC_CLIENT_DIED   6

Definition at line 59 of file ntlpcapi.h.

#define LPC_CONNECTION_REQUEST   10

Definition at line 63 of file ntlpcapi.h.

#define LPC_DATAGRAM   3

Definition at line 56 of file ntlpcapi.h.

#define LPC_DEBUG_EVENT   8

Definition at line 61 of file ntlpcapi.h.

#define LPC_ERROR_EVENT   9

Definition at line 62 of file ntlpcapi.h.

#define LPC_EXCEPTION   7

Definition at line 60 of file ntlpcapi.h.

#define LPC_KERNELMODE_MESSAGE   (CSHORT)0x8000

Definition at line 65 of file ntlpcapi.h.

#define LPC_LOST_REPLY   4

Definition at line 57 of file ntlpcapi.h.

#define LPC_MAX_CONNECTION_INFO_SIZE   (16 * sizeof(ULONG_PTR))

Definition at line 76 of file ntlpcapi.h.

#define LPC_NO_IMPERSONATE   (CSHORT)0x4000

Definition at line 66 of file ntlpcapi.h.

#define LPC_PORT_CLOSED   5

Definition at line 58 of file ntlpcapi.h.

#define LPC_REPLY   2

Definition at line 55 of file ntlpcapi.h.

#define LPC_REQUEST   1

Definition at line 54 of file ntlpcapi.h.

#define PORT_ALL_ACCESS   (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1)

Definition at line 7 of file ntlpcapi.h.

#define PORT_CONNECT   0x0001

Definition at line 6 of file ntlpcapi.h.

#define PORT_MAXIMUM_MESSAGE_LENGTH   256

Definition at line 73 of file ntlpcapi.h.

#define PORT_TOTAL_MAXIMUM_MESSAGE_LENGTH   ((PORT_MAXIMUM_MESSAGE_LENGTH + sizeof(PORT_MESSAGE) + LPC_MAX_CONNECTION_INFO_SIZE + 0xf) & ~0xf)

Definition at line 78 of file ntlpcapi.h.

#define PORT_VALID_OBJECT_ATTRIBUTES   OBJ_CASE_INSENSITIVE

Definition at line 68 of file ntlpcapi.h.

Typedef Documentation

typedef HANDLE ALPC_HANDLE

Definition at line 358 of file ntlpcapi.h.

typedef HANDLE * PALPC_HANDLE

Definition at line 358 of file ntlpcapi.h.

typedef struct _PORT_MESSAGE PORT_MESSAGE
typedef struct _PORT_VIEW PORT_VIEW
typedef struct _PORT_VIEW64 PORT_VIEW64
typedef struct _PORT_MESSAGE * PPORT_MESSAGE
typedef struct _PORT_MESSAGE64 * PPORT_MESSAGE64
typedef struct _PORT_VIEW * PPORT_VIEW
typedef struct _PORT_VIEW64 * PPORT_VIEW64

Enumeration Type Documentation

Enumerator:
AlpcMessageSidInformation 
AlpcMessageTokenModifiedIdInformation 
MaxAlpcMessageInfoClass 

Definition at line 554 of file ntlpcapi.h.

Enumerator:
AlpcBasicInformation 
AlpcPortInformation 
AlpcAssociateCompletionPortInformation 
AlpcConnectedSIDInformation 
AlpcServerInformation 
AlpcMessageZoneInformation 
AlpcRegisterCompletionListInformation 
AlpcUnregisterCompletionListInformation 
AlpcAdjustCompletionListConcurrencyCountInformation 
AlpcRegisterCallbackInformation 
AlpcCompletionListRundownInformation 
AlpcWaitForPortReferences 
MaxAlpcPortInfoClass 

Definition at line 487 of file ntlpcapi.h.

Enumerator:
PortBasicInformation 
PortDumpInformation 

Definition at line 338 of file ntlpcapi.h.

Function Documentation

NTSYSAPI NTSTATUS NTAPI AlpcAdjustCompletionListConcurrencyCount ( _In_ HANDLE  PortHandle,
_In_ ULONG  ConcurrencyCount 
)
NTSYSAPI VOID NTAPI AlpcFreeCompletionListMessage ( _Inout_ PVOID  CompletionList,
_In_ PPORT_MESSAGE  Message 
)
NTSYSAPI VOID NTAPI AlpcGetCompletionListLastMessageInformation ( _In_ PVOID  CompletionList,
_Out_ PULONG  LastMessageId,
_Out_ PULONG  LastCallbackId 
)
NTSYSAPI PALPC_MESSAGE_ATTRIBUTES NTAPI AlpcGetCompletionListMessageAttributes ( _In_ PVOID  CompletionList,
_In_ PPORT_MESSAGE  Message 
)
NTSYSAPI ULONG NTAPI AlpcGetHeaderSize ( _In_ ULONG  Flags)
NTSYSAPI PVOID NTAPI AlpcGetMessageAttribute ( _In_ PALPC_MESSAGE_ATTRIBUTES  Buffer,
_In_ ULONG  AttributeFlag 
)
NTSYSAPI PPORT_MESSAGE NTAPI AlpcGetMessageFromCompletionList ( _In_ PVOID  CompletionList,
_Out_opt_ PALPC_MESSAGE_ATTRIBUTES MessageAttributes 
)
NTSYSAPI ULONG NTAPI AlpcGetOutstandingCompletionListMessageCount ( _In_ PVOID  CompletionList)
NTSYSAPI NTSTATUS NTAPI AlpcInitializeMessageAttribute ( _In_ ULONG  AttributeFlags,
_Out_opt_ PALPC_MESSAGE_ATTRIBUTES  Buffer,
_In_ ULONG  BufferSize,
_Out_ PULONG  RequiredBufferSize 
)
NTSYSAPI ULONG NTAPI AlpcMaxAllowedMessageLength ( VOID  )
NTSYSAPI NTSTATUS NTAPI AlpcRegisterCompletionList ( _In_ HANDLE  PortHandle,
_Out_ PALPC_COMPLETION_LIST_HEADER  Buffer,
_In_ ULONG  Size,
_In_ ULONG  ConcurrencyCount,
_In_ ULONG  AttributeFlags 
)
NTSYSAPI BOOLEAN NTAPI AlpcRegisterCompletionListWorkerThread ( _Inout_ PVOID  CompletionList)
NTSYSAPI NTSTATUS NTAPI AlpcRundownCompletionList ( _In_ HANDLE  PortHandle)
NTSYSAPI NTSTATUS NTAPI AlpcUnregisterCompletionList ( _In_ HANDLE  PortHandle)
NTSYSAPI BOOLEAN NTAPI AlpcUnregisterCompletionListWorkerThread ( _Inout_ PVOID  CompletionList)
struct DECLSPEC_ALIGN ( 128  )
read

Definition at line 413 of file ntlpcapi.h.

NTSYSCALLAPI NTSTATUS NTAPI NtAcceptConnectPort ( _Out_ PHANDLE  PortHandle,
_In_opt_ PVOID  PortContext,
_In_ PPORT_MESSAGE  ConnectionRequest,
_In_ BOOLEAN  AcceptConnection,
_Inout_opt_ PPORT_VIEW  ServerView,
_Out_opt_ PREMOTE_PORT_VIEW  ClientView 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcAcceptConnectPort ( _Out_ PHANDLE  PortHandle,
_In_ HANDLE  ConnectionPortHandle,
_In_ ULONG  Flags,
_In_opt_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_opt_ PALPC_PORT_ATTRIBUTES  PortAttributes,
_In_opt_ PVOID  PortContext,
_In_reads_bytes_(ConnectionRequest->u1.s1.TotalLength) PPORT_MESSAGE  ConnectionRequest,
_Inout_opt_ PALPC_MESSAGE_ATTRIBUTES  ConnectionMessageAttributes,
_In_ BOOLEAN  AcceptConnection 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCancelMessage ( _In_ HANDLE  PortHandle,
_In_ ULONG  Flags,
_In_ PALPC_CONTEXT_ATTR  MessageContext 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcConnectPort ( _Out_ PHANDLE  PortHandle,
_In_ PUNICODE_STRING  PortName,
_In_opt_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_opt_ PALPC_PORT_ATTRIBUTES  PortAttributes,
_In_ ULONG  Flags,
_In_opt_ PSID  RequiredServerSid,
_Inout_updates_bytes_to_opt_ *,*BufferLength PPORT_MESSAGE  ConnectionMessage,
_Inout_opt_ PULONG  BufferLength,
_Inout_opt_ PALPC_MESSAGE_ATTRIBUTES  OutMessageAttributes,
_Inout_opt_ PALPC_MESSAGE_ATTRIBUTES  InMessageAttributes,
_In_opt_ PLARGE_INTEGER  Timeout 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcConnectPortEx ( _Out_ PHANDLE  PortHandle,
_In_ POBJECT_ATTRIBUTES  ConnectionPortObjectAttributes,
_In_opt_ POBJECT_ATTRIBUTES  ClientPortObjectAttributes,
_In_opt_ PALPC_PORT_ATTRIBUTES  PortAttributes,
_In_ ULONG  Flags,
_In_opt_ PSECURITY_DESCRIPTOR  ServerSecurityRequirements,
_Inout_updates_bytes_to_opt_ *,*BufferLength PPORT_MESSAGE  ConnectionMessage,
_Inout_opt_ PSIZE_T  BufferLength,
_Inout_opt_ PALPC_MESSAGE_ATTRIBUTES  OutMessageAttributes,
_Inout_opt_ PALPC_MESSAGE_ATTRIBUTES  InMessageAttributes,
_In_opt_ PLARGE_INTEGER  Timeout 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreatePort ( _Out_ PHANDLE  PortHandle,
_In_opt_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_opt_ PALPC_PORT_ATTRIBUTES  PortAttributes 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreatePortSection ( _In_ HANDLE  PortHandle,
_In_ ULONG  Flags,
_In_opt_ HANDLE  SectionHandle,
_In_ SIZE_T  SectionSize,
_Out_ PALPC_HANDLE  AlpcSectionHandle,
_Out_ PSIZE_T  ActualSectionSize 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreateResourceReserve ( _In_ HANDLE  PortHandle,
_Reserved_ ULONG  Flags,
_In_ SIZE_T  MessageSize,
_Out_ PALPC_HANDLE  ResourceId 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreateSectionView ( _In_ HANDLE  PortHandle,
_Reserved_ ULONG  Flags,
_Inout_ PALPC_DATA_VIEW_ATTR  ViewAttributes 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcCreateSecurityContext ( _In_ HANDLE  PortHandle,
_Reserved_ ULONG  Flags,
_Inout_ PALPC_SECURITY_ATTR  SecurityAttribute 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDeletePortSection ( _In_ HANDLE  PortHandle,
_Reserved_ ULONG  Flags,
_In_ ALPC_HANDLE  SectionHandle 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDeleteResourceReserve ( _In_ HANDLE  PortHandle,
_Reserved_ ULONG  Flags,
_In_ ALPC_HANDLE  ResourceId 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDeleteSectionView ( _In_ HANDLE  PortHandle,
_Reserved_ ULONG  Flags,
_In_ PVOID  ViewBase 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDeleteSecurityContext ( _In_ HANDLE  PortHandle,
_Reserved_ ULONG  Flags,
_In_ ALPC_HANDLE  ContextHandle 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcDisconnectPort ( _In_ HANDLE  PortHandle,
_In_ ULONG  Flags 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcImpersonateClientContainerOfPort ( _In_ HANDLE  PortHandle,
_In_ PPORT_MESSAGE  Message,
_In_ ULONG  Flags 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcImpersonateClientOfPort ( _In_ HANDLE  PortHandle,
_In_ PPORT_MESSAGE  Message,
_In_ PVOID  Flags 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcOpenSenderProcess ( _Out_ PHANDLE  ProcessHandle,
_In_ HANDLE  PortHandle,
_In_ PPORT_MESSAGE  PortMessage,
_In_ ULONG  Flags,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcOpenSenderThread ( _Out_ PHANDLE  ThreadHandle,
_In_ HANDLE  PortHandle,
_In_ PPORT_MESSAGE  PortMessage,
_In_ ULONG  Flags,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcQueryInformation ( _In_opt_ HANDLE  PortHandle,
_In_ ALPC_PORT_INFORMATION_CLASS  PortInformationClass,
_Inout_updates_bytes_to_(Length,*ReturnLength) PVOID  PortInformation,
_In_ ULONG  Length,
_Out_opt_ PULONG  ReturnLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcQueryInformationMessage ( _In_ HANDLE  PortHandle,
_In_ PPORT_MESSAGE  PortMessage,
_In_ ALPC_MESSAGE_INFORMATION_CLASS  MessageInformationClass,
_Out_writes_bytes_to_opt_(Length,*ReturnLength) PVOID  MessageInformation,
_In_ ULONG  Length,
_Out_opt_ PULONG  ReturnLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcRevokeSecurityContext ( _In_ HANDLE  PortHandle,
_Reserved_ ULONG  Flags,
_In_ ALPC_HANDLE  ContextHandle 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcSendWaitReceivePort ( _In_ HANDLE  PortHandle,
_In_ ULONG  Flags,
_In_reads_bytes_opt_(SendMessage->u1.s1.TotalLength) PPORT_MESSAGE  SendMessage,
_Inout_opt_ PALPC_MESSAGE_ATTRIBUTES  SendMessageAttributes,
_Out_writes_bytes_to_opt_ *,*BufferLength PPORT_MESSAGE  ReceiveMessage,
_Inout_opt_ PSIZE_T  BufferLength,
_Inout_opt_ PALPC_MESSAGE_ATTRIBUTES  ReceiveMessageAttributes,
_In_opt_ PLARGE_INTEGER  Timeout 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAlpcSetInformation ( _In_ HANDLE  PortHandle,
_In_ ALPC_PORT_INFORMATION_CLASS  PortInformationClass,
_In_reads_bytes_opt_(Length) PVOID  PortInformation,
_In_ ULONG  Length 
)
NTSYSCALLAPI NTSTATUS NTAPI NtCompleteConnectPort ( _In_ HANDLE  PortHandle)
NTSYSCALLAPI NTSTATUS NTAPI NtConnectPort ( _Out_ PHANDLE  PortHandle,
_In_ PUNICODE_STRING  PortName,
_In_ PSECURITY_QUALITY_OF_SERVICE  SecurityQos,
_Inout_opt_ PPORT_VIEW  ClientView,
_Inout_opt_ PREMOTE_PORT_VIEW  ServerView,
_Out_opt_ PULONG  MaxMessageLength,
_Inout_updates_bytes_to_opt_ *,*ConnectionInformationLength PVOID  ConnectionInformation,
_Inout_opt_ PULONG  ConnectionInformationLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtCreatePort ( _Out_ PHANDLE  PortHandle,
_In_opt_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_ ULONG  MaxConnectionInfoLength,
_In_ ULONG  MaxMessageLength,
_In_opt_ ULONG  MaxPoolUsage 
)
NTSYSCALLAPI NTSTATUS NTAPI NtCreateWaitablePort ( _Out_ PHANDLE  PortHandle,
_In_opt_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_ ULONG  MaxConnectionInfoLength,
_In_ ULONG  MaxMessageLength,
_In_opt_ ULONG  MaxPoolUsage 
)
NTSYSCALLAPI NTSTATUS NTAPI NtImpersonateClientOfPort ( _In_ HANDLE  PortHandle,
_In_ PPORT_MESSAGE  Message 
)
NTSYSCALLAPI NTSTATUS NTAPI NtListenPort ( _In_ HANDLE  PortHandle,
_Out_ PPORT_MESSAGE  ConnectionRequest 
)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryInformationPort ( _In_ HANDLE  PortHandle,
_In_ PORT_INFORMATION_CLASS  PortInformationClass,
_Out_writes_bytes_to_(Length,*ReturnLength) PVOID  PortInformation,
_In_ ULONG  Length,
_Out_opt_ PULONG  ReturnLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtReadRequestData ( _In_ HANDLE  PortHandle,
_In_ PPORT_MESSAGE  Message,
_In_ ULONG  DataEntryIndex,
_Out_writes_bytes_to_(BufferSize,*NumberOfBytesRead) PVOID  Buffer,
_In_ SIZE_T  BufferSize,
_Out_opt_ PSIZE_T  NumberOfBytesRead 
)
NTSYSCALLAPI NTSTATUS NTAPI NtReplyPort ( _In_ HANDLE  PortHandle,
_In_reads_bytes_(ReplyMessage->u1.s1.TotalLength) PPORT_MESSAGE  ReplyMessage 
)
NTSYSCALLAPI NTSTATUS NTAPI NtReplyWaitReceivePort ( _In_ HANDLE  PortHandle,
_Out_opt_ PVOID *  PortContext,
_In_reads_bytes_opt_(ReplyMessage->u1.s1.TotalLength) PPORT_MESSAGE  ReplyMessage,
_Out_ PPORT_MESSAGE  ReceiveMessage 
)
NTSYSCALLAPI NTSTATUS NTAPI NtReplyWaitReceivePortEx ( _In_ HANDLE  PortHandle,
_Out_opt_ PVOID *  PortContext,
_In_reads_bytes_opt_(ReplyMessage->u1.s1.TotalLength) PPORT_MESSAGE  ReplyMessage,
_Out_ PPORT_MESSAGE  ReceiveMessage,
_In_opt_ PLARGE_INTEGER  Timeout 
)
NTSYSCALLAPI NTSTATUS NTAPI NtReplyWaitReplyPort ( _In_ HANDLE  PortHandle,
_Inout_ PPORT_MESSAGE  ReplyMessage 
)
NTSYSCALLAPI NTSTATUS NTAPI NtRequestPort ( _In_ HANDLE  PortHandle,
_In_reads_bytes_(RequestMessage->u1.s1.TotalLength) PPORT_MESSAGE  RequestMessage 
)
NTSYSCALLAPI NTSTATUS NTAPI NtRequestWaitReplyPort ( _In_ HANDLE  PortHandle,
_In_reads_bytes_(RequestMessage->u1.s1.TotalLength) PPORT_MESSAGE  RequestMessage,
_Out_ PPORT_MESSAGE  ReplyMessage 
)
NTSYSCALLAPI NTSTATUS NTAPI NtSecureConnectPort ( _Out_ PHANDLE  PortHandle,
_In_ PUNICODE_STRING  PortName,
_In_ PSECURITY_QUALITY_OF_SERVICE  SecurityQos,
_Inout_opt_ PPORT_VIEW  ClientView,
_In_opt_ PSID  RequiredServerSid,
_Inout_opt_ PREMOTE_PORT_VIEW  ServerView,
_Out_opt_ PULONG  MaxMessageLength,
_Inout_updates_bytes_to_opt_ *,*ConnectionInformationLength PVOID  ConnectionInformation,
_Inout_opt_ PULONG  ConnectionInformationLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtWriteRequestData ( _In_ HANDLE  PortHandle,
_In_ PPORT_MESSAGE  Message,
_In_ ULONG  DataEntryIndex,
_In_reads_bytes_(BufferSize) PVOID  Buffer,
_In_ SIZE_T  BufferSize,
_Out_opt_ PSIZE_T  NumberOfBytesWritten 
)

Variable Documentation

ALPC_COMPLETION_LIST_HEADER

Definition at line 436 of file ntlpcapi.h.

* PALPC_COMPLETION_LIST_HEADER

Definition at line 436 of file ntlpcapi.h.