NtReplyWaitReceivePort - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
#ifndef _NTLPCAPI_H

/**
 * The NtReplyWaitReceivePort routine sends a reply and waits for a new message.
 *
 * \param PortHandle Handle to the port object.
 * \param PortContext Optional receives the context associated with the port.
 * \param ReplyMessage Optional pointer to the reply message.
 * \return NTSTATUS Successful or errant status.
 */
_Kernel_entry_
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
    );

#endif

View code on GitHub
#ifndef _NTZWAPI_H

_Kernel_entry_
NTSYSCALLAPI
NTSTATUS
NTAPI
ZwReplyWaitReceivePort(
    _In_ HANDLE PortHandle,
    _Out_opt_ PVOID *PortContext,
    _In_reads_bytes_opt_(ReplyMessage->u1.s1.TotalLength) PPORT_MESSAGE ReplyMessage,
    _Out_ PPORT_MESSAGE ReceiveMessage
    );

#endif

View code on GitHub

NtDoc

No description available.

NTinternals.net (undocumented.ntinternals.net)

NtReplyWaitReceivePort is typically used by LPC server process for receive LPC requests incoming from client process.

PortHandle

HANDLE to Port Object returned by

ReceivePortHandle

Reply

If other side waiting for reply message, you can send it by specifying LPC Message Buffer as this parameter.

IncomingRequest

Pointer to user's allocated buffer receiving request data. Received data starts with


Documented by

See also