NdisFReturnNetBufferLists function (ndis.h)
Filter drivers call NdisFReturnNetBufferLists to release the ownership of one or more NET_BUFFER_LIST structures and their associated NET_BUFFER structures.
Syntax
void NdisFReturnNetBufferLists(
[in] NDIS_HANDLE NdisFilterHandle,
[in] PNET_BUFFER_LIST NetBufferLists,
[in] ULONG ReturnFlags
);
Parameters
[in] NdisFilterHandle
The NDIS handle that identifies this filter module. NDIS passed the handle to the filter driver in a call to the FilterAttach function.
[in] NetBufferLists
A pointer to a linked list of NET_BUFFER_LIST structures that are to be returned to the underlying driver. The linked list can contain NET_BUFFER_LIST structures from multiple previous calls to the FilterReceiveNetBufferLists function.
[in] ReturnFlags
NDIS flags that can be combined with an OR operation. To clear all the flags, set this member to zero.This function supports the following flags:
NDIS_RETURN_FLAGS_DISPATCH_LEVEL
Specifies that the current IRQL is DISPATCH_LEVEL. For more information about this flag, see Dispatch IRQL Tracking.
NDIS_RETURN_FLAGS_SWITCH_SINGLE_SOURCE
If this flag is set, all packets in a linked list of NET_BUFFER_LIST structures originated from the same Hyper-V extensible switch source port.
For more information, see Hyper-V Extensible Switch Send and Receive Flags.
Return value
None
Remarks
If the NDIS_RECEIVE_FLAGS_RESOURCES flag in the ReceiveFlags parameter that NDIS passed to the FilterReceiveNetBufferLists function was not set, the filter driver must call the NdisFReturnNetBufferLists function to return the NET_BUFFER_LIST structures and associated data. After the filter driver calls NdisFReturnNetBufferLists, NDIS returns the data to the underlying driver.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported in NDIS 6.0 and later. |
Target Platform | Desktop |
Header | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI compliance rules | Irql_Filter_Driver_Function(ndis) |