Melampirkan Modul Filter

Untuk memulai proses memasukkan modul filter ke dalam tumpukan driver, NDIS memanggil fungsi FilterAttach driver filter. Pada awal eksekusi dalam fungsi FilterAttach , modul filter memasuki status Melampirkan . Untuk informasi selengkapnya tentang melampirkan modul filter ke tumpukan driver, lihat Memulai Driver Stack.

Driver filter menggunakan handel, yang diteruskan NDIS pada parameter NdisFilterHandlefilterAttach di semua panggilan fungsi NdisXxx di masa mendatang yang mengacu pada modul filter ini. Fungsi tersebut mencakup indikasi status, permintaan pengiriman, indikasi penerimaan, dan permintaan OID.

Saat modul filter berada dalam status Melampirkan , driver:

  • Membuat area konteks untuk modul filter dan mengalokasikan kumpulan buffer dan sumber daya khusus modul filter lainnya. Untuk informasi selengkapnya tentang kumpulan buffer, lihat Manajemen Buffer Driver Filter.

  • Memanggil fungsi NdisFSetAttributes dengan menggunakan nilai NdisFilterHandle yang diteruskan NDIS ke FilterAttach. Parameter FilterModuleContextdari NdisFSetAttributes menentukan area konteks driver filter untuk modul filter ini. NDIS meneruskan area konteks ini ke fungsi FilterXxx driver filter.

  • Secara opsional, membaca parameter konfigurasi untuk modul filter ini dari registri. Untuk informasi selengkapnya, lihat Mengakses Informasi Konfigurasi untuk Driver Filter.

  • Jika operasi sebelumnya berhasil diselesaikan, modul filter berada dalam status Dijeda .

  • Jika operasi sebelumnya gagal, driver filter harus merilis sumber daya apa pun yang dialokasikan dalam fungsi FilterAttach dan mengembalikan modul filter ke status Dilepas .

  • Mengembalikan NDIS_STATUS_SUCCESS atau kode kegagalan yang sesuai. Jika driver mengembalikan kode kegagalan, NDIS mengakhiri tumpukan driver.

Catatan Registri dapat berisi bendera, yang menentukan bahwa modul filter bersifat opsional. Jika modul filter opsional tidak terpasang, NDIS tidak mengakhiri sisa tumpukan driver.

Driver filter tidak dapat membuat permintaan pengiriman, menunjukkan data yang diterima, membuat permintaan OID, atau membuat indikasi status dari status Melampirkan . Operasi kirim dan terima didukung dalam status Berjalan dan Jeda . Permintaan OID dan indikasi status didukung dalam status Dijeda, Memulai Ulang, Menjalankan, dan Menjeda .

NDIS memanggil fungsi FilterDetach untuk mencopot modul filter yang dilampirkan NDIS dengan FilterAttach. Untuk informasi selengkapnya, lihat Mencopot Modul Filter.