NdisOffloadTcpDisconnect 函数 (ndischimney.h)

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

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

语法

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

要求

要求
目标平台 通用
标头 ndischimney.h (包括 Ndischimney.h)
Library Ndis.lib

另请参阅

MiniportTcpOffloadDisconnect

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

NdisTcpOffloadDisconnectComplete ProtocolTcpOffloadDisconnectComplete