PFLT_CONNECT_NOTIFYコールバック関数 (fltkernel.h)

FltMgr は、ミニフィルターの ConnectNotifyCallback コールバック関数を呼び出して、通信ポートへの新しい接続が要求されたときにミニフィルターに通知します。

構文

PFLT_CONNECT_NOTIFY PfltConnectNotify;

NTSTATUS PfltConnectNotify(
  PFLT_PORT ClientPort,
  PVOID ServerPortCookie,
  PVOID ConnectionContext,
  ULONG SizeOfContext,
  PVOID *ConnectionPortCookie
)
{...}

パラメーター

ClientPort

[in]ユーザー モード アプリケーションとカーネル モード ミニフィルターの間で確立されている新しいクライアント ポートの非透過的な FltMgr生成されたハンドル。

ミニフィルターは、このクライアント ポートでメッセージを送信および応答するときに FltSendMessage を するには、このハンドルを ClientPort パラメーターとして渡す必要があります。

ミニフィルターは、最終的に FltCloseClientPort を呼び出してこのクライアント ポートを閉じる必要があります。通常は、DisconnectNotifyCallback ルーチンから閉じます。

ClientPort は、FltCreateCommunicationPortによって返される ServerPort ハンドル同じではありません。

ServerPortCookie

[in]ミニフィルターによって定義されたコンテキスト情報へのポインター。 ミニフィルターでは、この情報を使用して、作成する可能性がある複数の通信サーバー ポートを区別できます。 サーバー ポートが作成されると、ミニフィルター ドライバーは、このコンテキスト ポインターを ServerPortCookie パラメーターとして渡して、FltCreateCommunicationPortを しました。

ConnectionContext

[in]ユーザー モード アプリケーションが lpContext パラメーターで FilterConnectCommunicationPortを するために渡したコンテキスト情報ポインター。

SizeOfContext

[in]ConnectionContext が指 バッファーのサイズ (バイト単位)。

ConnectionPortCookie

[out]このクライアント ポートを一意に識別するミニポートの情報へのポインター。 ミニフィルターは、FltMgr が後続の呼び出しで接続 MessageNotifyCallback に渡し、DisconnectNotifyCallbackを するときに、この Cookie を使用して接続を識別できます。

戻り値

ConnectNotifyCallback は、操作が成功し、接続が受け入れられた場合にSTATUS_SUCCESSを返します。 それ以外の場合は、次のような適切な NTSTATUS 値が返されます。

リターン コード 意味
STATUS_INSUFFICIENT_RESOURCES 操作を完了するのに十分なリソースがありません。
STATUS_INVALID_PARAMETER 1 つ以上の入力パラメーターが無効です。

備考

FltMgr 、ユーザー モード アプリケーションが FilterConnectCommunicationPort を呼び出してミニフィルター ドライバーに接続要求を送信するたびに、このルーチンを呼び出します。

ミニフィルターは、接続試行に必要な検証を実行する必要があります。

詳細については、「ユーザー モードとミニフィルターの間の通信を参照してください。

必要条件

要件 価値
ヘッダー fltkernel.h
ライブラリ FltMgr.lib
DLL FltMgr.sys
IRQL PASSIVE_LEVEL

関連項目

FilterConnectCommunicationPort

FltCloseClientPort を する

FltCreateCommunicationPort を する

FltSendMessage を する

DisconnectNotifyCallback の

MessageNotifyCallback