NdisAdvanceNetBufferListDataStart 函式 (ndis/nblapi.h)

呼叫 NdisAdvanceNetBufferListDataStart 函式,以釋放先前呼叫 中宣告的數據空間 NdisRetreatNetBufferListDataStart 函式。

語法

NDIS_EXPORTED_ROUTINE VOID NdisAdvanceNetBufferListDataStart(
  [in] NET_BUFFER_LIST     *NetBufferList,
  [in] ULONG               DataOffsetDelta,
  [in] BOOLEAN             FreeMdl,
       NET_BUFFER_FREE_MDL *FreeMdlMdlHandler
);

參數

[in] NetBufferList

先前配置 之NET_BUFFER_LIST 結構的指標。

[in] DataOffsetDelta

要釋放 的已使用數據空間 量。

[in] FreeMdl

如果 TRUE 和 NDIS 配置記憶體以滿足對應的 NdisRetreatNetBufferListDataStart 呼叫,此函式會釋放已配置的記憶體和相關聯的 MDL。

FreeMdlMdlHandler

NetFreeMdl 函式的選擇性進入點。 如果呼叫端指定 NetFreeMdl 函式的進入點,NDIS 會呼叫 NetFreeMdl 以釋放 MDL 和記憶體。

傳回值

備註

NdisAdvanceNetBufferListDataStart 會釋放NET_BUFFER_LIST結構中所有NET_BUFFER結構的數據空間 如果 FreeMdlTRUE NdisRetreatNetBufferListDataStart 配置記憶體以滿足對應的配置要求,
NdisAdvanceNetBufferListDataStart 會釋放配置的記憶體。 呼叫此函式相當於呼叫 NdisAdvanceNetBufferDataStart ,適用於NET_BUFFER_LIST結構上每個NET_BUFFER結構。 不過,呼叫 NdisAdvanceNetBufferListDataStart 會更有效率。

當通訊協議驅動程式在接收路徑上呼叫 NdisAdvanceNetBufferListDataStart 以存取各種傳輸標頭時,不應修改 MDL 鏈結, 而且 FreeMdlFALSE

規格需求

需求
最低支援的用戶端 NDIS 6.0 和更新版本支援。
目標平台 Universal
標頭 ndis/nblapi.h (include ndis.h)
程式庫 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 合規性規則 Irql_NetBuffer_Function (ndis)

另請參閱

NET_BUFFER

NET_BUFFER_LIST

NdisAdvanceNetBufferDataStart NdisRetreatNetBufferListDataStart

NetAllocateMdl

NetFreeMdl