次の方法で共有


TCP_OFFLOAD_RECEIVE_INDICATE_HANDLER コールバック関数 (ndischimney.h)

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

NDIS は、プロトコル ドライバーまたは中間ドライバーを呼び出します。 ProtocolTcpOffloadReceiveIndicate 基になるドライバーまたはオフロード ターゲットによって示されている受信データを配信する関数です。

構文

TCP_OFFLOAD_RECEIVE_INDICATE_HANDLER TcpOffloadReceiveIndicateHandler;

NDIS_STATUS TcpOffloadReceiveIndicateHandler(
  [in]  IN PVOID OffloadContext,
  [in]  IN PNET_BUFFER_LIST NetBufferList,
  [in]  IN NDIS_STATUS Status,
  [out] OUT PULONG BytesConsumed
)
{...}

パラメーター

[in] OffloadContext

表示が行われている TCP 接続のプロトコルまたは中間ドライバーの NDIS_OFFLOAD_HANDLE 構造体へのポインター。 プロトコルまたは中間ドライバーは、接続をオフロードするときに、NdisInitiateOffload 関数への入力パラメーターとしてこのポインターを指定しました。

[in] NetBufferList

NET_BUFFER_LIST 構造体へのポインター。 各 NET_BUFFER_LIST 構造体は、NET_BUFFER 構造体の一覧を記述します。 リスト内の各 NET_BUFFER 構造体は、メモリ記述子リスト (MDL)のチェーンにマップされます。 MDL には、受信したデータが含まれています。 MDL は、常駐状態を維持するようにロックされますが、システム メモリにはマップされません。

NetBufferList で指定された NET_BUFFER_LIST 構造体はスタンドアロン構造体である必要があり、NET_BUFFER_LIST 構造体のリンクされたリストの最初の構造体にすることはできません。 オフロード ターゲットは、オフロード受信表示で同じ NET_BUFFER に必要な数の MDL をチェーンすることで、この制限を回避できます。

[in] Status

中間ドライバーは、呼び出し時にこの状態を伝達する必要がありますNdisTcpOffloadReceiveHandler します。

[out] BytesConsumed

クライアント アプリケーションによって使用されたバイト数を受け取る ULONG 型の変数へのポインター。

戻り値

ProtocolTcpOffloadReceiveIndicate 関数は、次のいずれかの値を返すことができます。

リターン コード 形容
NDIS_STATUS_SUCCESS
クライアント アプリケーションは、指定されたすべての受信データを使用しました。
NDIS_STATUS_OFFLOAD_DATA_NOT_ACCEPTED
クライアント アプリケーションは、指定されたすべての受信データを拒否しました。
NDIS_STATUS_OFFLOAD_DATA_PARTIALLY_ACCEPTED
クライアント アプリケーションは、指定された受信データのサブセットを使用しました。 クライアント アプリケーションによって使用されたデータの量 (バイト単位) は、BytesConsumed パラメーターで指定された変数で返されます。

備考

上にあるドライバーまたはホスト スタックに表示を伝達するには、中間ドライバーは、〘を呼び出します。NdisTcpOffloadReceiveHandler 関数を します。 中間ドライバーは、次のパラメーターを NdisTcpOffloadReceiveHandler 関数に渡します。

  • NdisOffloadHandle オフロード ターゲットは、オフロードされた TCP 接続のコンテキストに格納されています。 詳細については、次を参照してください。中間ドライバー を介してオフロード状態を参照する
  • NetBufferList NDIS が中間ドライバーの ProtocolTcpOffloadReceiveIndicate 関数に渡すポインターです。
  • 状態 NDIS が中間ドライバーの ProtocolTcpOffloadReceiveIndicate 関数に渡されます。

必要条件

要件 価値
ターゲット プラットフォーム ウィンドウズ
ヘッダー ndischimney.h (Ndischimney.h を含む)

関連項目

MDL する

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

NdisInitiateOffload

NdisOffloadTcpReceiveReturn

NdisTcpOffloadReceiveHandler