次の方法で共有


NdisOffloadTcpSend 関数 (ndischimney.h)

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

プロトコル ドライバーまたは中間ドライバーは 、NdisOffloadTcpSend 関数を呼び出して、オフロードされた TCP 接続でデータを送信します。

構文

NDIS_STATUS NdisOffloadTcpSend(
  [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構造体は、 NET_BUFFER 構造体の一覧を記述します。 リスト内の各NET_BUFFER構造体は、メモリ記述子リスト (MDL) のチェーンを指します。 MDP には、送信するデータが含まれます。 NET_BUFFER_LISTおよび関連する構造体は、物理メモリに常駐するようにロックされます。 ただし、システム メモリにはマップされません。

戻り値

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

注釈

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

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

  • オフロードされた TCP 接続の中間ドライバーのコンテキストに格納されているNDIS_OFFLOAD_HANDLE構造体を参照する NdisOffloadHandle 。 詳細については、「 中間ドライバーを介したオフロード状態の参照
  • NDIS が中間ドライバーの MiniportTcpOffloadSend 関数に渡したのと同じPNET_BUFFER_LISTポインター。
基になるドライバーまたはオフロード ターゲットが後で NdisTcpOffloadSendComplete 関数を呼び出して送信操作を完了すると、NDIS は中間ドライバーの ProtocolOffloadSendComplete 関数を呼び出します。 次に、中間ドライバーは NdisTcpOffloadSendComplete 関数を呼び出して、送信操作の完了を伝達します。

要件

要件
対象プラットフォーム ユニバーサル
Header ndischimney.h (Ndischimney.h を含む)
Library Ndis.lib

こちらもご覧ください

MiniportTcpOffloadSend

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

NdisTcpOffloadSendComplete

ProtocolTcpOffloadSendComplete