NdisOffloadTcpDisconnect 函数 (ndischimney.h)

[TCP 烟囱卸载功能已弃用,不应使用。

协议或中间驱动程序调用 NdisOffloadTcpDisconnect 函数以关闭卸载的 TCP 连接的发送一半。 此外,如果要执行的断开连接是正常断开连接,协议或中间驱动程序可以提供应用程序数据,基础卸载目标必须在卸载的 TCP 连接上传输,然后才能发送 FIN 段。

语法

NDIS_STATUS NdisOffloadTcpDisconnect(
  [in] IN PNDIS_OFFLOAD_HANDLE NdisOffloadHandle,
  [in] IN PNET_BUFFER_LIST     NetBufferList,
  [in] IN ULONG                Flags
);

参数

[in] NdisOffloadHandle

指向调用方上下文中用于卸载 TCP 连接的 NDIS_OFFLOAD_HANDLE 结构的指针。 有关详细信息,请参阅 通过中间驱动程序引用卸载状态。

[in] NetBufferList

指向单个 NET_BUFFER_LIST 结构的指针。 只有一个 NET_BUFFER 结构与此NET_BUFFER_LIST结构相关联。

[in] Flags

作为以下值之一,要执行的断开连接类型:

TCP_DISCONNECT_ABORTIVE_CLOSE

指定卸载目标通过发送 RST 段来执行中止断开连接。

TCP_DISCONNECT_GRACEFUL_CLOSE

指定卸载目标通过发送 FIN 段来执行正常断开连接。

返回值

NdisOffloadTcpDisconnect 函数始终返回NDIS_STATUS_PENDING。 断开连接作始终以异步方式完成。

言论

响应对其调用 MiniportTcpOffloadDisconnect 函数,中间驱动程序调用 NdisOffloadTcpDisconnect 函数,以将断开连接作传播到基础中间驱动程序或卸载目标。 有关详细信息,请参阅 传播 I/O作

若要 NdisOffloadTcpXxx 函数,中间驱动程序将传递以下内容:

  • NdisOffloadHandle 函数,该函数引用存储在中间驱动程序上下文中用于卸载 TCP 连接的NDIS_OFFLOAD_HANDLE结构。 有关详细信息,请参阅 通过中间驱动程序引用卸载状态。
  • NDIS 传递给中间驱动程序的 MiniportTcpOffloadDisconnect 函数的同一PNET_BUFFER_LIST指针。
  • NDIS 传递给中间驱动程序的 MiniportTcpOffloadDisconnect 函数的同一 标志
当基础驱动程序或卸载目标随后通过调用 NdisTcpOffloadDisconnectComplete 函数来完成断开连接作时,NDIS 将调用中间驱动程序的 ProtocolOffloadDisconnectComplete 函数。 然后,中间驱动程序调用 NdisTcpOffloadDisconnectComplete 函数来传播断开连接作的完成。

要求

要求 价值
目标平台 普遍
标头 ndischimney.h (包括 Ndischimney.h)
Ndis.lib

另请参阅

MiniportTcpOffloadDisconnect

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

NdisTcpOffloadDisconnectComplete ProtocolTcpOffloadDisconnectComplete