Bagikan melalui


Fungsi NdisAdvanceNetBufferDataStart (ndis/nblapi.h)

Panggil fungsi NdisAdvanceNetBufferDataStart untuk merilis ruang data yang digunakan yang ditambahkan dengan Fungsi NdisRetreatNetBufferDataStart .

Sintaks

NDIS_EXPORTED_ROUTINE VOID NdisAdvanceNetBufferDataStart(
  [in]           NET_BUFFER          *NetBuffer,
  [in]           ULONG               DataOffsetDelta,
  [in]           BOOLEAN             FreeMdl,
  [in, optional] NET_BUFFER_FREE_MDL *FreeMdlHandler
);

Parameter

[in] NetBuffer

Penunjuk ke struktur NET_BUFFER yang dialokasikan sebelumnya.

[in] DataOffsetDelta

Jumlah ruang data yang digunakan untuk dilepaskan. NDIS menyesuaikan nilai anggota DataOffset dari struktur NET_BUFFER yang sesuai.

[in] FreeMdl

Nilai BOOLEAN yang, jika TRUE, meminta NDIS untuk membebaskan MDL apa pun yang menjadi tidak digunakan dalam operasi sebelumnya. Jika FreeMdlFALSE, NDIS mempertahankan MDL yang tidak digunakan untuk digunakan dalam operasi mundur berikutnya.

[in, optional] FreeMdlHandler

Titik masuk opsional untuk fungsi NetFreeMdl . Jika pemanggil menentukan titik masuk untuk fungsi NetFreeMdl , NDIS memanggil NetFreeMdl untuk membebaskan MDL dan memori.

Nilai kembali

Tidak ada

Keterangan

Jika NDIS mengalokasikan memori untuk memenuhi panggilan yang sesuai ke Fungsi NdisRetreatNetBufferDataStart , lalu NdisAdvanceNetBufferDataStart membebaskan memori yang dialokasikan NdisRetreatNetBufferDataStart . Jika tidak, memori tetap berada di MDL dan hanya nilai anggota DataOffset dari struktur NET_BUFFER yang dimodifikasi.

NDIS memanggil fungsi NetFreeMdl yang ditentukan di FreeMdl jika NdisAdvanceNetBufferDataStart harus membebaskan memori. NDIS memanggil NetFreeMdl hanya untuk membebaskan MDL dan memori yang dialokasikan driver dalam fungsi NetAllocateMdl .

Ketika driver protokol memanggil NdisAdvanceNetBufferDataStart pada jalur terima untuk mengakses berbagai header transportasi, rantai MDL tidak boleh dimodifikasi dan FreeMdlFALSE.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung di NDIS 6.0 dan yang lebih baru.
Target Platform Universal
Header ndis/nblapi.h (sertakan ndis.h)
Pustaka Ndis.lib
IRQL <= DISPATCH_LEVEL
Aturan kepatuhan DDI Irql_NetBuffer_Function(ndis)

Lihat juga

NET_BUFFER

NdisRetreatNetBufferDataStart

NetAllocateMdl

NetFreeMdl