Compartir a través de


Función NdisOffloadTcpDisconnect (ndischimney.h)

[La característica de descarga de chimenea TCP está en desuso y no debe usarse].

Un protocolo o controlador intermedio llama a la función NdisOffloadTcpDisconnect para cerrar la mitad del envío de una conexión TCP descargada. Además, si la desconexión que se va a realizar es una desconexión correcta, el protocolo o el controlador intermedio pueden proporcionar datos de aplicación que el destino de descarga subyacente debe transmitir en la conexión TCP descargada antes de enviar un segmento FIN.

Sintaxis

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

Parámetros

[in] NdisOffloadHandle

Puntero a una estructura de NDIS_OFFLOAD_HANDLE en el contexto del autor de la llamada para la conexión TCP descargada. Para obtener más información, consulte hacer referencia al estado descargado a través de un controlador intermedio.

[in] NetBufferList

Puntero a una sola estructura NET_BUFFER_LIST. Solo una estructura NET_BUFFER está asociada a esta estructura NET_BUFFER_LIST.

[in] Flags

Como uno de los siguientes valores, el tipo de desconexión que se va a realizar:

TCP_DISCONNECT_ABORTIVE_CLOSE

Especifica que el destino de descarga realiza una desconexión abortiva mediante el envío de un segmento RST.

TCP_DISCONNECT_GRACEFUL_CLOSE

Especifica que el destino de descarga realiza una desconexión correcta mediante el envío de un segmento FIN.

Valor devuelto

La función NdisOffloadTcpDisconnect siempre devuelve NDIS_STATUS_PENDING. La operación de desconexión siempre se completa de forma asincrónica.

Observaciones

En respuesta a una llamada a su función MiniportTcpOffloadDisconnect, un controlador intermedio llama a la función NdisOffloadTcpDisconnect para propagar la operación de desconexión al controlador intermedio subyacente o al destino de descarga. Para obtener más información, consulte propagación de operaciones de E/S.

Para la función NdisOffloadTcpXxx, el controlador intermedio pasa lo siguiente:

  • Función NdisOffloadHandle que hace referencia a la estructura NDIS_OFFLOAD_HANDLE almacenada en el contexto del controlador intermedio para la conexión TCP descargada. Para obtener más información, consulte hacer referencia al estado descargado a través de un controlador intermedio.
  • El mismo puntero PNET_BUFFER_LIST que NDIS pasó a la función MiniportTcpOffloadDis connect del controlador intermedio.
  • El mismo Flags que NDIS pasó a la función miniportTcpOffloadDisconnect del controlador intermedio.
Cuando el controlador subyacente o el destino de descarga completan posteriormente la operación de desconexión llamando a la función NdisTcpOffloadDisconnectComplete, NDIS llama a la función protocolOffloadDisconnectComplete del controlador intermedio. A continuación, el controlador intermedio llama a la función NdisTcpOffloadDisconnectComplete para propagar la finalización de la operación de desconexión.

Requisitos

Requisito Valor
de la plataforma de destino de Universal
encabezado de ndischimney.h (incluya Ndischimney.h)
biblioteca de Ndis.lib

Consulte también

miniportTcpOffloadDisconnect

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

NdisTcpOffloadDisconnectComplete ProtocolTcpOffloadDisconnectComplete