struktur NDIS_PM_WOL_PATTERN (ntddndis.h)
Struktur NDIS_PM_WOL_PATTERN mendefinisikan pola wake-on-LAN (WOL).
Sintaks
typedef struct _NDIS_PM_WOL_PATTERN {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG Priority;
NDIS_PM_WOL_PACKET WoLPacketType;
NDIS_PM_COUNTED_STRING FriendlyName;
ULONG PatternId;
ULONG NextWoLPatternOffset;
union {
struct {
ULONG Flags;
UCHAR IPv4SourceAddress[4];
UCHAR IPv4DestAddress[4];
USHORT TCPSourcePortNumber;
USHORT TCPDestPortNumber;
} IPv4TcpSynParameters;
struct {
ULONG Flags;
UCHAR IPv6SourceAddress[16];
UCHAR IPv6DestAddress[16];
USHORT TCPSourcePortNumber;
USHORT TCPDestPortNumber;
} IPv6TcpSynParameters;
struct {
ULONG Flags;
} EapolRequestIdMessageParameters;
struct {
ULONG Flags;
ULONG MaskOffset;
ULONG MaskSize;
ULONG PatternOffset;
ULONG PatternSize;
} WoLBitMapPattern;
} WoLPattern;
_WOL_PATTERN _WOL_PATTERN;
} NDIS_PM_WOL_PATTERN, *PNDIS_PM_WOL_PATTERN;
Anggota
Header
Jenis, revisi, dan ukuran struktur NDIS_PM_WOL_PATTERN . Anggota ini diformat sebagai struktur NDIS_OBJECT_HEADER .
Driver miniport harus mengatur anggota JenisHeader ke NDIS_OBJECT_TYPE_DEFAULT. Untuk menentukan versi struktur NDIS_PM_WOL_PATTERN , driver harus mengatur anggota RevisiHeader ke nilai berikut:
NDIS_PM_WOL_PATTERN_REVISION_2
Revisi yang dilakukan pada enumerasi NDIS_PM_WOL_PACKET untuk NDIS 6.30.
Atur anggota Ukuran ke NDIS_SIZEOF_NDIS_PM_WOL_PATTERN_REVISION_2.
NDIS_PM_WOL_PATTERN_REVISION_1
Versi asli untuk NDIS 6.20.
Atur anggota Ukuran ke NDIS_SIZEOF_NDIS_PM_WOL_PATTERN_REVISION_1.
Flags
Nilai ULONG yang berisi bitwise OR dari bendera. Anggota ini dicadangkan untuk NDIS.
Priority
Nilai ULONG yang berisi prioritas pola WOL. Jika driver yang terlalu berlebihan menambahkan pola WOL prioritas yang lebih tinggi ketika tidak ada sumber daya yang tersedia untuk lebih banyak pola WOL, NDIS mungkin menghapus pola WOL prioritas yang lebih rendah ke sumber daya bebas. Driver miniport harus mengabaikan anggota ini. Driver protokol dapat menentukan prioritas apa pun yang berada dalam rentang yang telah ditentukan sebelumnya. Nilai berikut telah ditentukan sebelumnya:
NDIS_PM_WOL_PRIORITY_LOWEST
Menentukan pola WOL prioritas terendah.
NDIS_PM_WOL_PRIORITY_NORMAL
Menentukan pola WOL prioritas normal.
NDIS_PM_WOL_PRIORITY_HIGHEST
Menentukan pola WOL prioritas tertinggi.
WoLPacketType
Nilai enumerasi NDIS_PM_WOL_PACKET yang menentukan jenis paket WOL.
FriendlyName
Struktur NDIS_PM_COUNTED_STRING yang berisi deskripsi paket WOL yang dapat dibaca pengguna.
PatternId
Nilai ULONG yang berisi nilai yang disediakan NDIS yang mengidentifikasi pola WOL. Sebelum NDIS mengirimkan permintaan OID OID_PM_ADD_WOL_PATTERN ke driver NDIS yang mendasar atau menyelesaikan permintaan ke driver yang terlalu berlebihan, NDIS menetapkan PatternId ke nilai yang unik di antara pola WOL pada adaptor jaringan.
NextWoLPatternOffset
Nilai ULONG yang berisi offset, dalam byte. Anggota NextWoLPatternOffset dari setiap struktur NDIS_PM_WOL_PATTERN dalam daftar diatur ke offset (dari awal permintaan OID InformationBuffer) dari struktur NDIS_PM_WOL_PATTERN berikutnya dalam daftar. Jika NextWoLPatternOffset adalah nol, struktur saat ini adalah struktur terakhir dalam daftar.
WoLPattern
Serikat yang berisi struktur anggota berikut.
WoLPattern.IPv4TcpSynParameters
Struktur yang berisi informasi IPv4 TCP SYN. Struktur ini berisi anggota berikut:
WoLPattern.IPv4TcpSynParameters.Flags
Nilai ULONG yang berisi bitwise OR dari bendera. Anggota ini dicadangkan untuk NDIS.
WoLPattern.IPv4TcpSynParameters.IPv4SourceAddress[4]
Alamat sumber IPv4 dalam paket TCP SYN.
WoLPattern.IPv4TcpSynParameters.IPv4DestAddress[4]
Alamat tujuan IPv4 dalam paket TCP SYN.
WoLPattern.IPv4TcpSynParameters.TCPSourcePortNumber
Nomor port sumber TCP dalam paket TCP SYN.
WoLPattern.IPv4TcpSynParameters.TCPDestPortNumber
Nomor port tujuan TCP dalam paket TCP SYN.
WoLPattern.IPv6TcpSynParameters
Struktur yang berisi informasi IPv6 TCP SYN. Struktur ini berisi anggota berikut:
WoLPattern.IPv6TcpSynParameters.Flags
Nilai ULONG yang berisi bitwise OR dari bendera. Anggota ini dicadangkan untuk NDIS.
WoLPattern.IPv6TcpSynParameters.IPv6SourceAddress[16]
Alamat sumber IPv6 dalam paket TCP SYN.
WoLPattern.IPv6TcpSynParameters.IPv6DestAddress[16]
Alamat tujuan IPv6 dalam paket TCP SYN.
WoLPattern.IPv6TcpSynParameters.TCPSourcePortNumber
Port sumber TCP dalam paket TCP SYN.
WoLPattern.IPv6TcpSynParameters.TCPDestPortNumber
Port tujuan TCP dalam paket TCP SYN.
WoLPattern.EapolRequestIdMessageParameters
Struktur yang berisi parameter pesan identitas permintaan EAPOL 802.1X. Struktur ini berisi anggota berikut:
WoLPattern.EapolRequestIdMessageParameters.Flags
Nilai ULONG yang berisi bitwise OR dari bendera. Anggota ini dicadangkan untuk NDIS.
WoLPattern.WoLBitMapPattern
Struktur yang menentukan pola bitmap WOL. Untuk informasi selengkapnya tentang pola bitmap, lihat bagian Keterangan. Strukturnya memiliki anggota berikut:
WoLPattern.WoLBitMapPattern.Flags
Nilai ULONG yang berisi bitwise OR dari bendera. Anggota ini dicadangkan untuk NDIS.
WoLPattern.WoLBitMapPattern.MaskOffset
Offset, dalam byte, untuk buffer masker dari awal struktur NDIS_PM_WOL_PATTERN.
Masker menentukan byte mana dalam paket masuk yang harus dicocokkan dengan pola bitmap. Setiap bit dalam bitmask sesuai dengan byte dalam pola. Jika bit adalah nol, byte yang sesuai dalam paket masuk tidak boleh cocok dengan pola. Jika bit adalah satu, adaptor jaringan membandingkan byte dengan paket masuk dengan byte yang ditentukan dalam pola.
WoLPattern.WoLBitMapPattern.MaskSize
Ukurannya, dalam byte, dari masker.
WoLPattern.WoLBitMapPattern.PatternOffset
Offset, dalam byte, untuk buffer pola dari awal struktur NDIS_PM_WOL_PATTERN.
WoLPattern.WoLBitMapPattern.PatternSize
Ukuran, dalam byte, dari pola.
_WOL_PATTERN
Keterangan
Struktur NDIS_PM_WOL_PATTERN digunakan dalam permintaan OID OID_PM_ADD_WOL_PATTERN dan OID_PM_WOL_PATTERN_LIST .
Driver lapisan atas dapat menentukan pola WOL generik dengan anggota WoLBitMapPattern . Pola bitmap ditentukan sebagai urutan byte dan bitmap mask. Setiap bit dalam masker sesuai dengan byte dalam pola, dan menentukan apakah byte yang sesuai dalam paket masuk harus dicocokkan dengan byte yang sesuai dalam pola. Jika semua byte dibandingkan dengan kecocokan adaptor jaringan, paketnya cocok dan adaptor jaringan harus menghasilkan peristiwa bangun.
Driver lapisan atas dapat menentukan nilai alamat IPv4 dan port TCP tanpa isian, atau tidak ditentukan dalam struktur anggota IPv4TcpSynParameters . Jika bendera NDIS_PM_WOL_IPV4_DEST_ADDR_WILDCARD_ENABLED diatur dalam anggota EnabledWoLPacketPatterns dari NDIS_PM_PARAMETERS, adaptor jaringan harus menggunakan alamat atau nilai port yang tidak ditentukan agar sesuai dengan alamat IPv4 sumber atau tujuan atau nilai port TCP dalam paket IPv4 TCP SYN.
Demikian pula, driver lapisan atas dapat menentukan alamat IPv6 yang tidak ditentukan dan nilai port TCP dalam struktur anggota IPv6TcpSynParameters . Jika bendera NDIS_PM_WOL_IPV6_DEST_ADDR_WILDCARD_ENABLED diatur dalam anggota EnabledWoLPacketPatterns dari NDIS_PM_PARAMETERS, adaptor jaringan harus menggunakan alamat atau nilai port yang tidak ditentukan agar sesuai dengan alamat IPv6 sumber atau tujuan atau nilai port TCP dalam paket SYN TCP IPv4.
Driver lapisan atas mengatur bendera NDIS_PM_WOL_IPV4_DEST_ADDR_WILDCARD_ENABLED dan NDIS_PM_WOL_IPV6_DEST_ADDR_WILDCARD_ENABLED dengan mengeluarkan permintaan yang ditetapkan dari OID_PM_PARAMETERS OID.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Didukung di NDIS 6.20 dan yang lebih baru. |
Header | ntddndis.h (termasuk Ntddndis.h) |
Lihat juga
Saran 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