共用方式為


NDIS_TCP_OFFLOAD_DISCONNECT_COMPLETE回呼函式 (ndischimney.h)

[TCP chimney 卸除功能已被取代,不應使用。]

卸除目標會呼叫 NdisTcpOffloadDisconnectComplete 函式,以完成先前呼叫 所起始的中斷連線要求卸除目標的 MiniportTcpOffloadDisconnect 函式。

語法

NDIS_TCP_OFFLOAD_DISCONNECT_COMPLETE NdisTcpOffloadDisconnectComplete;

void NdisTcpOffloadDisconnectComplete(
  [in] IN NDIS_HANDLE NdisMiniportHandle,
  [in] IN PNET_BUFFER_LIST NetBufferList
)
{...}

參數

[in] NdisMiniportHandle

卸除目標在先前呼叫 中取得的句柄 NdisMRegisterMiniportDriver 函 式。

[in] NetBufferList

單一 NET_BUFFER_LIST 結構的指標。 卸除目標取得此指標做為其輸入參數 MiniportTcpOffloadDisconnect 函式。

傳回值

備註

完成中止中斷連線

如果卸除目標發出中止中斷連線,它必須先執行下列動作,才能呼叫 NdisTcpOffloadDisconnectComplete 函式:

  • 以狀態值為 NDIS_STATUS_REQUEST_ABORTED 完成連線上的所有未處理傳送要求。 卸除目標會將此狀態值寫入連結清單中每個NET_BUFFER_LIST結構 的狀態成員, 並傳遞給 NdisTcpOffloadSendComplete 函 式。
  • 將狀態值寫入 NetBufferList 指標所指向之NET_BUFFER_LIST結構的 Status 成員。 狀態值NDIS_STATUS_SUCCESS指出卸除目標已成功傳送 RST 區段。 如需允許狀態值的描述,請參閱 NET_BUFFER_LIST
完成正常中斷連線

完成正常中斷連線要求之前,卸除目標必須:

  • 將狀態值寫入傳遞給NET_BUFFER_LIST結構的 Status 成員 NdisTcpOffloadDisconnectComplete 函式:
    • NDIS_STATUS_SUCCESS值表示 FIN 區段以及任何用戶數據都已成功由卸 除目標傳送 ,而且遠端主機也已認可。
    • NDIS_STATUS_UPLOAD_IN_PROGRESS 值表示 正在上傳 NdisMiniportHandle 所參考的 TCP 連線。
    • NDIS_STATUS_REQUEST_ABORTED值表示 FIN 區段和/或任何用戶數據未由卸除目標成功傳輸,而且遠端主機已認可。 主機堆疊最終會終止 TCP 連線的卸除。
  • 指定已傳送並成功認可的用戶數據位元組數目。 卸除目標會呼叫標識符為TcpOffloadBytesTransferred的 NET_BUFFER_LIST_INFO 宏,以執行這項作業。
  • 呼叫 NdisAdvanceNetBufferDataStart 函式。 NetBufferList 參數應該指向與卸除目標傳遞給 NdisTcpOffloadDisconnectComplete 函式之NET_BUFFER_LIST結構相關聯的NET_BUFFER結構。 DataOffsetDelta 參數應該指定卸除目標所傳輸之NET_BUFFER結構中的數據位元組數目,並成功由遠端主機認可。 FreeMdl 參數應該是 NULL
請注意, NdisTcpOffloadDisconnectComplete 函式只會傳回 NDIS 傳遞至卸除目標之 NET_BUFFER_LIST 結構和相關聯的結構 MiniportTcpOffloadDisconnect 函式。 NdisTcpOffloadDisconnectComplete 函式無法傳回在先前呼叫卸除目標時傳入 NDIS 的NET_BUFFER_LIST結構 MiniportTcpOffloadSend 函式。

規格需求

需求
目標平台 Universal
標頭 ndischimney.h (包含 Ndischimney.h)

另請參閱

MiniportTcpOffloadDisconnect

NET_BUFFER

NET_BUFFER_LIST

NET_BUFFER_LIST_INFO

NdisAdvanceNetBufferDataStart

NdisMRegisterMiniportDriver

NdisTcpOffloadSendComplete