struktur NET_BUFFER_LIST_CONTEXT (ndis/nbl.h)
Struktur NET_BUFFER_LIST_CONTEXT menyimpan informasi konteks untuk struktur NET_BUFFER_LIST .
Sintaks
typedef struct _NET_BUFFER_LIST_CONTEXT {
NET_BUFFER_LIST_CONTEXT *Next;
USHORT Size;
USHORT Offset;
UCHAR ContextData[];
} NET_BUFFER_LIST_CONTEXT, *PNET_BUFFER_LIST_CONTEXT;
Anggota
Next
Penunjuk ke struktur NET_BUFFER_LIST_CONTEXT berikutnya dalam daftar struktur NET_BUFFER_LIST_CONTEXT yang ditautkan.
Size
Ukuran, dalam byte, dari seluruh ruang konteks dalam struktur NET_BUFFER_LIST_CONTEXT, termasuk ruang konteks yang digunakan dan tidak digunakan.
Offset
Offset, dalam byte, dari awal buffer data konteks hingga awal data konteks dalam struktur NET_BUFFER_LIST_CONTEXT. Anggota Offset juga menentukan ukuran dalam byte ruang konteks yang tidak digunakan dalam struktur NET_BUFFER_LIST_CONTEXT.
ContextData
Buffer data konteks. Data konteks dapat mencakup informasi apa pun yang diperlukan driver.
Keterangan
Setiap struktur NET_BUFFER_LIST dapat mencakup struktur NET_BUFFER_LIST_CONTEXT yang telah dialokasikan sebelumnya. Saat struktur NET_BUFFER_LIST berjalan melalui tumpukan driver, daftar struktur NET_BUFFER_LIST_CONTEXT yang ditautkan dapat diperluas untuk mengakomodasi ruang data tambahan untuk setiap driver.
Driver harus menggunakan makro dan fungsi NDIS berikut untuk mengakses dan memanipulasi anggota dalam struktur NET_BUFFER_LIST_CONTEXT:
- NdisAllocateNetBufferListContext
- NdisFreeNetBufferListContext
- NET_BUFFER_LIST_CONTEXT_DATA_START
- NET_BUFFER_LIST_CONTEXT_DATA_SIZE
Driver NDIS memanggil Fungsi NdisAllocateNetBufferListContext untuk mengalokasikan ruang buffer yang berdampingan dalam struktur NET_BUFFER_LIST_CONTEXT. Jika perlu, NDIS mengalokasikan struktur NET_BUFFER_LIST_CONTEXT baru dengan ruang tambahan untuk menghormati permintaan. Driver NDIS memanggil Fungsi NdisFreeNetBufferListContext untuk membebaskan ruang buffer.
Gunakan NET_BUFFER_LIST_CONTEXT_DATA_SIZE makro untuk mendapatkan ukuran ruang konteks yang digunakan. Gunakan NET_BUFFER_LIST_CONTEXT_DATA_START makro untuk mendapatkan alamat awal ruang konteks yang digunakan.
Untuk informasi selengkapnya tentang cara menggunakan buffer net, lihat Arsitektur NET_BUFFER.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Didukung di NDIS 6.0 dan yang lebih baru. |
Header | ndis/nbl.h (sertakan ndis.h) |