FILTER_SEND_NET_BUFFER_LISTS_COMPLETE fungsi panggilan balik (ndis.h)
NDIS memanggil fungsi FilterSendNetBufferListsComplete untuk menyelesaikan permintaan pengiriman yang dimulai driver filter dengan memanggil Fungsi NdisFSendNetBufferLists .
Sintaks
FILTER_SEND_NET_BUFFER_LISTS_COMPLETE FilterSendNetBufferListsComplete;
void FilterSendNetBufferListsComplete(
[in] NDIS_HANDLE FilterModuleContext,
PNET_BUFFER_LIST NetBufferList,
[in] ULONG SendCompleteFlags
)
{...}
Parameter
[in] FilterModuleContext
Handel ke area konteks untuk modul filter. Driver filter membuat dan menginisialisasi area konteks ini dalam fungsi FilterAttach .
NetBufferList
Penunjuk ke daftar tertaut struktur NET_BUFFER_LIST yang diteruskan driver filter NdisFSendNetBufferLists.
[in] SendCompleteFlags
Bendera NDIS yang dapat dikombinasikan dengan operasi OR. Untuk menghapus semua bendera, atur anggota ini ke nol. Fungsi ini mendukung bendera berikut:
NDIS_SEND_COMPLETE_FLAGS_DISPATCH_LEVEL
Menentukan bahwa IRQL saat ini DISPATCH_LEVEL. Untuk informasi selengkapnya tentang bendera ini, lihat Pengiriman Pelacakan IRQL.
NDIS_SEND_COMPLETE_FLAGS_SWITCH_SINGLE_SOURCE
Jika bendera ini diatur, semua paket dalam daftar tertaut struktur NET_BUFFER_LIST berasal dari port sumber sakelar hyper-V yang dapat diperluas yang sama.
Untuk informasi selengkapnya, lihat Bendera Kirim dan Terima Sakelar Yang Dapat Diperluas Hyper-V.
Nilai kembali
Tidak ada
Keterangan
FilterSendNetBufferListsComplete adalah fungsi opsional. Jika driver filter tidak memfilter permintaan pengiriman, itu dapat mengatur titik masuk untuk fungsi ini ke NULL ketika memanggil Fungsi NdisFRegisterFilterDriver .
Driver filter dapat memanggil fungsi NdisSetOptionalHandlers , dari fungsi FilterSetModuleOptions , untuk menentukan fungsi FilterSendNetBufferListsComplete untuk modul filter.
Jika driver yang terlalu berlebihan memulai permintaan pengiriman, driver filter harus memanggil fungsi NdisFSendNetBufferListsComplete untuk menyelesaikan permintaan pengiriman.
Jika driver filter berasal dari permintaan kirim, FilterSendNetBufferListsComplete dapat merilis struktur NET_BUFFER_LIST dan data terkait atau menyiapkannya untuk digunakan kembali dalam panggilan berikutnya ke NdisFSendNetBufferLists.
Contoh
Untuk menentukan fungsi FilterSendNetBufferListsComplete , Anda harus terlebih dahulu memberikan deklarasi fungsi yang mengidentifikasi jenis fungsi yang Anda tentukan. Windows menyediakan sekumpulan tipe fungsi untuk pengandar. Mendeklarasikan fungsi menggunakan jenis fungsi membantu Analisis Kode untuk Driver, Pemverifikasi Driver Statis (SDV), dan alat verifikasi lainnya menemukan kesalahan, dan itu adalah persyaratan untuk menulis driver untuk sistem operasi Windows.Misalnya, untuk menentukan fungsi FilterSendNetBufferListsComplete yang diberi nama "MySendNetBufferListsComplete", gunakan jenis FILTER_SEND_NET_BUFFER_LISTS_COMPLETE seperti yang ditunjukkan dalam contoh kode ini:
FILTER_SEND_NET_BUFFER_LISTS_COMPLETE MySendNetBufferListsComplete;
Kemudian, terapkan fungsi Anda sebagai berikut:
_Use_decl_annotations_
VOID
MySendNetBufferListsComplete(
NDIS_HANDLE FilterModuleContext,
PNET_BUFFER_LIST NetBufferLists,
ULONG SendCompleteFlags
)
{...}
Jenis fungsi FILTER_SEND_NET_BUFFER_LISTS_COMPLETE ditentukan dalam file header Ndis.h. Untuk mengidentifikasi kesalahan secara lebih akurat saat Anda menjalankan alat analisis kode, pastikan untuk menambahkan anotasi Use_decl_annotations ke definisi fungsi Anda. Anotasi Use_decl_annotations memastikan bahwa anotasi yang diterapkan ke jenis fungsi FILTER_SEND_NET_BUFFER_LISTS_COMPLETE dalam file header digunakan. Untuk informasi selengkapnya tentang persyaratan untuk deklarasi fungsi, lihat Mendeklarasikan Fungsi dengan Menggunakan Jenis Peran Fungsi untuk Driver NDIS.
Untuk informasi tentang Use_decl_annotations, lihat Perilaku Fungsi Anotasi.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Didukung di NDIS 6.0 dan yang lebih baru. |
Target Platform | Windows |
Header | ndis.h (termasuk Ndis.h) |
IRQL | <= DISPATCH_LEVEL |
Lihat juga
NdisFSendNetBufferListsCompleteSaran 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