Makro NdisAdjustMdlLength (ndis.h)

Fungsi NdisAdjustMdlLength memodifikasi panjang data yang terkait dengan MDL.

Sintaks

void NdisAdjustMdlLength(
  [in]  _Mdl,
  [in]  _Length
);

Parameter

[in] _Mdl

Penunjuk ke daftar deskriptor memori (MDL).

[in] _Length

Jumlah byte data yang dijelaskan MDL.

Nilai kembali

Tidak ada

Keterangan

Fungsi NdisAdjustMdlLength memodifikasi anggota ByteCount dari MDL yang dialokasikan dengan memanggil fungsi NdisAllocateMdl .

Penelepon NdisAdjustMdlLength hanya dapat meneruskan deskriptor MDL yang dialokasikan pemanggil. Ini tidak dapat melewati deskriptor MDL yang dialokasikan driver lain.

Misalnya, driver DMA NIC master bus memanggil NdisAdjustMdlLength dengan deskriptor MDL yang dialokasikan untuk menentukan menerima MDL di blok memori bersamanya. Sebelum driver seperti itu menunjukkan data yang diterima, ia memanggil NdisAdjustMdlLength untuk membuat deskriptor MDL yang akan disertakan dalam indikasi terima cocok dengan ukuran data yang diterima jika kurang dari ukuran buffer penerima NIC.

Panjang yang diteruskan ke NdisAdjustMdlLength tidak boleh lebih besar dari panjang yang diteruskan ke NdisAllocateMdl ketika deskriptor MDL dialokasikan.

Pemanggil NdisAdjustMdlLength harus memulihkan panjang ke nilai aslinya sebelum membebaskan deskriptor MDL dengan NdisFreeMdl.

Penelepon NdisAdjustMdlLength dapat berjalan di IRQL apa pun, tetapi biasanya berjalan di IRQL <= DISPATCH_LEVEL.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung di NDIS 6.0 dan yang lebih baru.
Target Platform Desktop
Header ndis.h (termasuk Ndis.h)
IRQL Tingkat apa pun (lihat bagian Keterangan)

Lihat juga

NdisAllocateMdl

NdisFreeMdl