struktur NDIS_MINIPORT_DRIVER_CHARACTERISTICS (ndis.h)
Driver NDIS menginisialisasi struktur NDIS_MINIPORT_DRIVER_CHARACTERISTICS untuk menentukan karakteristik driver miniport-nya, termasuk titik masuk untuk fungsi MiniportXxx-nya .
Sintaks
typedef struct _NDIS_MINIPORT_DRIVER_CHARACTERISTICS {
NDIS_OBJECT_HEADER Header;
UCHAR MajorNdisVersion;
UCHAR MinorNdisVersion;
UCHAR MajorDriverVersion;
UCHAR MinorDriverVersion;
ULONG Flags;
SET_OPTIONS_HANDLER SetOptionsHandler;
MINIPORT_INITIALIZE_HANDLER InitializeHandlerEx;
MINIPORT_HALT_HANDLER HaltHandlerEx;
MINIPORT_DRIVER_UNLOAD UnloadHandler;
MINIPORT_PAUSE_HANDLER PauseHandler;
MINIPORT_RESTART_HANDLER RestartHandler;
MINIPORT_OID_REQUEST_HANDLER OidRequestHandler;
MINIPORT_SEND_NET_BUFFER_LISTS_HANDLER SendNetBufferListsHandler;
MINIPORT_RETURN_NET_BUFFER_LISTS_HANDLER ReturnNetBufferListsHandler;
MINIPORT_CANCEL_SEND_HANDLER CancelSendHandler;
MINIPORT_CHECK_FOR_HANG_HANDLER CheckForHangHandlerEx;
MINIPORT_RESET_HANDLER ResetHandlerEx;
MINIPORT_DEVICE_PNP_EVENT_NOTIFY_HANDLER DevicePnPEventNotifyHandler;
MINIPORT_SHUTDOWN_HANDLER ShutdownHandlerEx;
MINIPORT_CANCEL_OID_REQUEST_HANDLER CancelOidRequestHandler;
MINIPORT_DIRECT_OID_REQUEST_HANDLER DirectOidRequestHandler;
MINIPORT_CANCEL_DIRECT_OID_REQUEST_HANDLER CancelDirectOidRequestHandler;
MINIPORT_SYNCHRONOUS_OID_REQUEST_HANDLER SynchronousOidRequestHandler;
} NDIS_MINIPORT_DRIVER_CHARACTERISTICS, *PNDIS_MINIPORT_DRIVER_CHARACTERISTICS;
Anggota
Header
Struktur NDIS_OBJECT_HEADER untuk struktur NDIS_MINIPORT_DRIVER_CHARACTERISTICS . Atur anggota Jenis struktur yang ditentukan Header ke NDIS_OBJECT_TYPE_MINIPORT_DRIVER_CHARACTERISTICS.
Untuk menunjukkan versi struktur NDIS_MINIPORT_DRIVER_CHARACTERISTICS , atur anggota Revisi ke salah satu nilai berikut:
NDIS_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_3
Menambahkan anggota SynchronousOidRequestHandler untuk NDIS 6.80.
Atur anggota Ukuran ke NDIS_SIZEOF_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_3.
NDIS_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_2
Menambahkan anggota DirectOidRequestHandler, dan CancelDirectOidRequestHandler untuk NDIS 6.1.
Atur anggota Ukuran ke NDIS_SIZEOF_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_2.
NDIS_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_1
Versi asli untuk NDIS 6.0.
Atur anggota Ukuran ke NDIS_SIZEOF_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_1.
MajorNdisVersion
Versi utama pustaka NDIS yang digunakan driver. Nilai saat ini adalah 0x06.
MinorNdisVersion
Versi NDIS minor. Berikut ini adalah pengaturan nilai versi minor yang tersedia.
Nilai | Makna |
---|---|
0 | NDIS 6 |
20 | NDIS 6.20 |
30 | NDIS 6.30 |
40 | NDIS 6,40 |
50 | NDIS 6,50 |
51 | NDIS 6,51 |
60 | NDIS 6.60 |
70 | NDIS 6,70 |
80 | NDIS 6,80 |
81 | NDIS 6,81 |
82 | NDIS 6,82 |
83 | NDIS 6,83 |
84 | NDIS 6,84 |
85 | NDIS 6,85 |
86 | NDIS 6,86 |
MajorDriverVersion
Dicadangkan untuk nomor versi utama driver. Driver Miniport dapat menentukan nilai apa pun yang mereka butuhkan.
MinorDriverVersion
Dicadangkan untuk nomor versi minor driver. Driver Miniport dapat menentukan nilai apa pun yang mereka butuhkan.
Flags
Bitmask yang dapat diatur ke nol atau salah satu bendera berikut, dikombinasikan dengan bitwise ATAU:
NDIS_INTERMEDIATE_DRIVER
Atur jika penelepon adalah driver perantara NDIS.
NDIS_WDM_DRIVER
Atur jika pemanggil adalah driver miniport NDIS-WDM.
SetOptionsHandler
Titik masuk untuk fungsi MiniportSetOptions penelepon.
Diperlukan untuk Co-NDIS. Disarankan untuk driver miniport Ethernet yang mendukung RSS menggunakan MSI-C melalui PCI.
InitializeHandlerEx
Wajib diisi. Titik masuk untuk Fungsi MiniportInitializeEx .
HaltHandlerEx
Wajib diisi. Titik masuk untuk fungsi MiniportHaltEx .
UnloadHandler
Wajib diisi. Titik masuk untuk Fungsi MiniportDriverUnload .
PauseHandler
Wajib diisi. Titik masuk untuk fungsi MiniportPause .
RestartHandler
Wajib diisi. Titik masuk untuk fungsi MiniportRestart .
OidRequestHandler
Titik masuk untuk fungsi MiniportOidRequest . Diperlukan untuk semua driver miniport tanpa koneksi, termasuk semua driver Ethernet, WLAN, dan IM. Opsional untuk beberapa driver miniport CoNDIS.
SendNetBufferListsHandler
Wajib diisi. Titik masuk untuk Fungsi MiniportSendNetBufferLists .
ReturnNetBufferListsHandler
Wajib diisi. Titik masuk untuk Fungsi MiniportReturnNetBufferLists .
CancelSendHandler
Wajib diisi. Titik masuk untuk fungsi MiniportCancelSend .
CheckForHangHandlerEx
Pilihan. Titik masuk untuk Fungsi MiniportCheckForHangEx .
MiniportCheckForHangEx tidak diperlukan untuk driver perantara atau miniport virtual karena mereka bukan perangkat fisik yang dapat menggantung, sehingga mereka harus mengatur titik masuk ini ke NULL.
MiniportCheckForHangEx dilarang pada perangkat AOAC apa pun karena dampak pada masa pakai baterai, sehingga driver miniport untuk perangkat ini harus mengatur titik masuk ini ke NULL.
MiniportCheckForHangEx tidak disarankan untuk driver miniport yang dimaksudkan untuk diinstal pada perangkat non-AOAC, bertenaga baterai karena dampak pada masa pakai baterai, sehingga mereka harus mengatur titik masuk ini ke NULL.
MiniportCheckForHangEx diizinkan tetapi tidak diperlukan untuk driver miniport yang dimaksudkan untuk dipasang di perangkat line-powered (bertenaga utama). Untuk driver yang menargetkan NDIS 6.30 dan yang lebih baru, pertimbangkan untuk menggunakan NdisMResetMiniport sebagai gantinya.
ResetHandlerEx
Opsional (diperlukan jika Anda menyediakan CheckForHangHandlerEx). Titik masuk untuk fungsi MiniportResetEx . MiniportResetEx tidak diperlukan untuk driver perantara, sehingga mereka harus mengatur titik masuk ini ke NULL.
DevicePnPEventNotifyHandler
Wajib diisi. Titik masuk untuk Fungsi MiniportDevicePnPEventNotify .
ShutdownHandlerEx
Wajib diisi. Titik masuk untuk fungsi MiniportShutdownEx .
CancelOidRequestHandler
Wajib diisi. Titik masuk untuk Fungsi MiniportCancelOidRequest .
DirectOidRequestHandler
Titik masuk untuk Fungsi MiniportDirectOidRequest . Ini adalah titik masuk opsional. Atur anggota ini ke NULL jika driver miniport tidak menangani permintaan OID langsung.
Opsional untuk Ethernet; namun, jika disediakan, keduanya harus disediakan.
Diperlukan untuk miniport WLAN dan Ethernet yang mengimplementasikan offload RDMA atau IPSec.
CancelDirectOidRequestHandler
Titik masuk untuk Fungsi MiniportCancelDirectOidRequest . Ini adalah titik masuk opsional. Atur anggota ini ke NULL jika driver miniport tidak menangani permintaan OID langsung.
Opsional untuk Ethernet; namun, jika disediakan, keduanya harus disediakan.
Diperlukan untuk miniport WLAN dan Ethernet yang mengimplementasikan offload RDMA atau IPSec.
SynchronousOidRequestHandler
Titik masuk untuk Fungsi MiniportSynchronousOidRequest . Ini adalah titik masuk opsional. Atur anggota ini ke NULL jika driver miniport tidak menangani permintaan OID Sinkron.
Diperlukan untuk miniport WLAN dan Ethernet yang mengimplementasikan RSSv2.
Keterangan
Driver NDIS meneruskan penunjuk ke struktur NDIS_MINIPORT_DRIVER_CHARACTERISTICS dalam parameter MiniportDriverCharacteristics dari Fungsi NdisMRegisterMiniportDriver . Driver miniport memanggil NdisMRegisterMiniportDriver dari rutinitas DriverEntry-nya (lihat juga DriverEntry driver NDIS Miniport Drivers).
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Didukung di NDIS 6.0 dan yang lebih baru. |
Header | ndis.h (termasuk Ndis.h) |
Lihat juga
MiniportCancelDirectOidRequest MiniportDevicePnPEventNotify MiniportReturnNetBufferListsSaran 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