// Licensed under the Apache License, Version 2.0 // or the MIT license // , at your option. // All files in the project carrying such notice may not be copied, modified, or distributed // except according to those terms. //! Definitions and data structures for common layer 2. use shared::guiddef::GUID; use shared::minwindef::DWORD; use um::winnt::PVOID; pub const L2_PROFILE_MAX_NAME_LENGTH: usize = 256; pub const L2_NOTIFICATION_SOURCE_NONE: DWORD = 0; pub const L2_NOTIFICATION_SOURCE_DOT3_AUTO_CONFIG: DWORD = 0x00000001; pub const L2_NOTIFICATION_SOURCE_SECURITY: DWORD = 0x00000002; pub const L2_NOTIFICATION_SOURCE_ONEX: DWORD = 0x00000004; pub const L2_NOTIFICATION_SOURCE_WLAN_ACM: DWORD = 0x00000008; pub const L2_NOTIFICATION_SOURCE_WLAN_MSM: DWORD = 0x00000010; pub const L2_NOTIFICATION_SOURCE_WLAN_SECURITY: DWORD = 0x00000020; pub const L2_NOTIFICATION_SOURCE_WLAN_IHV: DWORD = 0x00000040; pub const L2_NOTIFICATION_SOURCE_WLAN_HNWK: DWORD = 0x00000080; pub const L2_NOTIFICATION_SOURCE_WCM: DWORD = 0x00000100; pub const L2_NOTIFICATION_SOURCE_WCM_CSP: DWORD = 0x00000200; pub const L2_NOTIFICATION_SOURCE_WFD: DWORD = 0x00000400; pub const L2_NOTIFICATION_SOURCE_ALL: DWORD = 0x0000ffff; pub const L2_NOTIFICATION_CODE_PUBLIC_BEGIN: DWORD = 0x00000000; pub const L2_NOTIFICATION_CODE_GROUP_SIZE: DWORD = 0x00001000; pub const L2_NOTIFICATION_CODE_V2_BEGIN: DWORD = L2_NOTIFICATION_CODE_PUBLIC_BEGIN + L2_NOTIFICATION_CODE_GROUP_SIZE; pub const L2_REASON_CODE_GROUP_SIZE: u32 = 0x10000; pub const L2_REASON_CODE_GEN_BASE: u32 = 0x10000; pub const L2_REASON_CODE_DOT11_AC_BASE: u32 = L2_REASON_CODE_GEN_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_DOT11_MSM_BASE: u32 = L2_REASON_CODE_DOT11_AC_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_DOT11_SECURITY_BASE: u32 = L2_REASON_CODE_DOT11_MSM_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_ONEX_BASE: u32 = L2_REASON_CODE_DOT11_SECURITY_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_DOT3_AC_BASE: u32 = L2_REASON_CODE_ONEX_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_DOT3_MSM_BASE: u32 = L2_REASON_CODE_DOT3_AC_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_PROFILE_BASE: u32 = L2_REASON_CODE_DOT3_MSM_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_IHV_BASE: u32 = L2_REASON_CODE_PROFILE_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_WIMAX_BASE: u32 = L2_REASON_CODE_IHV_BASE + L2_REASON_CODE_GROUP_SIZE; pub const L2_REASON_CODE_SUCCESS: u32 = 0; pub const L2_REASON_CODE_UNKNOWN: u32 = L2_REASON_CODE_GEN_BASE + 1; pub const L2_REASON_CODE_PROFILE_MISSING: u32 = 0x00000001; STRUCT!{struct L2_NOTIFICATION_DATA { NotificationSource: DWORD, NotificationCode: DWORD, InterfaceGuid: GUID, dwDataSize: DWORD, pData: PVOID, }} pub type PL2_NOTIFICATION_DATA = *mut L2_NOTIFICATION_DATA;