次の方法で共有


NdisOffloadTcpReceive 関数 (ndischimney.h)

[TCP のチムニー オフロード機能は非推奨であり、使用しないでください。]

プロトコル ドライバーまたは中間ドライバーは、オフロードされた TCP 接続で受信要求 (受信バッファー) をポストする NdisOffloadTcpReceive 関数を呼び出します。

構文

NDIS_STATUS NdisOffloadTcpReceive(
  [in] IN PNDIS_OFFLOAD_HANDLE NdisOffloadHandle,
  [in] IN PNET_BUFFER_LIST     NetBufferList
);

パラメーター

[in] NdisOffloadHandle

オフロードされた TCP 接続の呼び出し元のコンテキスト内の NDIS_OFFLOAD_HANDLE 構造体へのハンドル。 詳細については、次を参照してください。中間ドライバー を介してオフロード状態を参照する

[in] NetBufferList

NET_BUFFER_LIST 構造体へのポインター。 この構造体は、スタンドアロン構造でも、NET_BUFFER_LIST構造のリンクされたリスト内の最初の構造体でもかまいません。 リスト内の各NET_BUFFER_LIST構造体は、1 つの NET_BUFFER 構造体を記述します。 NET_BUFFER構造体は、メモリ記述子リスト (MDL) のチェーンを指します。 NET_BUFFER_LISTおよび関連する構造体は、物理メモリに常駐し続けることができるようにロックされます。 ただし、システム メモリにはマップされません。

戻り値

NdisOffloadTcpReceive 関数は常にNDIS_STATUS_PENDINGを返します。 受信操作は常に非同期的に完了します。

備考

への呼び出しに応答して、ミニポートTcpOffloadReceive 関数、中間ドライバーは、基になる中間ドライバーまたはオフロード ターゲットに受信操作を伝達する NdisOffloadTcpReceive 関数を呼び出します。 詳細については、「I/O 操作の伝達」を参照してください。

NdisOffloadTcpReceive 関数に対して、中間ドライバーは次のコードを渡します。

  • オフロードされた TCP 接続の中間ドライバーのコンテキストに格納されているNDIS_OFFLOAD_HANDLE構造体を参照する NdisOffloadHandle 関数。 詳細については、次を参照してください。中間ドライバー を介してオフロード状態を参照する
  • NDIS が中間ドライバーの ミニポートTcpOffloadReceive 関数に渡したのと同じPNET_BUFFER_LISTポインター。
基になるドライバーまたはオフロード ターゲットが、その後、NdisTcpOffloadReceiveComplete 関数を呼び出すことによって受信操作を完了すると、NDIS は中間ドライバーの ProtocolOffloadReceiveComplete 関数を呼び出します。 その後、中間ドライバーは、NdisTcpOffloadReceiveComplete 関数を呼び出して、前方操作の完了を伝達します。

必要条件

要件 価値
ターゲット プラットフォーム 万国
ヘッダー ndischimney.h (Ndischimney.h を含む)
ライブラリ Ndis.lib

関連項目

ミニポートTcpOffloadReceive

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

NdisTcpOffloadReceiveComplete ProtocolTcpOffloadReceiveComplete