Fungsi NdisAllocateReassembledNetBufferList (ndis/nblapi.h)
Panggil fungsi NdisAllocateReassembledNetBufferList untuk menyusun kembali struktur NET_BUFFER_LIST terfragmentasi.
Sintaks
NDIS_EXPORTED_ROUTINE NET_BUFFER_LIST * NdisAllocateReassembledNetBufferList(
NET_BUFFER_LIST *FragmentNetBufferList,
[in, optional] NDIS_HANDLE NetBufferAndNetBufferListPoolHandle,
[in] ULONG StartOffset,
[in] ULONG DataOffsetDelta,
[in] ULONG DataBackFill,
[in] ULONG AllocateReassembleFlags
);
Parameter
FragmentNetBufferList
Penunjuk ke struktur NET_BUFFER_LIST untuk disusun kembali.
[in, optional] NetBufferAndNetBufferListPoolHandle
Handel kumpulan struktur NET_BUFFER_LIST yang sebelumnya dikembalikan dari Fungsi NdisAllocateNetBufferListPool . Anggota fAllocateNetBuffer dari struktur NET_BUFFER_LIST_POOL_PARAMETERS yang diteruskan pemanggil ke NdisAllocateNetBufferListPool harus diatur ke TRUE, dan anggota DataSize diatur ke nol. Jika parameter ini NULL, NDIS menggunakan kumpulan internal.
[in] StartOffset
Jumlah data yang akan dilewati di awal setiap struktur NET_BUFFER sumber. Jumlah ini selain nilai yang ditentukan dalam anggota DataOffset dari struktur NET_BUFFER.
[in] DataOffsetDelta
Jumlah byte ruang data yang digunakan untuk ditambahkan dalam struktur NET_BUFFER yang disusun ulang.
[in] DataBackFill
Jika alokasi ruang data yang tidak digunakan (ruang isi ulang) diperlukan, parameter ini menentukan jumlah byte ruang data yang tidak digunakan selain DataOffsetDelta untuk dialokasikan.
[in] AllocateReassembleFlags
Bendera NDIS yang dapat dikombinasikan dengan operasi OR. Atur parameter ini ke nol. Saat ini tidak ada bendera yang ditentukan untuk fungsi ini.
Mengembalikan nilai
Jika operasi rakitan ulang berhasil, NdisAllocateReassembledNetBufferList mengembalikan struktur NET_BUFFER_LIST yang disusun ulang. Jika operasi gagal, operasi akan mengembalikan NULL.
Keterangan
NdisAllocateReassembledNetBufferList mengalokasikan, menginisialisasi, dan mengembalikan struktur NET_BUFFER_LIST baru yang mencakup satu struktur NET_BUFFER dan satu rantai MDL. Struktur NET_BUFFER_LIST baru menjelaskan data yang sama dengan struktur NET_BUFFER_LIST sumber terfragmentasi yang diteruskan driver di FragmentedNetBufferList. Setelah melewati jumlah byte yang ditentukan dalam StartOffset dalam setiap struktur NET_BUFFER terfragmentasi, NDIS menggabungkan data yang tersisa di setiap struktur NET_BUFFER terfragmentasi menjadi satu struktur NET_BUFFER yang disusun ulang. Struktur NET_BUFFER_LIST yang disusun ulang tidak menyertakan awal NET_BUFFER_LIST_CONTEXT struktur.
Memanggil Fungsi NdisFreeReassembledNetBufferList untuk membebaskan struktur NET_BUFFER_LIST yang disusun ulang dan semua struktur NET_BUFFER terkait dan rantai MDL.
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), NdisAllocateReassembledNetBufferList(ndis), NdisAllocateReassembledNetBufferList_InitFail(ndis) |
Lihat juga
NET_BUFFER_LIST_POOL_PARAMETERS
NdisAllocateNetBufferListPool NdisFreeReassembledNetBufferListSaran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk