A protocol or intermediate driver calls the NdisInitiateOffload function to offload TCP chimney state objects.
VOID NdisInitiateOffload( _In_ NDIS_HANDLE NdisBindingHandle, _Inout_ PNDIS_PROTOCOL_OFFLOAD_BLOCK_LIST OffloadBlockList );
- NdisBindingHandle [in]
The handle that NDIS provided at the NdisBindingHandle parameter of NdisOpenAdapterEx. This handle identifies the binding between the caller and the underlying intermediate driver or offload target.
- OffloadBlockList [in, out]
A pointer to an NDIS_PROTOCOL_OFFLOAD_BLOCK_LIST structure that can be a stand-alone structure or the root of a linked list of such structures. These structures identify the state that is being offloaded.
An intermediate driver calls the NdisInitiateOffload function to propagate an initiate offload operation that was initiated by the host stack. For more information, see Propagating State-Manipulation Operations.
From the NDIS_MINIPORT_OFFLOAD_BLOCK_LIST structure that was passed to its MiniportInitiateOffload function, the intermediate driver constructs an NDIS_PROTOCOL_OFFLOAD_BLOCK_LIST structure. For more information, see Reusing an NDIS_MINIPORT_OFFLOAD_BLOCK_LIST Structure. The intermediate driver passes a pointer (the OffloadBlockList parameter) to this NDIS_PROTOCOL_OFFLOAD_BLOCK_LIST structure when calling the NdisInitiateOffload function.