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 結構,發行 使用的數據空間。 如果freeMdl true 和
NdisRetreatNetBufferListDataStart 配置記憶體,以滿足對應的配置要求,
NdisAdvanceNetBufferListDataStart 釋放配置的記憶體。 呼叫此函式相當於呼叫
NdisAdvanceNetBufferDataStart NET_BUFFER_LIST 結構上每個NET_BUFFER結構。
不過,呼叫 NdisAdvanceNetBufferListDataStart 更有效率。
當通訊協定驅動程式在接收路徑上呼叫 NdisAdvanceNetBufferListDataStart 以存取各種傳輸標頭時,不應該修改 MDL 鏈結,而且 FreeMdlFALSE。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | NDIS 6.0 和更新版本支援。 |
目標平臺 | 普遍 |
標頭 | ndis/nblapi.h (include ndis.h) |
連結庫 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | Irql_NetBuffer_Function(ndis) |