NdisOffloadTcpDisconnect function (ndischimney.h)
[The TCP chimney offload feature is deprecated and should not be used.]
A protocol or intermediate driver calls the NdisOffloadTcpDisconnect function to close the send half of an offloaded TCP connection. In addition, if the disconnect to be performed is a graceful disconnect, the protocol or intermediate driver can supply application data that the underlying offload target must transmit on the offloaded TCP connection before it sends a FIN segment.
Syntax
NDIS_STATUS NdisOffloadTcpDisconnect(
[in] IN PNDIS_OFFLOAD_HANDLE NdisOffloadHandle,
[in] IN PNET_BUFFER_LIST NetBufferList,
[in] IN ULONG Flags
);
Parameters
[in] NdisOffloadHandle
A pointer to an NDIS_OFFLOAD_HANDLE structure in the caller's context for the offloaded TCP connection. For more information, see Referencing Offloaded State Through an Intermediate Driver.
[in] NetBufferList
A pointer to a single NET_BUFFER_LIST structure. Only one NET_BUFFER structure is associated with this NET_BUFFER_LIST structure.
[in] Flags
As one of the following values, the type of disconnect to be performed:
TCP_DISCONNECT_ABORTIVE_CLOSE
Specifies that the offload target perform an abortive disconnect by sending an RST segment.
TCP_DISCONNECT_GRACEFUL_CLOSE
Specifies that the offload target perform a graceful disconnect by sending a FIN segment.
Return value
The NdisOffloadTcpDisconnect function always returns NDIS_STATUS_PENDING. The disconnect operation is always completed asynchronously.
Remarks
In response to a call to its MiniportTcpOffloadDisconnect function, an intermediate driver calls the NdisOffloadTcpDisconnect function to propagate the disconnect operation to the underlying intermediate driver or offload target. For more information, see Propagating I/O Operations.
To the NdisOffloadTcpXxx function, the intermediate driver passes the following:
- An NdisOffloadHandle function that references the NDIS_OFFLOAD_HANDLE structure stored in the intermediate driver's context for the offloaded TCP connection. For more information, see Referencing Offloaded State Through an Intermediate Driver.
- The same PNET_BUFFER_LIST pointer that NDIS passed to the intermediate driver's MiniportTcpOffloadDisconnect function.
- The same Flags that NDIS passed to the intermediate driver's MiniportTcpOffloadDisconnect function.
Requirements
Requirement | Value |
---|---|
Target Platform | Universal |
Header | ndischimney.h (include Ndischimney.h) |
Library | Ndis.lib |