1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
2 #[link(name = "windows")]
3 extern "system" {
4     #[cfg(feature = "Win32_Foundation")]
WFDCancelOpenSession(hsessionhandle: super::super::Foundation::HANDLE) -> u325     pub fn WFDCancelOpenSession(hsessionhandle: super::super::Foundation::HANDLE) -> u32;
6     #[cfg(feature = "Win32_Foundation")]
WFDCloseHandle(hclienthandle: super::super::Foundation::HANDLE) -> u327     pub fn WFDCloseHandle(hclienthandle: super::super::Foundation::HANDLE) -> u32;
8     #[cfg(feature = "Win32_Foundation")]
WFDCloseSession(hsessionhandle: super::super::Foundation::HANDLE) -> u329     pub fn WFDCloseSession(hsessionhandle: super::super::Foundation::HANDLE) -> u32;
10     #[cfg(feature = "Win32_Foundation")]
WFDOpenHandle(dwclientversion: u32, pdwnegotiatedversion: *mut u32, phclienthandle: *mut super::super::Foundation::HANDLE) -> u3211     pub fn WFDOpenHandle(dwclientversion: u32, pdwnegotiatedversion: *mut u32, phclienthandle: *mut super::super::Foundation::HANDLE) -> u32;
12     #[cfg(feature = "Win32_Foundation")]
WFDOpenLegacySession(hclienthandle: super::super::Foundation::HANDLE, plegacymacaddress: *const *const u8, phsessionhandle: *mut super::super::Foundation::HANDLE, pguidsessioninterface: *mut ::windows_sys::core::GUID) -> u3213     pub fn WFDOpenLegacySession(hclienthandle: super::super::Foundation::HANDLE, plegacymacaddress: *const *const u8, phsessionhandle: *mut super::super::Foundation::HANDLE, pguidsessioninterface: *mut ::windows_sys::core::GUID) -> u32;
14     #[cfg(feature = "Win32_Foundation")]
WFDStartOpenSession(hclienthandle: super::super::Foundation::HANDLE, pdeviceaddress: *const *const u8, pvcontext: *const ::core::ffi::c_void, pfncallback: ::core::option::Option<WFD_OPEN_SESSION_COMPLETE_CALLBACK>, phsessionhandle: *mut super::super::Foundation::HANDLE) -> u3215     pub fn WFDStartOpenSession(hclienthandle: super::super::Foundation::HANDLE, pdeviceaddress: *const *const u8, pvcontext: *const ::core::ffi::c_void, pfncallback: ::core::option::Option<WFD_OPEN_SESSION_COMPLETE_CALLBACK>, phsessionhandle: *mut super::super::Foundation::HANDLE) -> u32;
WFDUpdateDeviceVisibility(pdeviceaddress: *const *const u8) -> u3216     pub fn WFDUpdateDeviceVisibility(pdeviceaddress: *const *const u8) -> u32;
WlanAllocateMemory(dwmemorysize: u32) -> *mut ::core::ffi::c_void17     pub fn WlanAllocateMemory(dwmemorysize: u32) -> *mut ::core::ffi::c_void;
18     #[cfg(feature = "Win32_Foundation")]
WlanCloseHandle(hclienthandle: super::super::Foundation::HANDLE, preserved: *mut ::core::ffi::c_void) -> u3219     pub fn WlanCloseHandle(hclienthandle: super::super::Foundation::HANDLE, preserved: *mut ::core::ffi::c_void) -> u32;
20     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
WlanConnect(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pconnectionparameters: *const WLAN_CONNECTION_PARAMETERS, preserved: *mut ::core::ffi::c_void) -> u3221     pub fn WlanConnect(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pconnectionparameters: *const WLAN_CONNECTION_PARAMETERS, preserved: *mut ::core::ffi::c_void) -> u32;
22     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
WlanConnect2(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pconnectionparameters: *const WLAN_CONNECTION_PARAMETERS_V2, preserved: *mut ::core::ffi::c_void) -> u3223     pub fn WlanConnect2(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pconnectionparameters: *const WLAN_CONNECTION_PARAMETERS_V2, preserved: *mut ::core::ffi::c_void) -> u32;
24     #[cfg(feature = "Win32_Foundation")]
WlanDeleteProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u3225     pub fn WlanDeleteProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u32;
26     #[cfg(feature = "Win32_Foundation")]
WlanDeviceServiceCommand(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pdeviceserviceguid: *const ::windows_sys::core::GUID, dwopcode: u32, dwinbuffersize: u32, pinbuffer: *const ::core::ffi::c_void, dwoutbuffersize: u32, poutbuffer: *mut ::core::ffi::c_void, pdwbytesreturned: *mut u32) -> u3227     pub fn WlanDeviceServiceCommand(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pdeviceserviceguid: *const ::windows_sys::core::GUID, dwopcode: u32, dwinbuffersize: u32, pinbuffer: *const ::core::ffi::c_void, dwoutbuffersize: u32, poutbuffer: *mut ::core::ffi::c_void, pdwbytesreturned: *mut u32) -> u32;
28     #[cfg(feature = "Win32_Foundation")]
WlanDisconnect(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, preserved: *mut ::core::ffi::c_void) -> u3229     pub fn WlanDisconnect(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, preserved: *mut ::core::ffi::c_void) -> u32;
30     #[cfg(feature = "Win32_Foundation")]
WlanEnumInterfaces(hclienthandle: super::super::Foundation::HANDLE, preserved: *mut ::core::ffi::c_void, ppinterfacelist: *mut *mut WLAN_INTERFACE_INFO_LIST) -> u3231     pub fn WlanEnumInterfaces(hclienthandle: super::super::Foundation::HANDLE, preserved: *mut ::core::ffi::c_void, ppinterfacelist: *mut *mut WLAN_INTERFACE_INFO_LIST) -> u32;
32     #[cfg(feature = "Win32_Foundation")]
WlanExtractPsdIEDataList(hclienthandle: super::super::Foundation::HANDLE, dwiedatasize: u32, prawiedata: *const u8, strformat: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void, pppsdiedatalist: *mut *mut WLAN_RAW_DATA_LIST) -> u3233     pub fn WlanExtractPsdIEDataList(hclienthandle: super::super::Foundation::HANDLE, dwiedatasize: u32, prawiedata: *const u8, strformat: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void, pppsdiedatalist: *mut *mut WLAN_RAW_DATA_LIST) -> u32;
WlanFreeMemory(pmemory: *const ::core::ffi::c_void)34     pub fn WlanFreeMemory(pmemory: *const ::core::ffi::c_void);
35     #[cfg(feature = "Win32_Foundation")]
WlanGetAvailableNetworkList(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, dwflags: u32, preserved: *mut ::core::ffi::c_void, ppavailablenetworklist: *mut *mut WLAN_AVAILABLE_NETWORK_LIST) -> u3236     pub fn WlanGetAvailableNetworkList(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, dwflags: u32, preserved: *mut ::core::ffi::c_void, ppavailablenetworklist: *mut *mut WLAN_AVAILABLE_NETWORK_LIST) -> u32;
37     #[cfg(feature = "Win32_Foundation")]
WlanGetAvailableNetworkList2(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, dwflags: u32, preserved: *mut ::core::ffi::c_void, ppavailablenetworklist: *mut *mut WLAN_AVAILABLE_NETWORK_LIST_V2) -> u3238     pub fn WlanGetAvailableNetworkList2(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, dwflags: u32, preserved: *mut ::core::ffi::c_void, ppavailablenetworklist: *mut *mut WLAN_AVAILABLE_NETWORK_LIST_V2) -> u32;
39     #[cfg(feature = "Win32_Foundation")]
WlanGetFilterList(hclienthandle: super::super::Foundation::HANDLE, wlanfilterlisttype: WLAN_FILTER_LIST_TYPE, preserved: *mut ::core::ffi::c_void, ppnetworklist: *mut *mut DOT11_NETWORK_LIST) -> u3240     pub fn WlanGetFilterList(hclienthandle: super::super::Foundation::HANDLE, wlanfilterlisttype: WLAN_FILTER_LIST_TYPE, preserved: *mut ::core::ffi::c_void, ppnetworklist: *mut *mut DOT11_NETWORK_LIST) -> u32;
41     #[cfg(feature = "Win32_Foundation")]
WlanGetInterfaceCapability(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, preserved: *mut ::core::ffi::c_void, ppcapability: *mut *mut WLAN_INTERFACE_CAPABILITY) -> u3242     pub fn WlanGetInterfaceCapability(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, preserved: *mut ::core::ffi::c_void, ppcapability: *mut *mut WLAN_INTERFACE_CAPABILITY) -> u32;
43     #[cfg(feature = "Win32_Foundation")]
WlanGetNetworkBssList(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pdot11ssid: *const DOT11_SSID, dot11bsstype: DOT11_BSS_TYPE, bsecurityenabled: super::super::Foundation::BOOL, preserved: *mut ::core::ffi::c_void, ppwlanbsslist: *mut *mut WLAN_BSS_LIST) -> u3244     pub fn WlanGetNetworkBssList(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pdot11ssid: *const DOT11_SSID, dot11bsstype: DOT11_BSS_TYPE, bsecurityenabled: super::super::Foundation::BOOL, preserved: *mut ::core::ffi::c_void, ppwlanbsslist: *mut *mut WLAN_BSS_LIST) -> u32;
45     #[cfg(feature = "Win32_Foundation")]
WlanGetProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void, pstrprofilexml: *mut super::super::Foundation::PWSTR, pdwflags: *mut u32, pdwgrantedaccess: *mut u32) -> u3246     pub fn WlanGetProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void, pstrprofilexml: *mut super::super::Foundation::PWSTR, pdwflags: *mut u32, pdwgrantedaccess: *mut u32) -> u32;
47     #[cfg(feature = "Win32_Foundation")]
WlanGetProfileCustomUserData(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void, pdwdatasize: *mut u32, ppdata: *mut *mut u8) -> u3248     pub fn WlanGetProfileCustomUserData(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void, pdwdatasize: *mut u32, ppdata: *mut *mut u8) -> u32;
49     #[cfg(feature = "Win32_Foundation")]
WlanGetProfileList(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, preserved: *mut ::core::ffi::c_void, ppprofilelist: *mut *mut WLAN_PROFILE_INFO_LIST) -> u3250     pub fn WlanGetProfileList(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, preserved: *mut ::core::ffi::c_void, ppprofilelist: *mut *mut WLAN_PROFILE_INFO_LIST) -> u32;
51     #[cfg(feature = "Win32_Foundation")]
WlanGetSecuritySettings(hclienthandle: super::super::Foundation::HANDLE, securableobject: WLAN_SECURABLE_OBJECT, pvaluetype: *mut WLAN_OPCODE_VALUE_TYPE, pstrcurrentsddl: *mut super::super::Foundation::PWSTR, pdwgrantedaccess: *mut u32) -> u3252     pub fn WlanGetSecuritySettings(hclienthandle: super::super::Foundation::HANDLE, securableobject: WLAN_SECURABLE_OBJECT, pvaluetype: *mut WLAN_OPCODE_VALUE_TYPE, pstrcurrentsddl: *mut super::super::Foundation::PWSTR, pdwgrantedaccess: *mut u32) -> u32;
53     #[cfg(feature = "Win32_Foundation")]
WlanGetSupportedDeviceServices(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, ppdevsvcguidlist: *mut *mut WLAN_DEVICE_SERVICE_GUID_LIST) -> u3254     pub fn WlanGetSupportedDeviceServices(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, ppdevsvcguidlist: *mut *mut WLAN_DEVICE_SERVICE_GUID_LIST) -> u32;
55     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkForceStart(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3256     pub fn WlanHostedNetworkForceStart(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
57     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkForceStop(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3258     pub fn WlanHostedNetworkForceStop(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
59     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkInitSettings(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3260     pub fn WlanHostedNetworkInitSettings(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
61     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkQueryProperty(hclienthandle: super::super::Foundation::HANDLE, opcode: WLAN_HOSTED_NETWORK_OPCODE, pdwdatasize: *mut u32, ppvdata: *mut *mut ::core::ffi::c_void, pwlanopcodevaluetype: *mut WLAN_OPCODE_VALUE_TYPE, pvreserved: *mut ::core::ffi::c_void) -> u3262     pub fn WlanHostedNetworkQueryProperty(hclienthandle: super::super::Foundation::HANDLE, opcode: WLAN_HOSTED_NETWORK_OPCODE, pdwdatasize: *mut u32, ppvdata: *mut *mut ::core::ffi::c_void, pwlanopcodevaluetype: *mut WLAN_OPCODE_VALUE_TYPE, pvreserved: *mut ::core::ffi::c_void) -> u32;
63     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkQuerySecondaryKey(hclienthandle: super::super::Foundation::HANDLE, pdwkeylength: *mut u32, ppuckeydata: *mut *mut u8, pbispassphrase: *mut super::super::Foundation::BOOL, pbpersistent: *mut super::super::Foundation::BOOL, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3264     pub fn WlanHostedNetworkQuerySecondaryKey(hclienthandle: super::super::Foundation::HANDLE, pdwkeylength: *mut u32, ppuckeydata: *mut *mut u8, pbispassphrase: *mut super::super::Foundation::BOOL, pbpersistent: *mut super::super::Foundation::BOOL, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
65     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkQueryStatus(hclienthandle: super::super::Foundation::HANDLE, ppwlanhostednetworkstatus: *mut *mut WLAN_HOSTED_NETWORK_STATUS, pvreserved: *mut ::core::ffi::c_void) -> u3266     pub fn WlanHostedNetworkQueryStatus(hclienthandle: super::super::Foundation::HANDLE, ppwlanhostednetworkstatus: *mut *mut WLAN_HOSTED_NETWORK_STATUS, pvreserved: *mut ::core::ffi::c_void) -> u32;
67     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkRefreshSecuritySettings(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3268     pub fn WlanHostedNetworkRefreshSecuritySettings(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
69     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkSetProperty(hclienthandle: super::super::Foundation::HANDLE, opcode: WLAN_HOSTED_NETWORK_OPCODE, dwdatasize: u32, pvdata: *const ::core::ffi::c_void, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3270     pub fn WlanHostedNetworkSetProperty(hclienthandle: super::super::Foundation::HANDLE, opcode: WLAN_HOSTED_NETWORK_OPCODE, dwdatasize: u32, pvdata: *const ::core::ffi::c_void, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
71     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkSetSecondaryKey(hclienthandle: super::super::Foundation::HANDLE, dwkeylength: u32, puckeydata: *const u8, bispassphrase: super::super::Foundation::BOOL, bpersistent: super::super::Foundation::BOOL, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3272     pub fn WlanHostedNetworkSetSecondaryKey(hclienthandle: super::super::Foundation::HANDLE, dwkeylength: u32, puckeydata: *const u8, bispassphrase: super::super::Foundation::BOOL, bpersistent: super::super::Foundation::BOOL, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
73     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkStartUsing(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3274     pub fn WlanHostedNetworkStartUsing(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
75     #[cfg(feature = "Win32_Foundation")]
WlanHostedNetworkStopUsing(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u3276     pub fn WlanHostedNetworkStopUsing(hclienthandle: super::super::Foundation::HANDLE, pfailreason: *mut WLAN_HOSTED_NETWORK_REASON, pvreserved: *mut ::core::ffi::c_void) -> u32;
77     #[cfg(feature = "Win32_Foundation")]
WlanIhvControl(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, r#type: WLAN_IHV_CONTROL_TYPE, dwinbuffersize: u32, pinbuffer: *const ::core::ffi::c_void, dwoutbuffersize: u32, poutbuffer: *mut ::core::ffi::c_void, pdwbytesreturned: *mut u32) -> u3278     pub fn WlanIhvControl(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, r#type: WLAN_IHV_CONTROL_TYPE, dwinbuffersize: u32, pinbuffer: *const ::core::ffi::c_void, dwoutbuffersize: u32, poutbuffer: *mut ::core::ffi::c_void, pdwbytesreturned: *mut u32) -> u32;
79     #[cfg(feature = "Win32_Foundation")]
WlanOpenHandle(dwclientversion: u32, preserved: *mut ::core::ffi::c_void, pdwnegotiatedversion: *mut u32, phclienthandle: *mut super::super::Foundation::HANDLE) -> u3280     pub fn WlanOpenHandle(dwclientversion: u32, preserved: *mut ::core::ffi::c_void, pdwnegotiatedversion: *mut u32, phclienthandle: *mut super::super::Foundation::HANDLE) -> u32;
81     #[cfg(feature = "Win32_Foundation")]
WlanQueryAutoConfigParameter(hclienthandle: super::super::Foundation::HANDLE, opcode: WLAN_AUTOCONF_OPCODE, preserved: *mut ::core::ffi::c_void, pdwdatasize: *mut u32, ppdata: *mut *mut ::core::ffi::c_void, pwlanopcodevaluetype: *mut WLAN_OPCODE_VALUE_TYPE) -> u3282     pub fn WlanQueryAutoConfigParameter(hclienthandle: super::super::Foundation::HANDLE, opcode: WLAN_AUTOCONF_OPCODE, preserved: *mut ::core::ffi::c_void, pdwdatasize: *mut u32, ppdata: *mut *mut ::core::ffi::c_void, pwlanopcodevaluetype: *mut WLAN_OPCODE_VALUE_TYPE) -> u32;
83     #[cfg(feature = "Win32_Foundation")]
WlanQueryInterface(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, opcode: WLAN_INTF_OPCODE, preserved: *mut ::core::ffi::c_void, pdwdatasize: *mut u32, ppdata: *mut *mut ::core::ffi::c_void, pwlanopcodevaluetype: *mut WLAN_OPCODE_VALUE_TYPE) -> u3284     pub fn WlanQueryInterface(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, opcode: WLAN_INTF_OPCODE, preserved: *mut ::core::ffi::c_void, pdwdatasize: *mut u32, ppdata: *mut *mut ::core::ffi::c_void, pwlanopcodevaluetype: *mut WLAN_OPCODE_VALUE_TYPE) -> u32;
85     #[cfg(feature = "Win32_Foundation")]
WlanReasonCodeToString(dwreasoncode: u32, dwbuffersize: u32, pstringbuffer: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u3286     pub fn WlanReasonCodeToString(dwreasoncode: u32, dwbuffersize: u32, pstringbuffer: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u32;
87     #[cfg(feature = "Win32_Foundation")]
WlanRegisterDeviceServiceNotification(hclienthandle: super::super::Foundation::HANDLE, pdevsvcguidlist: *const WLAN_DEVICE_SERVICE_GUID_LIST) -> u3288     pub fn WlanRegisterDeviceServiceNotification(hclienthandle: super::super::Foundation::HANDLE, pdevsvcguidlist: *const WLAN_DEVICE_SERVICE_GUID_LIST) -> u32;
89     #[cfg(feature = "Win32_Foundation")]
WlanRegisterNotification(hclienthandle: super::super::Foundation::HANDLE, dwnotifsource: u32, bignoreduplicate: super::super::Foundation::BOOL, funccallback: ::core::option::Option<WLAN_NOTIFICATION_CALLBACK>, pcallbackcontext: *const ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void, pdwprevnotifsource: *mut u32) -> u3290     pub fn WlanRegisterNotification(hclienthandle: super::super::Foundation::HANDLE, dwnotifsource: u32, bignoreduplicate: super::super::Foundation::BOOL, funccallback: ::core::option::Option<WLAN_NOTIFICATION_CALLBACK>, pcallbackcontext: *const ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void, pdwprevnotifsource: *mut u32) -> u32;
91     #[cfg(feature = "Win32_Foundation")]
WlanRegisterVirtualStationNotification(hclienthandle: super::super::Foundation::HANDLE, bregister: super::super::Foundation::BOOL, preserved: *mut ::core::ffi::c_void) -> u3292     pub fn WlanRegisterVirtualStationNotification(hclienthandle: super::super::Foundation::HANDLE, bregister: super::super::Foundation::BOOL, preserved: *mut ::core::ffi::c_void) -> u32;
93     #[cfg(feature = "Win32_Foundation")]
WlanRenameProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, stroldprofilename: super::super::Foundation::PWSTR, strnewprofilename: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u3294     pub fn WlanRenameProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, stroldprofilename: super::super::Foundation::PWSTR, strnewprofilename: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u32;
95     #[cfg(feature = "Win32_Foundation")]
WlanSaveTemporaryProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, stralluserprofilesecurity: super::super::Foundation::PWSTR, dwflags: u32, boverwrite: super::super::Foundation::BOOL, preserved: *mut ::core::ffi::c_void) -> u3296     pub fn WlanSaveTemporaryProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, stralluserprofilesecurity: super::super::Foundation::PWSTR, dwflags: u32, boverwrite: super::super::Foundation::BOOL, preserved: *mut ::core::ffi::c_void) -> u32;
97     #[cfg(feature = "Win32_Foundation")]
WlanScan(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pdot11ssid: *const DOT11_SSID, piedata: *const WLAN_RAW_DATA, preserved: *mut ::core::ffi::c_void) -> u3298     pub fn WlanScan(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, pdot11ssid: *const DOT11_SSID, piedata: *const WLAN_RAW_DATA, preserved: *mut ::core::ffi::c_void) -> u32;
99     #[cfg(feature = "Win32_Foundation")]
WlanSetAutoConfigParameter(hclienthandle: super::super::Foundation::HANDLE, opcode: WLAN_AUTOCONF_OPCODE, dwdatasize: u32, pdata: *const ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> u32100     pub fn WlanSetAutoConfigParameter(hclienthandle: super::super::Foundation::HANDLE, opcode: WLAN_AUTOCONF_OPCODE, dwdatasize: u32, pdata: *const ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> u32;
101     #[cfg(feature = "Win32_Foundation")]
WlanSetFilterList(hclienthandle: super::super::Foundation::HANDLE, wlanfilterlisttype: WLAN_FILTER_LIST_TYPE, pnetworklist: *const DOT11_NETWORK_LIST, preserved: *mut ::core::ffi::c_void) -> u32102     pub fn WlanSetFilterList(hclienthandle: super::super::Foundation::HANDLE, wlanfilterlisttype: WLAN_FILTER_LIST_TYPE, pnetworklist: *const DOT11_NETWORK_LIST, preserved: *mut ::core::ffi::c_void) -> u32;
103     #[cfg(feature = "Win32_Foundation")]
WlanSetInterface(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, opcode: WLAN_INTF_OPCODE, dwdatasize: u32, pdata: *const ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> u32104     pub fn WlanSetInterface(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, opcode: WLAN_INTF_OPCODE, dwdatasize: u32, pdata: *const ::core::ffi::c_void, preserved: *mut ::core::ffi::c_void) -> u32;
105     #[cfg(feature = "Win32_Foundation")]
WlanSetProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, dwflags: u32, strprofilexml: super::super::Foundation::PWSTR, stralluserprofilesecurity: super::super::Foundation::PWSTR, boverwrite: super::super::Foundation::BOOL, preserved: *mut ::core::ffi::c_void, pdwreasoncode: *mut u32) -> u32106     pub fn WlanSetProfile(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, dwflags: u32, strprofilexml: super::super::Foundation::PWSTR, stralluserprofilesecurity: super::super::Foundation::PWSTR, boverwrite: super::super::Foundation::BOOL, preserved: *mut ::core::ffi::c_void, pdwreasoncode: *mut u32) -> u32;
107     #[cfg(feature = "Win32_Foundation")]
WlanSetProfileCustomUserData(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, dwdatasize: u32, pdata: *const u8, preserved: *mut ::core::ffi::c_void) -> u32108     pub fn WlanSetProfileCustomUserData(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, dwdatasize: u32, pdata: *const u8, preserved: *mut ::core::ffi::c_void) -> u32;
109     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Security_ExtensibleAuthenticationProtocol"))]
WlanSetProfileEapUserData(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, eaptype: super::super::Security::ExtensibleAuthenticationProtocol::EAP_METHOD_TYPE, dwflags: WLAN_SET_EAPHOST_FLAGS, dweapuserdatasize: u32, pbeapuserdata: *const u8, preserved: *mut ::core::ffi::c_void) -> u32110     pub fn WlanSetProfileEapUserData(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, eaptype: super::super::Security::ExtensibleAuthenticationProtocol::EAP_METHOD_TYPE, dwflags: WLAN_SET_EAPHOST_FLAGS, dweapuserdatasize: u32, pbeapuserdata: *const u8, preserved: *mut ::core::ffi::c_void) -> u32;
111     #[cfg(feature = "Win32_Foundation")]
WlanSetProfileEapXmlUserData(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, dwflags: WLAN_SET_EAPHOST_FLAGS, streapxmluserdata: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u32112     pub fn WlanSetProfileEapXmlUserData(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, dwflags: WLAN_SET_EAPHOST_FLAGS, streapxmluserdata: super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u32;
113     #[cfg(feature = "Win32_Foundation")]
WlanSetProfileList(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, dwitems: u32, strprofilenames: *const super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u32114     pub fn WlanSetProfileList(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, dwitems: u32, strprofilenames: *const super::super::Foundation::PWSTR, preserved: *mut ::core::ffi::c_void) -> u32;
115     #[cfg(feature = "Win32_Foundation")]
WlanSetProfilePosition(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, dwposition: u32, preserved: *mut ::core::ffi::c_void) -> u32116     pub fn WlanSetProfilePosition(hclienthandle: super::super::Foundation::HANDLE, pinterfaceguid: *const ::windows_sys::core::GUID, strprofilename: super::super::Foundation::PWSTR, dwposition: u32, preserved: *mut ::core::ffi::c_void) -> u32;
117     #[cfg(feature = "Win32_Foundation")]
WlanSetPsdIEDataList(hclienthandle: super::super::Foundation::HANDLE, strformat: super::super::Foundation::PWSTR, ppsdiedatalist: *const WLAN_RAW_DATA_LIST, preserved: *mut ::core::ffi::c_void) -> u32118     pub fn WlanSetPsdIEDataList(hclienthandle: super::super::Foundation::HANDLE, strformat: super::super::Foundation::PWSTR, ppsdiedatalist: *const WLAN_RAW_DATA_LIST, preserved: *mut ::core::ffi::c_void) -> u32;
119     #[cfg(feature = "Win32_Foundation")]
WlanSetSecuritySettings(hclienthandle: super::super::Foundation::HANDLE, securableobject: WLAN_SECURABLE_OBJECT, strmodifiedsddl: super::super::Foundation::PWSTR) -> u32120     pub fn WlanSetSecuritySettings(hclienthandle: super::super::Foundation::HANDLE, securableobject: WLAN_SECURABLE_OBJECT, strmodifiedsddl: super::super::Foundation::PWSTR) -> u32;
121     #[cfg(feature = "Win32_Foundation")]
WlanUIEditProfile(dwclientversion: u32, wstrprofilename: super::super::Foundation::PWSTR, pinterfaceguid: *const ::windows_sys::core::GUID, hwnd: super::super::Foundation::HWND, wlstartpage: WL_DISPLAY_PAGES, preserved: *mut ::core::ffi::c_void, pwlanreasoncode: *mut u32) -> u32122     pub fn WlanUIEditProfile(dwclientversion: u32, wstrprofilename: super::super::Foundation::PWSTR, pinterfaceguid: *const ::windows_sys::core::GUID, hwnd: super::super::Foundation::HWND, wlstartpage: WL_DISPLAY_PAGES, preserved: *mut ::core::ffi::c_void, pwlanreasoncode: *mut u32) -> u32;
123 }
124 pub type CH_DESCRIPTION_TYPE = i32;
125 pub const ch_description_type_logical: CH_DESCRIPTION_TYPE = 1i32;
126 pub const ch_description_type_center_frequency: CH_DESCRIPTION_TYPE = 2i32;
127 pub const ch_description_type_phy_specific: CH_DESCRIPTION_TYPE = 3i32;
128 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
129 pub const DEVPKEY_InfraCast_AccessPointBssid: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
130     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
131     pid: 19u32,
132 };
133 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
134 pub const DEVPKEY_InfraCast_ChallengeAep: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
135     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
136     pid: 21u32,
137 };
138 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
139 pub const DEVPKEY_InfraCast_DevnodeAep: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
140     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
141     pid: 23u32,
142 };
143 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
144 pub const DEVPKEY_InfraCast_HostName_ResolutionMode: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
145     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
146     pid: 25u32,
147 };
148 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
149 pub const DEVPKEY_InfraCast_PinSupported: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
150     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
151     pid: 29u32,
152 };
153 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
154 pub const DEVPKEY_InfraCast_RtspTcpConnectionParametersSupported: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
155     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
156     pid: 30u32,
157 };
158 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
159 pub const DEVPKEY_InfraCast_SinkHostName: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
160     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
161     pid: 20u32,
162 };
163 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
164 pub const DEVPKEY_InfraCast_SinkIpAddress: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
165     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
166     pid: 26u32,
167 };
168 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
169 pub const DEVPKEY_InfraCast_StreamSecuritySupported: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
170     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
171     pid: 18u32,
172 };
173 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
174 pub const DEVPKEY_InfraCast_Supported: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
175     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
176     pid: 17u32,
177 };
178 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
179 pub const DEVPKEY_WiFiDirectServices_AdvertisementId: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
180     fmtid: ::windows_sys::core::GUID {
181         data1: 833845059,
182         data2: 31838,
183         data3: 16389,
184         data4: [147, 230, 233, 83, 249, 43, 130, 233],
185     },
186     pid: 5u32,
187 };
188 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
189 pub const DEVPKEY_WiFiDirectServices_RequestServiceInformation: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
190     fmtid: ::windows_sys::core::GUID {
191         data1: 833845059,
192         data2: 31838,
193         data3: 16389,
194         data4: [147, 230, 233, 83, 249, 43, 130, 233],
195     },
196     pid: 7u32,
197 };
198 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
199 pub const DEVPKEY_WiFiDirectServices_ServiceAddress: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
200     fmtid: ::windows_sys::core::GUID {
201         data1: 833845059,
202         data2: 31838,
203         data3: 16389,
204         data4: [147, 230, 233, 83, 249, 43, 130, 233],
205     },
206     pid: 2u32,
207 };
208 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
209 pub const DEVPKEY_WiFiDirectServices_ServiceConfigMethods: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
210     fmtid: ::windows_sys::core::GUID {
211         data1: 833845059,
212         data2: 31838,
213         data3: 16389,
214         data4: [147, 230, 233, 83, 249, 43, 130, 233],
215     },
216     pid: 6u32,
217 };
218 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
219 pub const DEVPKEY_WiFiDirectServices_ServiceInformation: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
220     fmtid: ::windows_sys::core::GUID {
221         data1: 833845059,
222         data2: 31838,
223         data3: 16389,
224         data4: [147, 230, 233, 83, 249, 43, 130, 233],
225     },
226     pid: 4u32,
227 };
228 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
229 pub const DEVPKEY_WiFiDirectServices_ServiceName: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
230     fmtid: ::windows_sys::core::GUID {
231         data1: 833845059,
232         data2: 31838,
233         data3: 16389,
234         data4: [147, 230, 233, 83, 249, 43, 130, 233],
235     },
236     pid: 3u32,
237 };
238 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
239 pub const DEVPKEY_WiFiDirect_DeviceAddress: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
240     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
241     pid: 1u32,
242 };
243 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
244 pub const DEVPKEY_WiFiDirect_DeviceAddressCopy: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
245     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
246     pid: 13u32,
247 };
248 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
249 pub const DEVPKEY_WiFiDirect_FoundWsbService: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
250     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
251     pid: 24u32,
252 };
253 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
254 pub const DEVPKEY_WiFiDirect_GroupId: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
255     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
256     pid: 4u32,
257 };
258 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
259 pub const DEVPKEY_WiFiDirect_InformationElements: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
260     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
261     pid: 12u32,
262 };
263 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
264 pub const DEVPKEY_WiFiDirect_InterfaceAddress: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
265     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
266     pid: 2u32,
267 };
268 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
269 pub const DEVPKEY_WiFiDirect_InterfaceGuid: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
270     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
271     pid: 3u32,
272 };
273 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
274 pub const DEVPKEY_WiFiDirect_IsConnected: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
275     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
276     pid: 5u32,
277 };
278 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
279 pub const DEVPKEY_WiFiDirect_IsDMGCapable: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
280     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
281     pid: 22u32,
282 };
283 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
284 pub const DEVPKEY_WiFiDirect_IsLegacyDevice: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
285     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
286     pid: 7u32,
287 };
288 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
289 pub const DEVPKEY_WiFiDirect_IsMiracastLCPSupported: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
290     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
291     pid: 9u32,
292 };
293 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
294 pub const DEVPKEY_WiFiDirect_IsRecentlyAssociated: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
295     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
296     pid: 14u32,
297 };
298 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
299 pub const DEVPKEY_WiFiDirect_IsVisible: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
300     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
301     pid: 6u32,
302 };
303 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
304 pub const DEVPKEY_WiFiDirect_LinkQuality: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
305     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
306     pid: 28u32,
307 };
308 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
309 pub const DEVPKEY_WiFiDirect_MiracastVersion: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
310     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
311     pid: 8u32,
312 };
313 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
314 pub const DEVPKEY_WiFiDirect_Miracast_SessionMgmtControlPort: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
315     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
316     pid: 31u32,
317 };
318 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
319 pub const DEVPKEY_WiFiDirect_NoMiracastAutoProject: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
320     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
321     pid: 16u32,
322 };
323 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
324 pub const DEVPKEY_WiFiDirect_RtspTcpConnectionParametersSupported: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
325     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
326     pid: 32u32,
327 };
328 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
329 pub const DEVPKEY_WiFiDirect_Service_Aeps: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
330     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
331     pid: 15u32,
332 };
333 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
334 pub const DEVPKEY_WiFiDirect_Services: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
335     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
336     pid: 10u32,
337 };
338 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
339 pub const DEVPKEY_WiFiDirect_SupportedChannelList: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
340     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
341     pid: 11u32,
342 };
343 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
344 pub const DEVPKEY_WiFiDirect_TransientAssociation: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
345     fmtid: ::windows_sys::core::GUID { data1: 352752477, data2: 58343, data3: 17679, data4: [134, 55, 130, 35, 62, 190, 95, 110] },
346     pid: 27u32,
347 };
348 #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
349 pub const DEVPKEY_WiFi_InterfaceGuid: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY {
350     fmtid: ::windows_sys::core::GUID {
351         data1: 4010895339,
352         data2: 52220,
353         data3: 17217,
354         data4: [165, 104, 167, 201, 26, 104, 152, 44],
355     },
356     pid: 2u32,
357 };
358 pub const DISCOVERY_FILTER_BITMASK_ANY: u32 = 15u32;
359 pub const DISCOVERY_FILTER_BITMASK_DEVICE: u32 = 1u32;
360 pub const DISCOVERY_FILTER_BITMASK_GO: u32 = 2u32;
361 #[repr(C)]
362 pub struct DOT11_ACCESSNETWORKOPTIONS {
363     pub AccessNetworkType: u8,
364     pub Internet: u8,
365     pub ASRA: u8,
366     pub ESR: u8,
367     pub UESA: u8,
368 }
369 impl ::core::marker::Copy for DOT11_ACCESSNETWORKOPTIONS {}
370 impl ::core::clone::Clone for DOT11_ACCESSNETWORKOPTIONS {
clone(&self) -> Self371     fn clone(&self) -> Self {
372         *self
373     }
374 }
375 pub type DOT11_AC_PARAM = i32;
376 pub const dot11_AC_param_BE: DOT11_AC_PARAM = 0i32;
377 pub const dot11_AC_param_BK: DOT11_AC_PARAM = 1i32;
378 pub const dot11_AC_param_VI: DOT11_AC_PARAM = 2i32;
379 pub const dot11_AC_param_VO: DOT11_AC_PARAM = 3i32;
380 pub const dot11_AC_param_max: DOT11_AC_PARAM = 4i32;
381 #[repr(C)]
382 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
383 pub struct DOT11_ADDITIONAL_IE {
384     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
385     pub uBeaconIEsOffset: u32,
386     pub uBeaconIEsLength: u32,
387     pub uResponseIEsOffset: u32,
388     pub uResponseIEsLength: u32,
389 }
390 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
391 impl ::core::marker::Copy for DOT11_ADDITIONAL_IE {}
392 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
393 impl ::core::clone::Clone for DOT11_ADDITIONAL_IE {
clone(&self) -> Self394     fn clone(&self) -> Self {
395         *self
396     }
397 }
398 pub const DOT11_ADDITIONAL_IE_REVISION_1: u32 = 1u32;
399 pub type DOT11_ADHOC_AUTH_ALGORITHM = i32;
400 pub const DOT11_ADHOC_AUTH_ALGO_INVALID: DOT11_ADHOC_AUTH_ALGORITHM = -1i32;
401 pub const DOT11_ADHOC_AUTH_ALGO_80211_OPEN: DOT11_ADHOC_AUTH_ALGORITHM = 1i32;
402 pub const DOT11_ADHOC_AUTH_ALGO_RSNA_PSK: DOT11_ADHOC_AUTH_ALGORITHM = 7i32;
403 pub type DOT11_ADHOC_CIPHER_ALGORITHM = i32;
404 pub const DOT11_ADHOC_CIPHER_ALGO_INVALID: DOT11_ADHOC_CIPHER_ALGORITHM = -1i32;
405 pub const DOT11_ADHOC_CIPHER_ALGO_NONE: DOT11_ADHOC_CIPHER_ALGORITHM = 0i32;
406 pub const DOT11_ADHOC_CIPHER_ALGO_CCMP: DOT11_ADHOC_CIPHER_ALGORITHM = 4i32;
407 pub const DOT11_ADHOC_CIPHER_ALGO_WEP: DOT11_ADHOC_CIPHER_ALGORITHM = 257i32;
408 pub type DOT11_ADHOC_CONNECT_FAIL_REASON = i32;
409 pub const DOT11_ADHOC_CONNECT_FAIL_DOMAIN_MISMATCH: DOT11_ADHOC_CONNECT_FAIL_REASON = 0i32;
410 pub const DOT11_ADHOC_CONNECT_FAIL_PASSPHRASE_MISMATCH: DOT11_ADHOC_CONNECT_FAIL_REASON = 1i32;
411 pub const DOT11_ADHOC_CONNECT_FAIL_OTHER: DOT11_ADHOC_CONNECT_FAIL_REASON = 2i32;
412 pub type DOT11_ADHOC_NETWORK_CONNECTION_STATUS = i32;
413 pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_INVALID: DOT11_ADHOC_NETWORK_CONNECTION_STATUS = 0i32;
414 pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_DISCONNECTED: DOT11_ADHOC_NETWORK_CONNECTION_STATUS = 11i32;
415 pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_CONNECTING: DOT11_ADHOC_NETWORK_CONNECTION_STATUS = 12i32;
416 pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_CONNECTED: DOT11_ADHOC_NETWORK_CONNECTION_STATUS = 13i32;
417 pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_FORMED: DOT11_ADHOC_NETWORK_CONNECTION_STATUS = 14i32;
418 #[repr(C)]
419 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
420 pub struct DOT11_ANQP_QUERY_COMPLETE_PARAMETERS {
421     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
422     pub Status: DOT11_ANQP_QUERY_RESULT,
423     pub hContext: super::super::Foundation::HANDLE,
424     pub uResponseLength: u32,
425 }
426 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
427 impl ::core::marker::Copy for DOT11_ANQP_QUERY_COMPLETE_PARAMETERS {}
428 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
429 impl ::core::clone::Clone for DOT11_ANQP_QUERY_COMPLETE_PARAMETERS {
clone(&self) -> Self430     fn clone(&self) -> Self {
431         *self
432     }
433 }
434 pub const DOT11_ANQP_QUERY_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
435 pub type DOT11_ANQP_QUERY_RESULT = i32;
436 pub const dot11_ANQP_query_result_success: DOT11_ANQP_QUERY_RESULT = 0i32;
437 pub const dot11_ANQP_query_result_failure: DOT11_ANQP_QUERY_RESULT = 1i32;
438 pub const dot11_ANQP_query_result_timed_out: DOT11_ANQP_QUERY_RESULT = 2i32;
439 pub const dot11_ANQP_query_result_resources: DOT11_ANQP_QUERY_RESULT = 3i32;
440 pub const dot11_ANQP_query_result_advertisement_protocol_not_supported_on_remote: DOT11_ANQP_QUERY_RESULT = 4i32;
441 pub const dot11_ANQP_query_result_gas_protocol_failure: DOT11_ANQP_QUERY_RESULT = 5i32;
442 pub const dot11_ANQP_query_result_advertisement_server_not_responding: DOT11_ANQP_QUERY_RESULT = 6i32;
443 pub const dot11_ANQP_query_result_access_issues: DOT11_ANQP_QUERY_RESULT = 7i32;
444 #[repr(C)]
445 pub struct DOT11_AP_JOIN_REQUEST {
446     pub uJoinFailureTimeout: u32,
447     pub OperationalRateSet: DOT11_RATE_SET,
448     pub uChCenterFrequency: u32,
449     pub dot11BSSDescription: DOT11_BSS_DESCRIPTION,
450 }
451 impl ::core::marker::Copy for DOT11_AP_JOIN_REQUEST {}
452 impl ::core::clone::Clone for DOT11_AP_JOIN_REQUEST {
clone(&self) -> Self453     fn clone(&self) -> Self {
454         *self
455     }
456 }
457 #[repr(C)]
458 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
459 pub struct DOT11_ASSOCIATION_COMPLETION_PARAMETERS {
460     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
461     pub MacAddr: [u8; 6],
462     pub uStatus: u32,
463     pub bReAssocReq: super::super::Foundation::BOOLEAN,
464     pub bReAssocResp: super::super::Foundation::BOOLEAN,
465     pub uAssocReqOffset: u32,
466     pub uAssocReqSize: u32,
467     pub uAssocRespOffset: u32,
468     pub uAssocRespSize: u32,
469     pub uBeaconOffset: u32,
470     pub uBeaconSize: u32,
471     pub uIHVDataOffset: u32,
472     pub uIHVDataSize: u32,
473     pub AuthAlgo: DOT11_AUTH_ALGORITHM,
474     pub UnicastCipher: DOT11_CIPHER_ALGORITHM,
475     pub MulticastCipher: DOT11_CIPHER_ALGORITHM,
476     pub uActivePhyListOffset: u32,
477     pub uActivePhyListSize: u32,
478     pub bFourAddressSupported: super::super::Foundation::BOOLEAN,
479     pub bPortAuthorized: super::super::Foundation::BOOLEAN,
480     pub ucActiveQoSProtocol: u8,
481     pub DSInfo: DOT11_DS_INFO,
482     pub uEncapTableOffset: u32,
483     pub uEncapTableSize: u32,
484     pub MulticastMgmtCipher: DOT11_CIPHER_ALGORITHM,
485     pub uAssocComebackTime: u32,
486 }
487 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
488 impl ::core::marker::Copy for DOT11_ASSOCIATION_COMPLETION_PARAMETERS {}
489 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
490 impl ::core::clone::Clone for DOT11_ASSOCIATION_COMPLETION_PARAMETERS {
clone(&self) -> Self491     fn clone(&self) -> Self {
492         *self
493     }
494 }
495 pub const DOT11_ASSOCIATION_COMPLETION_PARAMETERS_REVISION_1: u32 = 1u32;
496 pub const DOT11_ASSOCIATION_COMPLETION_PARAMETERS_REVISION_2: u32 = 2u32;
497 #[repr(C)]
498 pub struct DOT11_ASSOCIATION_INFO_EX {
499     pub PeerMacAddress: [u8; 6],
500     pub BSSID: [u8; 6],
501     pub usCapabilityInformation: u16,
502     pub usListenInterval: u16,
503     pub ucPeerSupportedRates: [u8; 255],
504     pub usAssociationID: u16,
505     pub dot11AssociationState: DOT11_ASSOCIATION_STATE,
506     pub dot11PowerMode: DOT11_POWER_MODE,
507     pub liAssociationUpTime: i64,
508     pub ullNumOfTxPacketSuccesses: u64,
509     pub ullNumOfTxPacketFailures: u64,
510     pub ullNumOfRxPacketSuccesses: u64,
511     pub ullNumOfRxPacketFailures: u64,
512 }
513 impl ::core::marker::Copy for DOT11_ASSOCIATION_INFO_EX {}
514 impl ::core::clone::Clone for DOT11_ASSOCIATION_INFO_EX {
clone(&self) -> Self515     fn clone(&self) -> Self {
516         *self
517     }
518 }
519 #[repr(C)]
520 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
521 pub struct DOT11_ASSOCIATION_INFO_LIST {
522     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
523     pub uNumOfEntries: u32,
524     pub uTotalNumOfEntries: u32,
525     pub dot11AssocInfo: [DOT11_ASSOCIATION_INFO_EX; 1],
526 }
527 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
528 impl ::core::marker::Copy for DOT11_ASSOCIATION_INFO_LIST {}
529 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
530 impl ::core::clone::Clone for DOT11_ASSOCIATION_INFO_LIST {
clone(&self) -> Self531     fn clone(&self) -> Self {
532         *self
533     }
534 }
535 pub const DOT11_ASSOCIATION_INFO_LIST_REVISION_1: u32 = 1u32;
536 #[repr(C)]
537 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
538 pub struct DOT11_ASSOCIATION_PARAMS {
539     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
540     pub BSSID: [u8; 6],
541     pub uAssocRequestIEsOffset: u32,
542     pub uAssocRequestIEsLength: u32,
543 }
544 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
545 impl ::core::marker::Copy for DOT11_ASSOCIATION_PARAMS {}
546 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
547 impl ::core::clone::Clone for DOT11_ASSOCIATION_PARAMS {
clone(&self) -> Self548     fn clone(&self) -> Self {
549         *self
550     }
551 }
552 pub const DOT11_ASSOCIATION_PARAMS_REVISION_1: u32 = 1u32;
553 #[repr(C)]
554 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
555 pub struct DOT11_ASSOCIATION_START_PARAMETERS {
556     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
557     pub MacAddr: [u8; 6],
558     pub SSID: DOT11_SSID,
559     pub uIHVDataOffset: u32,
560     pub uIHVDataSize: u32,
561 }
562 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
563 impl ::core::marker::Copy for DOT11_ASSOCIATION_START_PARAMETERS {}
564 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
565 impl ::core::clone::Clone for DOT11_ASSOCIATION_START_PARAMETERS {
clone(&self) -> Self566     fn clone(&self) -> Self {
567         *self
568     }
569 }
570 pub const DOT11_ASSOCIATION_START_PARAMETERS_REVISION_1: u32 = 1u32;
571 pub type DOT11_ASSOCIATION_STATE = i32;
572 pub const dot11_assoc_state_zero: DOT11_ASSOCIATION_STATE = 0i32;
573 pub const dot11_assoc_state_unauth_unassoc: DOT11_ASSOCIATION_STATE = 1i32;
574 pub const dot11_assoc_state_auth_unassoc: DOT11_ASSOCIATION_STATE = 2i32;
575 pub const dot11_assoc_state_auth_assoc: DOT11_ASSOCIATION_STATE = 3i32;
576 pub const DOT11_ASSOC_ERROR_SOURCE_OS: u32 = 0u32;
577 pub const DOT11_ASSOC_ERROR_SOURCE_OTHER: u32 = 255u32;
578 pub const DOT11_ASSOC_ERROR_SOURCE_REMOTE: u32 = 1u32;
579 pub const DOT11_ASSOC_STATUS_SUCCESS: u32 = 0u32;
580 pub type DOT11_AUTH_ALGORITHM = i32;
581 pub const DOT11_AUTH_ALGO_80211_OPEN: DOT11_AUTH_ALGORITHM = 1i32;
582 pub const DOT11_AUTH_ALGO_80211_SHARED_KEY: DOT11_AUTH_ALGORITHM = 2i32;
583 pub const DOT11_AUTH_ALGO_WPA: DOT11_AUTH_ALGORITHM = 3i32;
584 pub const DOT11_AUTH_ALGO_WPA_PSK: DOT11_AUTH_ALGORITHM = 4i32;
585 pub const DOT11_AUTH_ALGO_WPA_NONE: DOT11_AUTH_ALGORITHM = 5i32;
586 pub const DOT11_AUTH_ALGO_RSNA: DOT11_AUTH_ALGORITHM = 6i32;
587 pub const DOT11_AUTH_ALGO_RSNA_PSK: DOT11_AUTH_ALGORITHM = 7i32;
588 pub const DOT11_AUTH_ALGO_WPA3: DOT11_AUTH_ALGORITHM = 8i32;
589 pub const DOT11_AUTH_ALGO_WPA3_ENT_192: DOT11_AUTH_ALGORITHM = 8i32;
590 pub const DOT11_AUTH_ALGO_WPA3_SAE: DOT11_AUTH_ALGORITHM = 9i32;
591 pub const DOT11_AUTH_ALGO_OWE: DOT11_AUTH_ALGORITHM = 10i32;
592 pub const DOT11_AUTH_ALGO_WPA3_ENT: DOT11_AUTH_ALGORITHM = 11i32;
593 pub const DOT11_AUTH_ALGO_IHV_START: DOT11_AUTH_ALGORITHM = -2147483648i32;
594 pub const DOT11_AUTH_ALGO_IHV_END: DOT11_AUTH_ALGORITHM = -1i32;
595 #[repr(C)]
596 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
597 pub struct DOT11_AUTH_ALGORITHM_LIST {
598     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
599     pub uNumOfEntries: u32,
600     pub uTotalNumOfEntries: u32,
601     pub AlgorithmIds: [DOT11_AUTH_ALGORITHM; 1],
602 }
603 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
604 impl ::core::marker::Copy for DOT11_AUTH_ALGORITHM_LIST {}
605 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
606 impl ::core::clone::Clone for DOT11_AUTH_ALGORITHM_LIST {
clone(&self) -> Self607     fn clone(&self) -> Self {
608         *self
609     }
610 }
611 pub const DOT11_AUTH_ALGORITHM_LIST_REVISION_1: u32 = 1u32;
612 pub const DOT11_AUTH_ALGO_MICHAEL: u32 = 1u32;
613 #[repr(C)]
614 pub struct DOT11_AUTH_CIPHER_PAIR {
615     pub AuthAlgoId: DOT11_AUTH_ALGORITHM,
616     pub CipherAlgoId: DOT11_CIPHER_ALGORITHM,
617 }
618 impl ::core::marker::Copy for DOT11_AUTH_CIPHER_PAIR {}
619 impl ::core::clone::Clone for DOT11_AUTH_CIPHER_PAIR {
clone(&self) -> Self620     fn clone(&self) -> Self {
621         *self
622     }
623 }
624 #[repr(C)]
625 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
626 pub struct DOT11_AUTH_CIPHER_PAIR_LIST {
627     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
628     pub uNumOfEntries: u32,
629     pub uTotalNumOfEntries: u32,
630     pub AuthCipherPairs: [DOT11_AUTH_CIPHER_PAIR; 1],
631 }
632 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
633 impl ::core::marker::Copy for DOT11_AUTH_CIPHER_PAIR_LIST {}
634 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
635 impl ::core::clone::Clone for DOT11_AUTH_CIPHER_PAIR_LIST {
clone(&self) -> Self636     fn clone(&self) -> Self {
637         *self
638     }
639 }
640 pub const DOT11_AUTH_CIPHER_PAIR_LIST_REVISION_1: u32 = 1u32;
641 #[repr(C)]
642 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
643 pub struct DOT11_AVAILABLE_CHANNEL_LIST {
644     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
645     pub uNumOfEntries: u32,
646     pub uTotalNumOfEntries: u32,
647     pub uChannelNumber: [u32; 1],
648 }
649 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
650 impl ::core::marker::Copy for DOT11_AVAILABLE_CHANNEL_LIST {}
651 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
652 impl ::core::clone::Clone for DOT11_AVAILABLE_CHANNEL_LIST {
clone(&self) -> Self653     fn clone(&self) -> Self {
654         *self
655     }
656 }
657 pub const DOT11_AVAILABLE_CHANNEL_LIST_REVISION_1: u32 = 1u32;
658 #[repr(C)]
659 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
660 pub struct DOT11_AVAILABLE_FREQUENCY_LIST {
661     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
662     pub uNumOfEntries: u32,
663     pub uTotalNumOfEntries: u32,
664     pub uFrequencyValue: [u32; 1],
665 }
666 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
667 impl ::core::marker::Copy for DOT11_AVAILABLE_FREQUENCY_LIST {}
668 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
669 impl ::core::clone::Clone for DOT11_AVAILABLE_FREQUENCY_LIST {
clone(&self) -> Self670     fn clone(&self) -> Self {
671         *self
672     }
673 }
674 pub const DOT11_AVAILABLE_FREQUENCY_LIST_REVISION_1: u32 = 1u32;
675 pub type DOT11_BAND = i32;
676 pub const dot11_band_2p4g: DOT11_BAND = 1i32;
677 pub const dot11_band_4p9g: DOT11_BAND = 2i32;
678 pub const dot11_band_5g: DOT11_BAND = 3i32;
679 #[repr(C)]
680 pub struct DOT11_BSSID_CANDIDATE {
681     pub BSSID: [u8; 6],
682     pub uFlags: u32,
683 }
684 impl ::core::marker::Copy for DOT11_BSSID_CANDIDATE {}
685 impl ::core::clone::Clone for DOT11_BSSID_CANDIDATE {
clone(&self) -> Self686     fn clone(&self) -> Self {
687         *self
688     }
689 }
690 #[repr(C)]
691 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
692 pub struct DOT11_BSSID_LIST {
693     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
694     pub uNumOfEntries: u32,
695     pub uTotalNumOfEntries: u32,
696     pub BSSIDs: [u8; 6],
697 }
698 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
699 impl ::core::marker::Copy for DOT11_BSSID_LIST {}
700 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
701 impl ::core::clone::Clone for DOT11_BSSID_LIST {
clone(&self) -> Self702     fn clone(&self) -> Self {
703         *self
704     }
705 }
706 pub const DOT11_BSSID_LIST_REVISION_1: u32 = 1u32;
707 #[repr(C)]
708 pub struct DOT11_BSS_DESCRIPTION {
709     pub uReserved: u32,
710     pub dot11BSSID: [u8; 6],
711     pub dot11BSSType: DOT11_BSS_TYPE,
712     pub usBeaconPeriod: u16,
713     pub ullTimestamp: u64,
714     pub usCapabilityInformation: u16,
715     pub uBufferLength: u32,
716     pub ucBuffer: [u8; 1],
717 }
718 impl ::core::marker::Copy for DOT11_BSS_DESCRIPTION {}
719 impl ::core::clone::Clone for DOT11_BSS_DESCRIPTION {
clone(&self) -> Self720     fn clone(&self) -> Self {
721         *self
722     }
723 }
724 #[repr(C)]
725 #[cfg(feature = "Win32_Foundation")]
726 pub struct DOT11_BSS_ENTRY {
727     pub uPhyId: u32,
728     pub PhySpecificInfo: DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO,
729     pub dot11BSSID: [u8; 6],
730     pub dot11BSSType: DOT11_BSS_TYPE,
731     pub lRSSI: i32,
732     pub uLinkQuality: u32,
733     pub bInRegDomain: super::super::Foundation::BOOLEAN,
734     pub usBeaconPeriod: u16,
735     pub ullTimestamp: u64,
736     pub ullHostTimestamp: u64,
737     pub usCapabilityInformation: u16,
738     pub uBufferLength: u32,
739     pub ucBuffer: [u8; 1],
740 }
741 #[cfg(feature = "Win32_Foundation")]
742 impl ::core::marker::Copy for DOT11_BSS_ENTRY {}
743 #[cfg(feature = "Win32_Foundation")]
744 impl ::core::clone::Clone for DOT11_BSS_ENTRY {
clone(&self) -> Self745     fn clone(&self) -> Self {
746         *self
747     }
748 }
749 pub const DOT11_BSS_ENTRY_BYTE_ARRAY_REVISION_1: u32 = 1u32;
750 #[repr(C)]
751 pub union DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO {
752     pub uChCenterFrequency: u32,
753     pub FHSS: DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO_0,
754 }
755 impl ::core::marker::Copy for DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO {}
756 impl ::core::clone::Clone for DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO {
clone(&self) -> Self757     fn clone(&self) -> Self {
758         *self
759     }
760 }
761 #[repr(C)]
762 pub struct DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO_0 {
763     pub uHopPattern: u32,
764     pub uHopSet: u32,
765     pub uDwellTime: u32,
766 }
767 impl ::core::marker::Copy for DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO_0 {}
768 impl ::core::clone::Clone for DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO_0 {
clone(&self) -> Self769     fn clone(&self) -> Self {
770         *self
771     }
772 }
773 pub type DOT11_BSS_TYPE = i32;
774 pub const dot11_BSS_type_infrastructure: DOT11_BSS_TYPE = 1i32;
775 pub const dot11_BSS_type_independent: DOT11_BSS_TYPE = 2i32;
776 pub const dot11_BSS_type_any: DOT11_BSS_TYPE = 3i32;
777 #[repr(C)]
778 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
779 pub struct DOT11_BYTE_ARRAY {
780     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
781     pub uNumOfBytes: u32,
782     pub uTotalNumOfBytes: u32,
783     pub ucBuffer: [u8; 1],
784 }
785 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
786 impl ::core::marker::Copy for DOT11_BYTE_ARRAY {}
787 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
788 impl ::core::clone::Clone for DOT11_BYTE_ARRAY {
clone(&self) -> Self789     fn clone(&self) -> Self {
790         *self
791     }
792 }
793 #[repr(C)]
794 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
795 pub struct DOT11_CAN_SUSTAIN_AP_PARAMETERS {
796     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
797     pub ulReason: u32,
798 }
799 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
800 impl ::core::marker::Copy for DOT11_CAN_SUSTAIN_AP_PARAMETERS {}
801 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
802 impl ::core::clone::Clone for DOT11_CAN_SUSTAIN_AP_PARAMETERS {
clone(&self) -> Self803     fn clone(&self) -> Self {
804         *self
805     }
806 }
807 pub const DOT11_CAN_SUSTAIN_AP_PARAMETERS_REVISION_1: u32 = 1u32;
808 pub const DOT11_CAN_SUSTAIN_AP_REASON_IHV_END: u32 = 4294967295u32;
809 pub const DOT11_CAN_SUSTAIN_AP_REASON_IHV_START: u32 = 4278190080u32;
810 pub const DOT11_CAPABILITY_CHANNEL_AGILITY: u32 = 128u32;
811 pub const DOT11_CAPABILITY_DSSSOFDM: u32 = 8192u32;
812 pub const DOT11_CAPABILITY_INFO_CF_POLLABLE: u32 = 4u32;
813 pub const DOT11_CAPABILITY_INFO_CF_POLL_REQ: u32 = 8u32;
814 pub const DOT11_CAPABILITY_INFO_ESS: u32 = 1u32;
815 pub const DOT11_CAPABILITY_INFO_IBSS: u32 = 2u32;
816 pub const DOT11_CAPABILITY_INFO_PRIVACY: u32 = 16u32;
817 pub const DOT11_CAPABILITY_PBCC: u32 = 64u32;
818 pub const DOT11_CAPABILITY_SHORT_PREAMBLE: u32 = 32u32;
819 pub const DOT11_CAPABILITY_SHORT_SLOT_TIME: u32 = 1024u32;
820 pub const DOT11_CCA_MODE_CS_ONLY: u32 = 2u32;
821 pub const DOT11_CCA_MODE_CS_WITH_TIMER: u32 = 8u32;
822 pub const DOT11_CCA_MODE_ED_ONLY: u32 = 1u32;
823 pub const DOT11_CCA_MODE_ED_and_CS: u32 = 4u32;
824 pub const DOT11_CCA_MODE_HRCS_AND_ED: u32 = 16u32;
825 #[repr(C)]
826 pub struct DOT11_CHANNEL_HINT {
827     pub Dot11PhyType: DOT11_PHY_TYPE,
828     pub uChannelNumber: u32,
829 }
830 impl ::core::marker::Copy for DOT11_CHANNEL_HINT {}
831 impl ::core::clone::Clone for DOT11_CHANNEL_HINT {
clone(&self) -> Self832     fn clone(&self) -> Self {
833         *self
834     }
835 }
836 pub type DOT11_CIPHER_ALGORITHM = i32;
837 pub const DOT11_CIPHER_ALGO_NONE: DOT11_CIPHER_ALGORITHM = 0i32;
838 pub const DOT11_CIPHER_ALGO_WEP40: DOT11_CIPHER_ALGORITHM = 1i32;
839 pub const DOT11_CIPHER_ALGO_TKIP: DOT11_CIPHER_ALGORITHM = 2i32;
840 pub const DOT11_CIPHER_ALGO_CCMP: DOT11_CIPHER_ALGORITHM = 4i32;
841 pub const DOT11_CIPHER_ALGO_WEP104: DOT11_CIPHER_ALGORITHM = 5i32;
842 pub const DOT11_CIPHER_ALGO_BIP: DOT11_CIPHER_ALGORITHM = 6i32;
843 pub const DOT11_CIPHER_ALGO_GCMP: DOT11_CIPHER_ALGORITHM = 8i32;
844 pub const DOT11_CIPHER_ALGO_GCMP_256: DOT11_CIPHER_ALGORITHM = 9i32;
845 pub const DOT11_CIPHER_ALGO_CCMP_256: DOT11_CIPHER_ALGORITHM = 10i32;
846 pub const DOT11_CIPHER_ALGO_BIP_GMAC_128: DOT11_CIPHER_ALGORITHM = 11i32;
847 pub const DOT11_CIPHER_ALGO_BIP_GMAC_256: DOT11_CIPHER_ALGORITHM = 12i32;
848 pub const DOT11_CIPHER_ALGO_BIP_CMAC_256: DOT11_CIPHER_ALGORITHM = 13i32;
849 pub const DOT11_CIPHER_ALGO_WPA_USE_GROUP: DOT11_CIPHER_ALGORITHM = 256i32;
850 pub const DOT11_CIPHER_ALGO_RSN_USE_GROUP: DOT11_CIPHER_ALGORITHM = 256i32;
851 pub const DOT11_CIPHER_ALGO_WEP: DOT11_CIPHER_ALGORITHM = 257i32;
852 pub const DOT11_CIPHER_ALGO_IHV_START: DOT11_CIPHER_ALGORITHM = -2147483648i32;
853 pub const DOT11_CIPHER_ALGO_IHV_END: DOT11_CIPHER_ALGORITHM = -1i32;
854 #[repr(C)]
855 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
856 pub struct DOT11_CIPHER_ALGORITHM_LIST {
857     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
858     pub uNumOfEntries: u32,
859     pub uTotalNumOfEntries: u32,
860     pub AlgorithmIds: [DOT11_CIPHER_ALGORITHM; 1],
861 }
862 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
863 impl ::core::marker::Copy for DOT11_CIPHER_ALGORITHM_LIST {}
864 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
865 impl ::core::clone::Clone for DOT11_CIPHER_ALGORITHM_LIST {
clone(&self) -> Self866     fn clone(&self) -> Self {
867         *self
868     }
869 }
870 pub const DOT11_CIPHER_ALGORITHM_LIST_REVISION_1: u32 = 1u32;
871 #[repr(C)]
872 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
873 pub struct DOT11_CIPHER_DEFAULT_KEY_VALUE {
874     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
875     pub uKeyIndex: u32,
876     pub AlgorithmId: DOT11_CIPHER_ALGORITHM,
877     pub MacAddr: [u8; 6],
878     pub bDelete: super::super::Foundation::BOOLEAN,
879     pub bStatic: super::super::Foundation::BOOLEAN,
880     pub usKeyLength: u16,
881     pub ucKey: [u8; 1],
882 }
883 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
884 impl ::core::marker::Copy for DOT11_CIPHER_DEFAULT_KEY_VALUE {}
885 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
886 impl ::core::clone::Clone for DOT11_CIPHER_DEFAULT_KEY_VALUE {
clone(&self) -> Self887     fn clone(&self) -> Self {
888         *self
889     }
890 }
891 pub const DOT11_CIPHER_DEFAULT_KEY_VALUE_REVISION_1: u32 = 1u32;
892 #[repr(C)]
893 #[cfg(feature = "Win32_Foundation")]
894 pub struct DOT11_CIPHER_KEY_MAPPING_KEY_VALUE {
895     pub PeerMacAddr: [u8; 6],
896     pub AlgorithmId: DOT11_CIPHER_ALGORITHM,
897     pub Direction: DOT11_DIRECTION,
898     pub bDelete: super::super::Foundation::BOOLEAN,
899     pub bStatic: super::super::Foundation::BOOLEAN,
900     pub usKeyLength: u16,
901     pub ucKey: [u8; 1],
902 }
903 #[cfg(feature = "Win32_Foundation")]
904 impl ::core::marker::Copy for DOT11_CIPHER_KEY_MAPPING_KEY_VALUE {}
905 #[cfg(feature = "Win32_Foundation")]
906 impl ::core::clone::Clone for DOT11_CIPHER_KEY_MAPPING_KEY_VALUE {
clone(&self) -> Self907     fn clone(&self) -> Self {
908         *self
909     }
910 }
911 pub const DOT11_CIPHER_KEY_MAPPING_KEY_VALUE_BYTE_ARRAY_REVISION_1: u32 = 1u32;
912 pub const DOT11_CONF_ALGO_TKIP: u32 = 2u32;
913 pub const DOT11_CONF_ALGO_WEP_RC4: u32 = 1u32;
914 #[repr(C)]
915 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
916 pub struct DOT11_CONNECTION_COMPLETION_PARAMETERS {
917     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
918     pub uStatus: u32,
919 }
920 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
921 impl ::core::marker::Copy for DOT11_CONNECTION_COMPLETION_PARAMETERS {}
922 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
923 impl ::core::clone::Clone for DOT11_CONNECTION_COMPLETION_PARAMETERS {
clone(&self) -> Self924     fn clone(&self) -> Self {
925         *self
926     }
927 }
928 pub const DOT11_CONNECTION_COMPLETION_PARAMETERS_REVISION_1: u32 = 1u32;
929 #[repr(C)]
930 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
931 pub struct DOT11_CONNECTION_START_PARAMETERS {
932     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
933     pub BSSType: DOT11_BSS_TYPE,
934     pub AdhocBSSID: [u8; 6],
935     pub AdhocSSID: DOT11_SSID,
936 }
937 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
938 impl ::core::marker::Copy for DOT11_CONNECTION_START_PARAMETERS {}
939 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
940 impl ::core::clone::Clone for DOT11_CONNECTION_START_PARAMETERS {
clone(&self) -> Self941     fn clone(&self) -> Self {
942         *self
943     }
944 }
945 pub const DOT11_CONNECTION_START_PARAMETERS_REVISION_1: u32 = 1u32;
946 pub const DOT11_CONNECTION_STATUS_SUCCESS: u32 = 0u32;
947 #[repr(C)]
948 pub struct DOT11_COUNTERS_ENTRY {
949     pub uTransmittedFragmentCount: u32,
950     pub uMulticastTransmittedFrameCount: u32,
951     pub uFailedCount: u32,
952     pub uRetryCount: u32,
953     pub uMultipleRetryCount: u32,
954     pub uFrameDuplicateCount: u32,
955     pub uRTSSuccessCount: u32,
956     pub uRTSFailureCount: u32,
957     pub uACKFailureCount: u32,
958     pub uReceivedFragmentCount: u32,
959     pub uMulticastReceivedFrameCount: u32,
960     pub uFCSErrorCount: u32,
961     pub uTransmittedFrameCount: u32,
962 }
963 impl ::core::marker::Copy for DOT11_COUNTERS_ENTRY {}
964 impl ::core::clone::Clone for DOT11_COUNTERS_ENTRY {
clone(&self) -> Self965     fn clone(&self) -> Self {
966         *self
967     }
968 }
969 #[repr(C)]
970 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
971 pub struct DOT11_COUNTRY_OR_REGION_STRING_LIST {
972     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
973     pub uNumOfEntries: u32,
974     pub uTotalNumOfEntries: u32,
975     pub CountryOrRegionStrings: [u8; 3],
976 }
977 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
978 impl ::core::marker::Copy for DOT11_COUNTRY_OR_REGION_STRING_LIST {}
979 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
980 impl ::core::clone::Clone for DOT11_COUNTRY_OR_REGION_STRING_LIST {
clone(&self) -> Self981     fn clone(&self) -> Self {
982         *self
983     }
984 }
985 pub const DOT11_COUNTRY_OR_REGION_STRING_LIST_REVISION_1: u32 = 1u32;
986 #[repr(C)]
987 pub struct DOT11_CURRENT_OFFLOAD_CAPABILITY {
988     pub uReserved: u32,
989     pub uFlags: u32,
990 }
991 impl ::core::marker::Copy for DOT11_CURRENT_OFFLOAD_CAPABILITY {}
992 impl ::core::clone::Clone for DOT11_CURRENT_OFFLOAD_CAPABILITY {
clone(&self) -> Self993     fn clone(&self) -> Self {
994         *self
995     }
996 }
997 #[repr(C)]
998 pub struct DOT11_CURRENT_OPERATION_MODE {
999     pub uReserved: u32,
1000     pub uCurrentOpMode: u32,
1001 }
1002 impl ::core::marker::Copy for DOT11_CURRENT_OPERATION_MODE {}
1003 impl ::core::clone::Clone for DOT11_CURRENT_OPERATION_MODE {
clone(&self) -> Self1004     fn clone(&self) -> Self {
1005         *self
1006     }
1007 }
1008 #[repr(C)]
1009 #[cfg(feature = "Win32_Foundation")]
1010 pub struct DOT11_CURRENT_OPTIONAL_CAPABILITY {
1011     pub uReserved: u32,
1012     pub bDot11CFPollable: super::super::Foundation::BOOLEAN,
1013     pub bDot11PCF: super::super::Foundation::BOOLEAN,
1014     pub bDot11PCFMPDUTransferToPC: super::super::Foundation::BOOLEAN,
1015     pub bStrictlyOrderedServiceClass: super::super::Foundation::BOOLEAN,
1016 }
1017 #[cfg(feature = "Win32_Foundation")]
1018 impl ::core::marker::Copy for DOT11_CURRENT_OPTIONAL_CAPABILITY {}
1019 #[cfg(feature = "Win32_Foundation")]
1020 impl ::core::clone::Clone for DOT11_CURRENT_OPTIONAL_CAPABILITY {
clone(&self) -> Self1021     fn clone(&self) -> Self {
1022         *self
1023     }
1024 }
1025 #[repr(C)]
1026 pub struct DOT11_DATA_RATE_MAPPING_ENTRY {
1027     pub ucDataRateIndex: u8,
1028     pub ucDataRateFlag: u8,
1029     pub usDataRateValue: u16,
1030 }
1031 impl ::core::marker::Copy for DOT11_DATA_RATE_MAPPING_ENTRY {}
1032 impl ::core::clone::Clone for DOT11_DATA_RATE_MAPPING_ENTRY {
clone(&self) -> Self1033     fn clone(&self) -> Self {
1034         *self
1035     }
1036 }
1037 #[repr(C)]
1038 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1039 pub struct DOT11_DATA_RATE_MAPPING_TABLE {
1040     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1041     pub uDataRateMappingLength: u32,
1042     pub DataRateMappingEntries: [DOT11_DATA_RATE_MAPPING_ENTRY; 126],
1043 }
1044 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1045 impl ::core::marker::Copy for DOT11_DATA_RATE_MAPPING_TABLE {}
1046 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1047 impl ::core::clone::Clone for DOT11_DATA_RATE_MAPPING_TABLE {
clone(&self) -> Self1048     fn clone(&self) -> Self {
1049         *self
1050     }
1051 }
1052 pub const DOT11_DATA_RATE_MAPPING_TABLE_REVISION_1: u32 = 1u32;
1053 #[repr(C)]
1054 #[cfg(feature = "Win32_Foundation")]
1055 pub struct DOT11_DEFAULT_WEP_OFFLOAD {
1056     pub uReserved: u32,
1057     pub hOffloadContext: super::super::Foundation::HANDLE,
1058     pub hOffload: super::super::Foundation::HANDLE,
1059     pub dwIndex: u32,
1060     pub dot11OffloadType: DOT11_OFFLOAD_TYPE,
1061     pub dwAlgorithm: u32,
1062     pub uFlags: u32,
1063     pub dot11KeyDirection: DOT11_KEY_DIRECTION,
1064     pub ucMacAddress: [u8; 6],
1065     pub uNumOfRWsOnMe: u32,
1066     pub dot11IV48Counters: [DOT11_IV48_COUNTER; 16],
1067     pub usDot11RWBitMaps: [u16; 16],
1068     pub usKeyLength: u16,
1069     pub ucKey: [u8; 1],
1070 }
1071 #[cfg(feature = "Win32_Foundation")]
1072 impl ::core::marker::Copy for DOT11_DEFAULT_WEP_OFFLOAD {}
1073 #[cfg(feature = "Win32_Foundation")]
1074 impl ::core::clone::Clone for DOT11_DEFAULT_WEP_OFFLOAD {
clone(&self) -> Self1075     fn clone(&self) -> Self {
1076         *self
1077     }
1078 }
1079 #[repr(C)]
1080 #[cfg(feature = "Win32_Foundation")]
1081 pub struct DOT11_DEFAULT_WEP_UPLOAD {
1082     pub uReserved: u32,
1083     pub dot11OffloadType: DOT11_OFFLOAD_TYPE,
1084     pub hOffload: super::super::Foundation::HANDLE,
1085     pub uNumOfRWsUsed: u32,
1086     pub dot11IV48Counters: [DOT11_IV48_COUNTER; 16],
1087     pub usDot11RWBitMaps: [u16; 16],
1088 }
1089 #[cfg(feature = "Win32_Foundation")]
1090 impl ::core::marker::Copy for DOT11_DEFAULT_WEP_UPLOAD {}
1091 #[cfg(feature = "Win32_Foundation")]
1092 impl ::core::clone::Clone for DOT11_DEFAULT_WEP_UPLOAD {
clone(&self) -> Self1093     fn clone(&self) -> Self {
1094         *self
1095     }
1096 }
1097 pub const DOT11_DEVICE_ENTRY_BYTE_ARRAY_REVISION_1: u32 = 1u32;
1098 pub type DOT11_DIRECTION = i32;
1099 pub const DOT11_DIR_INBOUND: DOT11_DIRECTION = 1i32;
1100 pub const DOT11_DIR_OUTBOUND: DOT11_DIRECTION = 2i32;
1101 pub const DOT11_DIR_BOTH: DOT11_DIRECTION = 3i32;
1102 #[repr(C)]
1103 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1104 pub struct DOT11_DISASSOCIATE_PEER_REQUEST {
1105     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1106     pub PeerMacAddr: [u8; 6],
1107     pub usReason: u16,
1108 }
1109 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1110 impl ::core::marker::Copy for DOT11_DISASSOCIATE_PEER_REQUEST {}
1111 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1112 impl ::core::clone::Clone for DOT11_DISASSOCIATE_PEER_REQUEST {
clone(&self) -> Self1113     fn clone(&self) -> Self {
1114         *self
1115     }
1116 }
1117 pub const DOT11_DISASSOCIATE_PEER_REQUEST_REVISION_1: u32 = 1u32;
1118 #[repr(C)]
1119 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1120 pub struct DOT11_DISASSOCIATION_PARAMETERS {
1121     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1122     pub MacAddr: [u8; 6],
1123     pub uReason: u32,
1124     pub uIHVDataOffset: u32,
1125     pub uIHVDataSize: u32,
1126 }
1127 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1128 impl ::core::marker::Copy for DOT11_DISASSOCIATION_PARAMETERS {}
1129 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1130 impl ::core::clone::Clone for DOT11_DISASSOCIATION_PARAMETERS {
clone(&self) -> Self1131     fn clone(&self) -> Self {
1132         *self
1133     }
1134 }
1135 pub const DOT11_DISASSOCIATION_PARAMETERS_REVISION_1: u32 = 1u32;
1136 #[repr(C)]
1137 #[cfg(feature = "Win32_Foundation")]
1138 pub struct DOT11_DIVERSITY_SELECTION_RX {
1139     pub uAntennaListIndex: u32,
1140     pub bDiversitySelectionRX: super::super::Foundation::BOOLEAN,
1141 }
1142 #[cfg(feature = "Win32_Foundation")]
1143 impl ::core::marker::Copy for DOT11_DIVERSITY_SELECTION_RX {}
1144 #[cfg(feature = "Win32_Foundation")]
1145 impl ::core::clone::Clone for DOT11_DIVERSITY_SELECTION_RX {
clone(&self) -> Self1146     fn clone(&self) -> Self {
1147         *self
1148     }
1149 }
1150 #[repr(C)]
1151 #[cfg(feature = "Win32_Foundation")]
1152 pub struct DOT11_DIVERSITY_SELECTION_RX_LIST {
1153     pub uNumOfEntries: u32,
1154     pub uTotalNumOfEntries: u32,
1155     pub dot11DiversitySelectionRx: [DOT11_DIVERSITY_SELECTION_RX; 1],
1156 }
1157 #[cfg(feature = "Win32_Foundation")]
1158 impl ::core::marker::Copy for DOT11_DIVERSITY_SELECTION_RX_LIST {}
1159 #[cfg(feature = "Win32_Foundation")]
1160 impl ::core::clone::Clone for DOT11_DIVERSITY_SELECTION_RX_LIST {
clone(&self) -> Self1161     fn clone(&self) -> Self {
1162         *self
1163     }
1164 }
1165 pub type DOT11_DIVERSITY_SUPPORT = i32;
1166 pub const dot11_diversity_support_unknown: DOT11_DIVERSITY_SUPPORT = 0i32;
1167 pub const dot11_diversity_support_fixedlist: DOT11_DIVERSITY_SUPPORT = 1i32;
1168 pub const dot11_diversity_support_notsupported: DOT11_DIVERSITY_SUPPORT = 2i32;
1169 pub const dot11_diversity_support_dynamic: DOT11_DIVERSITY_SUPPORT = 3i32;
1170 pub type DOT11_DS_INFO = i32;
1171 pub const DOT11_DS_CHANGED: DOT11_DS_INFO = 0i32;
1172 pub const DOT11_DS_UNCHANGED: DOT11_DS_INFO = 1i32;
1173 pub const DOT11_DS_UNKNOWN: DOT11_DS_INFO = 2i32;
1174 pub const DOT11_ENCAP_802_1H: u32 = 2u32;
1175 #[repr(C)]
1176 pub struct DOT11_ENCAP_ENTRY {
1177     pub usEtherType: u16,
1178     pub usEncapType: u16,
1179 }
1180 impl ::core::marker::Copy for DOT11_ENCAP_ENTRY {}
1181 impl ::core::clone::Clone for DOT11_ENCAP_ENTRY {
clone(&self) -> Self1182     fn clone(&self) -> Self {
1183         *self
1184     }
1185 }
1186 pub const DOT11_ENCAP_RFC_1042: u32 = 1u32;
1187 #[repr(C)]
1188 #[cfg(feature = "Win32_Foundation")]
1189 pub struct DOT11_ERP_PHY_ATTRIBUTES {
1190     pub HRDSSSAttributes: DOT11_HRDSSS_PHY_ATTRIBUTES,
1191     pub bERPPBCCOptionImplemented: super::super::Foundation::BOOLEAN,
1192     pub bDSSSOFDMOptionImplemented: super::super::Foundation::BOOLEAN,
1193     pub bShortSlotTimeOptionImplemented: super::super::Foundation::BOOLEAN,
1194 }
1195 #[cfg(feature = "Win32_Foundation")]
1196 impl ::core::marker::Copy for DOT11_ERP_PHY_ATTRIBUTES {}
1197 #[cfg(feature = "Win32_Foundation")]
1198 impl ::core::clone::Clone for DOT11_ERP_PHY_ATTRIBUTES {
clone(&self) -> Self1199     fn clone(&self) -> Self {
1200         *self
1201     }
1202 }
1203 pub const DOT11_EXEMPT_ALWAYS: u32 = 1u32;
1204 pub const DOT11_EXEMPT_BOTH: u32 = 3u32;
1205 pub const DOT11_EXEMPT_MULTICAST: u32 = 2u32;
1206 pub const DOT11_EXEMPT_NO_EXEMPTION: u32 = 0u32;
1207 pub const DOT11_EXEMPT_ON_KEY_MAPPING_KEY_UNAVAILABLE: u32 = 2u32;
1208 pub const DOT11_EXEMPT_UNICAST: u32 = 1u32;
1209 #[repr(C)]
1210 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1211 pub struct DOT11_EXTAP_ATTRIBUTES {
1212     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1213     pub uScanSSIDListSize: u32,
1214     pub uDesiredSSIDListSize: u32,
1215     pub uPrivacyExemptionListSize: u32,
1216     pub uAssociationTableSize: u32,
1217     pub uDefaultKeyTableSize: u32,
1218     pub uWEPKeyValueMaxLength: u32,
1219     pub bStrictlyOrderedServiceClassImplemented: super::super::Foundation::BOOLEAN,
1220     pub uNumSupportedCountryOrRegionStrings: u32,
1221     pub pSupportedCountryOrRegionStrings: *mut u8,
1222     pub uInfraNumSupportedUcastAlgoPairs: u32,
1223     pub pInfraSupportedUcastAlgoPairs: *mut DOT11_AUTH_CIPHER_PAIR,
1224     pub uInfraNumSupportedMcastAlgoPairs: u32,
1225     pub pInfraSupportedMcastAlgoPairs: *mut DOT11_AUTH_CIPHER_PAIR,
1226 }
1227 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1228 impl ::core::marker::Copy for DOT11_EXTAP_ATTRIBUTES {}
1229 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1230 impl ::core::clone::Clone for DOT11_EXTAP_ATTRIBUTES {
clone(&self) -> Self1231     fn clone(&self) -> Self {
1232         *self
1233     }
1234 }
1235 pub const DOT11_EXTAP_ATTRIBUTES_REVISION_1: u32 = 1u32;
1236 pub const DOT11_EXTAP_RECV_CONTEXT_REVISION_1: u32 = 1u32;
1237 pub const DOT11_EXTAP_SEND_CONTEXT_REVISION_1: u32 = 1u32;
1238 #[repr(C)]
1239 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1240 pub struct DOT11_EXTSTA_ATTRIBUTES {
1241     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1242     pub uScanSSIDListSize: u32,
1243     pub uDesiredBSSIDListSize: u32,
1244     pub uDesiredSSIDListSize: u32,
1245     pub uExcludedMacAddressListSize: u32,
1246     pub uPrivacyExemptionListSize: u32,
1247     pub uKeyMappingTableSize: u32,
1248     pub uDefaultKeyTableSize: u32,
1249     pub uWEPKeyValueMaxLength: u32,
1250     pub uPMKIDCacheSize: u32,
1251     pub uMaxNumPerSTADefaultKeyTables: u32,
1252     pub bStrictlyOrderedServiceClassImplemented: super::super::Foundation::BOOLEAN,
1253     pub ucSupportedQoSProtocolFlags: u8,
1254     pub bSafeModeImplemented: super::super::Foundation::BOOLEAN,
1255     pub uNumSupportedCountryOrRegionStrings: u32,
1256     pub pSupportedCountryOrRegionStrings: *mut u8,
1257     pub uInfraNumSupportedUcastAlgoPairs: u32,
1258     pub pInfraSupportedUcastAlgoPairs: *mut DOT11_AUTH_CIPHER_PAIR,
1259     pub uInfraNumSupportedMcastAlgoPairs: u32,
1260     pub pInfraSupportedMcastAlgoPairs: *mut DOT11_AUTH_CIPHER_PAIR,
1261     pub uAdhocNumSupportedUcastAlgoPairs: u32,
1262     pub pAdhocSupportedUcastAlgoPairs: *mut DOT11_AUTH_CIPHER_PAIR,
1263     pub uAdhocNumSupportedMcastAlgoPairs: u32,
1264     pub pAdhocSupportedMcastAlgoPairs: *mut DOT11_AUTH_CIPHER_PAIR,
1265     pub bAutoPowerSaveMode: super::super::Foundation::BOOLEAN,
1266     pub uMaxNetworkOffloadListSize: u32,
1267     pub bMFPCapable: super::super::Foundation::BOOLEAN,
1268     pub uInfraNumSupportedMcastMgmtAlgoPairs: u32,
1269     pub pInfraSupportedMcastMgmtAlgoPairs: *mut DOT11_AUTH_CIPHER_PAIR,
1270     pub bNeighborReportSupported: super::super::Foundation::BOOLEAN,
1271     pub bAPChannelReportSupported: super::super::Foundation::BOOLEAN,
1272     pub bActionFramesSupported: super::super::Foundation::BOOLEAN,
1273     pub bANQPQueryOffloadSupported: super::super::Foundation::BOOLEAN,
1274     pub bHESSIDConnectionSupported: super::super::Foundation::BOOLEAN,
1275 }
1276 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1277 impl ::core::marker::Copy for DOT11_EXTSTA_ATTRIBUTES {}
1278 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1279 impl ::core::clone::Clone for DOT11_EXTSTA_ATTRIBUTES {
clone(&self) -> Self1280     fn clone(&self) -> Self {
1281         *self
1282     }
1283 }
1284 pub const DOT11_EXTSTA_ATTRIBUTES_REVISION_1: u32 = 1u32;
1285 pub const DOT11_EXTSTA_ATTRIBUTES_REVISION_2: u32 = 2u32;
1286 pub const DOT11_EXTSTA_ATTRIBUTES_REVISION_3: u32 = 3u32;
1287 pub const DOT11_EXTSTA_ATTRIBUTES_REVISION_4: u32 = 4u32;
1288 pub const DOT11_EXTSTA_ATTRIBUTES_SAFEMODE_CERTIFIED: u32 = 2u32;
1289 pub const DOT11_EXTSTA_ATTRIBUTES_SAFEMODE_OID_SUPPORTED: u32 = 1u32;
1290 pub const DOT11_EXTSTA_ATTRIBUTES_SAFEMODE_RESERVED: u32 = 12u32;
1291 #[repr(C)]
1292 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1293 pub struct DOT11_EXTSTA_CAPABILITY {
1294     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1295     pub uScanSSIDListSize: u32,
1296     pub uDesiredBSSIDListSize: u32,
1297     pub uDesiredSSIDListSize: u32,
1298     pub uExcludedMacAddressListSize: u32,
1299     pub uPrivacyExemptionListSize: u32,
1300     pub uKeyMappingTableSize: u32,
1301     pub uDefaultKeyTableSize: u32,
1302     pub uWEPKeyValueMaxLength: u32,
1303     pub uPMKIDCacheSize: u32,
1304     pub uMaxNumPerSTADefaultKeyTables: u32,
1305 }
1306 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1307 impl ::core::marker::Copy for DOT11_EXTSTA_CAPABILITY {}
1308 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1309 impl ::core::clone::Clone for DOT11_EXTSTA_CAPABILITY {
clone(&self) -> Self1310     fn clone(&self) -> Self {
1311         *self
1312     }
1313 }
1314 pub const DOT11_EXTSTA_CAPABILITY_REVISION_1: u32 = 1u32;
1315 #[repr(C)]
1316 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1317 pub struct DOT11_EXTSTA_RECV_CONTEXT {
1318     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1319     pub uReceiveFlags: u32,
1320     pub uPhyId: u32,
1321     pub uChCenterFrequency: u32,
1322     pub usNumberOfMPDUsReceived: u16,
1323     pub lRSSI: i32,
1324     pub ucDataRate: u8,
1325     pub uSizeMediaSpecificInfo: u32,
1326     pub pvMediaSpecificInfo: *mut ::core::ffi::c_void,
1327     pub ullTimestamp: u64,
1328 }
1329 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1330 impl ::core::marker::Copy for DOT11_EXTSTA_RECV_CONTEXT {}
1331 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1332 impl ::core::clone::Clone for DOT11_EXTSTA_RECV_CONTEXT {
clone(&self) -> Self1333     fn clone(&self) -> Self {
1334         *self
1335     }
1336 }
1337 pub const DOT11_EXTSTA_RECV_CONTEXT_REVISION_1: u32 = 1u32;
1338 #[repr(C)]
1339 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1340 pub struct DOT11_EXTSTA_SEND_CONTEXT {
1341     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1342     pub usExemptionActionType: u16,
1343     pub uPhyId: u32,
1344     pub uDelayedSleepValue: u32,
1345     pub pvMediaSpecificInfo: *mut ::core::ffi::c_void,
1346     pub uSendFlags: u32,
1347 }
1348 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1349 impl ::core::marker::Copy for DOT11_EXTSTA_SEND_CONTEXT {}
1350 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1351 impl ::core::clone::Clone for DOT11_EXTSTA_SEND_CONTEXT {
clone(&self) -> Self1352     fn clone(&self) -> Self {
1353         *self
1354     }
1355 }
1356 pub const DOT11_EXTSTA_SEND_CONTEXT_REVISION_1: u32 = 1u32;
1357 pub const DOT11_FLAGS_80211B_CHANNEL_AGILITY: u32 = 4u32;
1358 pub const DOT11_FLAGS_80211B_PBCC: u32 = 2u32;
1359 pub const DOT11_FLAGS_80211B_SHORT_PREAMBLE: u32 = 1u32;
1360 pub const DOT11_FLAGS_80211G_BARKER_PREAMBLE_MODE: u32 = 128u32;
1361 pub const DOT11_FLAGS_80211G_DSSS_OFDM: u32 = 16u32;
1362 pub const DOT11_FLAGS_80211G_NON_ERP_PRESENT: u32 = 64u32;
1363 pub const DOT11_FLAGS_80211G_USE_PROTECTION: u32 = 32u32;
1364 pub const DOT11_FLAGS_PS_ON: u32 = 8u32;
1365 #[repr(C)]
1366 pub struct DOT11_FRAGMENT_DESCRIPTOR {
1367     pub uOffset: u32,
1368     pub uLength: u32,
1369 }
1370 impl ::core::marker::Copy for DOT11_FRAGMENT_DESCRIPTOR {}
1371 impl ::core::clone::Clone for DOT11_FRAGMENT_DESCRIPTOR {
clone(&self) -> Self1372     fn clone(&self) -> Self {
1373         *self
1374     }
1375 }
1376 pub const DOT11_FREQUENCY_BANDS_LOWER: u32 = 1u32;
1377 pub const DOT11_FREQUENCY_BANDS_MIDDLE: u32 = 2u32;
1378 pub const DOT11_FREQUENCY_BANDS_UPPER: u32 = 4u32;
1379 #[repr(C)]
1380 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1381 pub struct DOT11_GO_NEGOTIATION_CONFIRMATION_SEND_COMPLETE_PARAMETERS {
1382     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1383     pub PeerDeviceAddress: [u8; 6],
1384     pub DialogToken: u8,
1385     pub Status: i32,
1386     pub uIEsOffset: u32,
1387     pub uIEsLength: u32,
1388 }
1389 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1390 impl ::core::marker::Copy for DOT11_GO_NEGOTIATION_CONFIRMATION_SEND_COMPLETE_PARAMETERS {}
1391 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1392 impl ::core::clone::Clone for DOT11_GO_NEGOTIATION_CONFIRMATION_SEND_COMPLETE_PARAMETERS {
clone(&self) -> Self1393     fn clone(&self) -> Self {
1394         *self
1395     }
1396 }
1397 pub const DOT11_GO_NEGOTIATION_CONFIRMATION_SEND_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
1398 #[repr(C)]
1399 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1400 pub struct DOT11_GO_NEGOTIATION_REQUEST_SEND_COMPLETE_PARAMETERS {
1401     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1402     pub PeerDeviceAddress: [u8; 6],
1403     pub DialogToken: u8,
1404     pub Status: i32,
1405     pub uIEsOffset: u32,
1406     pub uIEsLength: u32,
1407 }
1408 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1409 impl ::core::marker::Copy for DOT11_GO_NEGOTIATION_REQUEST_SEND_COMPLETE_PARAMETERS {}
1410 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1411 impl ::core::clone::Clone for DOT11_GO_NEGOTIATION_REQUEST_SEND_COMPLETE_PARAMETERS {
clone(&self) -> Self1412     fn clone(&self) -> Self {
1413         *self
1414     }
1415 }
1416 pub const DOT11_GO_NEGOTIATION_REQUEST_SEND_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
1417 #[repr(C)]
1418 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1419 pub struct DOT11_GO_NEGOTIATION_RESPONSE_SEND_COMPLETE_PARAMETERS {
1420     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1421     pub PeerDeviceAddress: [u8; 6],
1422     pub DialogToken: u8,
1423     pub Status: i32,
1424     pub uIEsOffset: u32,
1425     pub uIEsLength: u32,
1426 }
1427 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1428 impl ::core::marker::Copy for DOT11_GO_NEGOTIATION_RESPONSE_SEND_COMPLETE_PARAMETERS {}
1429 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1430 impl ::core::clone::Clone for DOT11_GO_NEGOTIATION_RESPONSE_SEND_COMPLETE_PARAMETERS {
clone(&self) -> Self1431     fn clone(&self) -> Self {
1432         *self
1433     }
1434 }
1435 pub const DOT11_GO_NEGOTIATION_RESPONSE_SEND_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
1436 pub const DOT11_HESSID_LENGTH: u32 = 6u32;
1437 #[repr(C)]
1438 pub struct DOT11_HOPPING_PATTERN_ENTRY {
1439     pub uHoppingPatternIndex: u32,
1440     pub uRandomTableFieldNumber: u32,
1441 }
1442 impl ::core::marker::Copy for DOT11_HOPPING_PATTERN_ENTRY {}
1443 impl ::core::clone::Clone for DOT11_HOPPING_PATTERN_ENTRY {
clone(&self) -> Self1444     fn clone(&self) -> Self {
1445         *self
1446     }
1447 }
1448 #[repr(C)]
1449 pub struct DOT11_HOPPING_PATTERN_ENTRY_LIST {
1450     pub uNumOfEntries: u32,
1451     pub uTotalNumOfEntries: u32,
1452     pub dot11HoppingPatternEntry: [DOT11_HOPPING_PATTERN_ENTRY; 1],
1453 }
1454 impl ::core::marker::Copy for DOT11_HOPPING_PATTERN_ENTRY_LIST {}
1455 impl ::core::clone::Clone for DOT11_HOPPING_PATTERN_ENTRY_LIST {
clone(&self) -> Self1456     fn clone(&self) -> Self {
1457         *self
1458     }
1459 }
1460 pub type DOT11_HOP_ALGO_ADOPTED = i32;
1461 pub const dot11_hop_algo_current: DOT11_HOP_ALGO_ADOPTED = 0i32;
1462 pub const dot11_hop_algo_hop_index: DOT11_HOP_ALGO_ADOPTED = 1i32;
1463 pub const dot11_hop_algo_hcc: DOT11_HOP_ALGO_ADOPTED = 2i32;
1464 #[repr(C)]
1465 #[cfg(feature = "Win32_Foundation")]
1466 pub struct DOT11_HRDSSS_PHY_ATTRIBUTES {
1467     pub bShortPreambleOptionImplemented: super::super::Foundation::BOOLEAN,
1468     pub bPBCCOptionImplemented: super::super::Foundation::BOOLEAN,
1469     pub bChannelAgilityPresent: super::super::Foundation::BOOLEAN,
1470     pub uHRCCAModeSupported: u32,
1471 }
1472 #[cfg(feature = "Win32_Foundation")]
1473 impl ::core::marker::Copy for DOT11_HRDSSS_PHY_ATTRIBUTES {}
1474 #[cfg(feature = "Win32_Foundation")]
1475 impl ::core::clone::Clone for DOT11_HRDSSS_PHY_ATTRIBUTES {
clone(&self) -> Self1476     fn clone(&self) -> Self {
1477         *self
1478     }
1479 }
1480 pub const DOT11_HR_CCA_MODE_CS_AND_ED: u32 = 4u32;
1481 pub const DOT11_HR_CCA_MODE_CS_ONLY: u32 = 2u32;
1482 pub const DOT11_HR_CCA_MODE_CS_WITH_TIMER: u32 = 8u32;
1483 pub const DOT11_HR_CCA_MODE_ED_ONLY: u32 = 1u32;
1484 pub const DOT11_HR_CCA_MODE_HRCS_AND_ED: u32 = 16u32;
1485 pub const DOT11_HW_DEFRAGMENTATION_SUPPORTED: u32 = 8u32;
1486 pub const DOT11_HW_FRAGMENTATION_SUPPORTED: u32 = 4u32;
1487 pub const DOT11_HW_MSDU_AUTH_SUPPORTED_RX: u32 = 32u32;
1488 pub const DOT11_HW_MSDU_AUTH_SUPPORTED_TX: u32 = 16u32;
1489 pub const DOT11_HW_WEP_SUPPORTED_RX: u32 = 2u32;
1490 pub const DOT11_HW_WEP_SUPPORTED_TX: u32 = 1u32;
1491 #[repr(C)]
1492 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1493 pub struct DOT11_IBSS_PARAMS {
1494     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1495     pub bJoinOnly: super::super::Foundation::BOOLEAN,
1496     pub uIEsOffset: u32,
1497     pub uIEsLength: u32,
1498 }
1499 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1500 impl ::core::marker::Copy for DOT11_IBSS_PARAMS {}
1501 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1502 impl ::core::clone::Clone for DOT11_IBSS_PARAMS {
clone(&self) -> Self1503     fn clone(&self) -> Self {
1504         *self
1505     }
1506 }
1507 pub const DOT11_IBSS_PARAMS_REVISION_1: u32 = 1u32;
1508 #[repr(C)]
1509 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1510 pub struct DOT11_INCOMING_ASSOC_COMPLETION_PARAMETERS {
1511     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1512     pub PeerMacAddr: [u8; 6],
1513     pub uStatus: u32,
1514     pub ucErrorSource: u8,
1515     pub bReAssocReq: super::super::Foundation::BOOLEAN,
1516     pub bReAssocResp: super::super::Foundation::BOOLEAN,
1517     pub uAssocReqOffset: u32,
1518     pub uAssocReqSize: u32,
1519     pub uAssocRespOffset: u32,
1520     pub uAssocRespSize: u32,
1521     pub AuthAlgo: DOT11_AUTH_ALGORITHM,
1522     pub UnicastCipher: DOT11_CIPHER_ALGORITHM,
1523     pub MulticastCipher: DOT11_CIPHER_ALGORITHM,
1524     pub uActivePhyListOffset: u32,
1525     pub uActivePhyListSize: u32,
1526     pub uBeaconOffset: u32,
1527     pub uBeaconSize: u32,
1528 }
1529 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1530 impl ::core::marker::Copy for DOT11_INCOMING_ASSOC_COMPLETION_PARAMETERS {}
1531 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1532 impl ::core::clone::Clone for DOT11_INCOMING_ASSOC_COMPLETION_PARAMETERS {
clone(&self) -> Self1533     fn clone(&self) -> Self {
1534         *self
1535     }
1536 }
1537 pub const DOT11_INCOMING_ASSOC_COMPLETION_PARAMETERS_REVISION_1: u32 = 1u32;
1538 #[repr(C)]
1539 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1540 pub struct DOT11_INCOMING_ASSOC_DECISION {
1541     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1542     pub PeerMacAddr: [u8; 6],
1543     pub bAccept: super::super::Foundation::BOOLEAN,
1544     pub usReasonCode: u16,
1545     pub uAssocResponseIEsOffset: u32,
1546     pub uAssocResponseIEsLength: u32,
1547 }
1548 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1549 impl ::core::marker::Copy for DOT11_INCOMING_ASSOC_DECISION {}
1550 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1551 impl ::core::clone::Clone for DOT11_INCOMING_ASSOC_DECISION {
clone(&self) -> Self1552     fn clone(&self) -> Self {
1553         *self
1554     }
1555 }
1556 pub const DOT11_INCOMING_ASSOC_DECISION_REVISION_1: u32 = 1u32;
1557 pub const DOT11_INCOMING_ASSOC_DECISION_REVISION_2: u32 = 2u32;
1558 #[repr(C)]
1559 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1560 pub struct DOT11_INCOMING_ASSOC_DECISION_V2 {
1561     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1562     pub PeerMacAddr: [u8; 6],
1563     pub bAccept: super::super::Foundation::BOOLEAN,
1564     pub usReasonCode: u16,
1565     pub uAssocResponseIEsOffset: u32,
1566     pub uAssocResponseIEsLength: u32,
1567     pub WFDStatus: u8,
1568 }
1569 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1570 impl ::core::marker::Copy for DOT11_INCOMING_ASSOC_DECISION_V2 {}
1571 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1572 impl ::core::clone::Clone for DOT11_INCOMING_ASSOC_DECISION_V2 {
clone(&self) -> Self1573     fn clone(&self) -> Self {
1574         *self
1575     }
1576 }
1577 #[repr(C)]
1578 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1579 pub struct DOT11_INCOMING_ASSOC_REQUEST_RECEIVED_PARAMETERS {
1580     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1581     pub PeerMacAddr: [u8; 6],
1582     pub bReAssocReq: super::super::Foundation::BOOLEAN,
1583     pub uAssocReqOffset: u32,
1584     pub uAssocReqSize: u32,
1585 }
1586 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1587 impl ::core::marker::Copy for DOT11_INCOMING_ASSOC_REQUEST_RECEIVED_PARAMETERS {}
1588 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
1589 impl ::core::clone::Clone for DOT11_INCOMING_ASSOC_REQUEST_RECEIVED_PARAMETERS {
clone(&self) -> Self1590     fn clone(&self) -> Self {
1591         *self
1592     }
1593 }
1594 pub const DOT11_INCOMING_ASSOC_REQUEST_RECEIVED_PARAMETERS_REVISION_1: u32 = 1u32;
1595 #[repr(C)]
1596 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1597 pub struct DOT11_INCOMING_ASSOC_STARTED_PARAMETERS {
1598     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1599     pub PeerMacAddr: [u8; 6],
1600 }
1601 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1602 impl ::core::marker::Copy for DOT11_INCOMING_ASSOC_STARTED_PARAMETERS {}
1603 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1604 impl ::core::clone::Clone for DOT11_INCOMING_ASSOC_STARTED_PARAMETERS {
clone(&self) -> Self1605     fn clone(&self) -> Self {
1606         *self
1607     }
1608 }
1609 pub const DOT11_INCOMING_ASSOC_STARTED_PARAMETERS_REVISION_1: u32 = 1u32;
1610 pub const DOT11_INVALID_CHANNEL_NUMBER: u32 = 0u32;
1611 #[repr(C)]
1612 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1613 pub struct DOT11_INVITATION_REQUEST_SEND_COMPLETE_PARAMETERS {
1614     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1615     pub PeerDeviceAddress: [u8; 6],
1616     pub ReceiverAddress: [u8; 6],
1617     pub DialogToken: u8,
1618     pub Status: i32,
1619     pub uIEsOffset: u32,
1620     pub uIEsLength: u32,
1621 }
1622 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1623 impl ::core::marker::Copy for DOT11_INVITATION_REQUEST_SEND_COMPLETE_PARAMETERS {}
1624 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1625 impl ::core::clone::Clone for DOT11_INVITATION_REQUEST_SEND_COMPLETE_PARAMETERS {
clone(&self) -> Self1626     fn clone(&self) -> Self {
1627         *self
1628     }
1629 }
1630 pub const DOT11_INVITATION_REQUEST_SEND_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
1631 #[repr(C)]
1632 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1633 pub struct DOT11_INVITATION_RESPONSE_SEND_COMPLETE_PARAMETERS {
1634     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1635     pub ReceiverDeviceAddress: [u8; 6],
1636     pub DialogToken: u8,
1637     pub Status: i32,
1638     pub uIEsOffset: u32,
1639     pub uIEsLength: u32,
1640 }
1641 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1642 impl ::core::marker::Copy for DOT11_INVITATION_RESPONSE_SEND_COMPLETE_PARAMETERS {}
1643 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1644 impl ::core::clone::Clone for DOT11_INVITATION_RESPONSE_SEND_COMPLETE_PARAMETERS {
clone(&self) -> Self1645     fn clone(&self) -> Self {
1646         *self
1647     }
1648 }
1649 pub const DOT11_INVITATION_RESPONSE_SEND_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
1650 #[repr(C)]
1651 pub struct DOT11_IV48_COUNTER {
1652     pub uIV32Counter: u32,
1653     pub usIV16Counter: u16,
1654 }
1655 impl ::core::marker::Copy for DOT11_IV48_COUNTER {}
1656 impl ::core::clone::Clone for DOT11_IV48_COUNTER {
clone(&self) -> Self1657     fn clone(&self) -> Self {
1658         *self
1659     }
1660 }
1661 #[repr(C)]
1662 pub struct DOT11_JOIN_REQUEST {
1663     pub uJoinFailureTimeout: u32,
1664     pub OperationalRateSet: DOT11_RATE_SET,
1665     pub uChCenterFrequency: u32,
1666     pub dot11BSSDescription: DOT11_BSS_DESCRIPTION,
1667 }
1668 impl ::core::marker::Copy for DOT11_JOIN_REQUEST {}
1669 impl ::core::clone::Clone for DOT11_JOIN_REQUEST {
clone(&self) -> Self1670     fn clone(&self) -> Self {
1671         *self
1672     }
1673 }
1674 #[repr(C)]
1675 pub struct DOT11_KEY_ALGO_BIP {
1676     pub ucIPN: [u8; 6],
1677     pub ulBIPKeyLength: u32,
1678     pub ucBIPKey: [u8; 1],
1679 }
1680 impl ::core::marker::Copy for DOT11_KEY_ALGO_BIP {}
1681 impl ::core::clone::Clone for DOT11_KEY_ALGO_BIP {
clone(&self) -> Self1682     fn clone(&self) -> Self {
1683         *self
1684     }
1685 }
1686 #[repr(C)]
1687 pub struct DOT11_KEY_ALGO_BIP_GMAC_256 {
1688     pub ucIPN: [u8; 6],
1689     pub ulBIPGmac256KeyLength: u32,
1690     pub ucBIPGmac256Key: [u8; 1],
1691 }
1692 impl ::core::marker::Copy for DOT11_KEY_ALGO_BIP_GMAC_256 {}
1693 impl ::core::clone::Clone for DOT11_KEY_ALGO_BIP_GMAC_256 {
clone(&self) -> Self1694     fn clone(&self) -> Self {
1695         *self
1696     }
1697 }
1698 #[repr(C)]
1699 pub struct DOT11_KEY_ALGO_CCMP {
1700     pub ucIV48Counter: [u8; 6],
1701     pub ulCCMPKeyLength: u32,
1702     pub ucCCMPKey: [u8; 1],
1703 }
1704 impl ::core::marker::Copy for DOT11_KEY_ALGO_CCMP {}
1705 impl ::core::clone::Clone for DOT11_KEY_ALGO_CCMP {
clone(&self) -> Self1706     fn clone(&self) -> Self {
1707         *self
1708     }
1709 }
1710 #[repr(C)]
1711 pub struct DOT11_KEY_ALGO_GCMP {
1712     pub ucIV48Counter: [u8; 6],
1713     pub ulGCMPKeyLength: u32,
1714     pub ucGCMPKey: [u8; 1],
1715 }
1716 impl ::core::marker::Copy for DOT11_KEY_ALGO_GCMP {}
1717 impl ::core::clone::Clone for DOT11_KEY_ALGO_GCMP {
clone(&self) -> Self1718     fn clone(&self) -> Self {
1719         *self
1720     }
1721 }
1722 #[repr(C)]
1723 pub struct DOT11_KEY_ALGO_GCMP_256 {
1724     pub ucIV48Counter: [u8; 6],
1725     pub ulGCMP256KeyLength: u32,
1726     pub ucGCMP256Key: [u8; 1],
1727 }
1728 impl ::core::marker::Copy for DOT11_KEY_ALGO_GCMP_256 {}
1729 impl ::core::clone::Clone for DOT11_KEY_ALGO_GCMP_256 {
clone(&self) -> Self1730     fn clone(&self) -> Self {
1731         *self
1732     }
1733 }
1734 #[repr(C)]
1735 pub struct DOT11_KEY_ALGO_TKIP_MIC {
1736     pub ucIV48Counter: [u8; 6],
1737     pub ulTKIPKeyLength: u32,
1738     pub ulMICKeyLength: u32,
1739     pub ucTKIPMICKeys: [u8; 1],
1740 }
1741 impl ::core::marker::Copy for DOT11_KEY_ALGO_TKIP_MIC {}
1742 impl ::core::clone::Clone for DOT11_KEY_ALGO_TKIP_MIC {
clone(&self) -> Self1743     fn clone(&self) -> Self {
1744         *self
1745     }
1746 }
1747 pub type DOT11_KEY_DIRECTION = i32;
1748 pub const dot11_key_direction_both: DOT11_KEY_DIRECTION = 1i32;
1749 pub const dot11_key_direction_inbound: DOT11_KEY_DIRECTION = 2i32;
1750 pub const dot11_key_direction_outbound: DOT11_KEY_DIRECTION = 3i32;
1751 #[repr(C)]
1752 pub struct DOT11_LINK_QUALITY_ENTRY {
1753     pub PeerMacAddr: [u8; 6],
1754     pub ucLinkQuality: u8,
1755 }
1756 impl ::core::marker::Copy for DOT11_LINK_QUALITY_ENTRY {}
1757 impl ::core::clone::Clone for DOT11_LINK_QUALITY_ENTRY {
clone(&self) -> Self1758     fn clone(&self) -> Self {
1759         *self
1760     }
1761 }
1762 #[repr(C)]
1763 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1764 pub struct DOT11_LINK_QUALITY_PARAMETERS {
1765     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1766     pub uLinkQualityListSize: u32,
1767     pub uLinkQualityListOffset: u32,
1768 }
1769 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1770 impl ::core::marker::Copy for DOT11_LINK_QUALITY_PARAMETERS {}
1771 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1772 impl ::core::clone::Clone for DOT11_LINK_QUALITY_PARAMETERS {
clone(&self) -> Self1773     fn clone(&self) -> Self {
1774         *self
1775     }
1776 }
1777 pub const DOT11_LINK_QUALITY_PARAMETERS_REVISION_1: u32 = 1u32;
1778 #[repr(C)]
1779 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1780 pub struct DOT11_MAC_ADDRESS_LIST {
1781     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1782     pub uNumOfEntries: u32,
1783     pub uTotalNumOfEntries: u32,
1784     pub MacAddrs: [u8; 6],
1785 }
1786 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1787 impl ::core::marker::Copy for DOT11_MAC_ADDRESS_LIST {}
1788 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1789 impl ::core::clone::Clone for DOT11_MAC_ADDRESS_LIST {
clone(&self) -> Self1790     fn clone(&self) -> Self {
1791         *self
1792     }
1793 }
1794 pub const DOT11_MAC_ADDRESS_LIST_REVISION_1: u32 = 1u32;
1795 #[repr(C)]
1796 pub struct DOT11_MAC_FRAME_STATISTICS {
1797     pub ullTransmittedFrameCount: u64,
1798     pub ullReceivedFrameCount: u64,
1799     pub ullTransmittedFailureFrameCount: u64,
1800     pub ullReceivedFailureFrameCount: u64,
1801     pub ullWEPExcludedCount: u64,
1802     pub ullTKIPLocalMICFailures: u64,
1803     pub ullTKIPReplays: u64,
1804     pub ullTKIPICVErrorCount: u64,
1805     pub ullCCMPReplays: u64,
1806     pub ullCCMPDecryptErrors: u64,
1807     pub ullWEPUndecryptableCount: u64,
1808     pub ullWEPICVErrorCount: u64,
1809     pub ullDecryptSuccessCount: u64,
1810     pub ullDecryptFailureCount: u64,
1811 }
1812 impl ::core::marker::Copy for DOT11_MAC_FRAME_STATISTICS {}
1813 impl ::core::clone::Clone for DOT11_MAC_FRAME_STATISTICS {
clone(&self) -> Self1814     fn clone(&self) -> Self {
1815         *self
1816     }
1817 }
1818 #[repr(C)]
1819 pub struct DOT11_MAC_INFO {
1820     pub uReserved: u32,
1821     pub uNdisPortNumber: u32,
1822     pub MacAddr: [u8; 6],
1823 }
1824 impl ::core::marker::Copy for DOT11_MAC_INFO {}
1825 impl ::core::clone::Clone for DOT11_MAC_INFO {
clone(&self) -> Self1826     fn clone(&self) -> Self {
1827         *self
1828     }
1829 }
1830 #[repr(C)]
1831 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1832 pub struct DOT11_MAC_PARAMETERS {
1833     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1834     pub uOpmodeMask: u32,
1835 }
1836 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1837 impl ::core::marker::Copy for DOT11_MAC_PARAMETERS {}
1838 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1839 impl ::core::clone::Clone for DOT11_MAC_PARAMETERS {
clone(&self) -> Self1840     fn clone(&self) -> Self {
1841         *self
1842     }
1843 }
1844 pub const DOT11_MAC_PARAMETERS_REVISION_1: u32 = 1u32;
1845 #[repr(C)]
1846 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1847 pub struct DOT11_MANUFACTURING_CALLBACK_PARAMETERS {
1848     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
1849     pub dot11ManufacturingCallbackType: DOT11_MANUFACTURING_CALLBACK_TYPE,
1850     pub uStatus: u32,
1851     pub pvContext: *mut ::core::ffi::c_void,
1852 }
1853 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1854 impl ::core::marker::Copy for DOT11_MANUFACTURING_CALLBACK_PARAMETERS {}
1855 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
1856 impl ::core::clone::Clone for DOT11_MANUFACTURING_CALLBACK_PARAMETERS {
clone(&self) -> Self1857     fn clone(&self) -> Self {
1858         *self
1859     }
1860 }
1861 pub const DOT11_MANUFACTURING_CALLBACK_REVISION_1: u32 = 1u32;
1862 pub type DOT11_MANUFACTURING_CALLBACK_TYPE = i32;
1863 pub const dot11_manufacturing_callback_unknown: DOT11_MANUFACTURING_CALLBACK_TYPE = 0i32;
1864 pub const dot11_manufacturing_callback_self_test_complete: DOT11_MANUFACTURING_CALLBACK_TYPE = 1i32;
1865 pub const dot11_manufacturing_callback_sleep_complete: DOT11_MANUFACTURING_CALLBACK_TYPE = 2i32;
1866 pub const dot11_manufacturing_callback_IHV_start: DOT11_MANUFACTURING_CALLBACK_TYPE = -2147483648i32;
1867 pub const dot11_manufacturing_callback_IHV_end: DOT11_MANUFACTURING_CALLBACK_TYPE = -1i32;
1868 #[repr(C)]
1869 pub struct DOT11_MANUFACTURING_FUNCTIONAL_TEST_QUERY_ADC {
1870     pub Dot11Band: DOT11_BAND,
1871     pub uChannel: u32,
1872     pub ADCPowerLevel: i32,
1873 }
1874 impl ::core::marker::Copy for DOT11_MANUFACTURING_FUNCTIONAL_TEST_QUERY_ADC {}
1875 impl ::core::clone::Clone for DOT11_MANUFACTURING_FUNCTIONAL_TEST_QUERY_ADC {
clone(&self) -> Self1876     fn clone(&self) -> Self {
1877         *self
1878     }
1879 }
1880 #[repr(C)]
1881 #[cfg(feature = "Win32_Foundation")]
1882 pub struct DOT11_MANUFACTURING_FUNCTIONAL_TEST_RX {
1883     pub bEnabled: super::super::Foundation::BOOLEAN,
1884     pub Dot11Band: DOT11_BAND,
1885     pub uChannel: u32,
1886     pub PowerLevel: i32,
1887 }
1888 #[cfg(feature = "Win32_Foundation")]
1889 impl ::core::marker::Copy for DOT11_MANUFACTURING_FUNCTIONAL_TEST_RX {}
1890 #[cfg(feature = "Win32_Foundation")]
1891 impl ::core::clone::Clone for DOT11_MANUFACTURING_FUNCTIONAL_TEST_RX {
clone(&self) -> Self1892     fn clone(&self) -> Self {
1893         *self
1894     }
1895 }
1896 #[repr(C)]
1897 #[cfg(feature = "Win32_Foundation")]
1898 pub struct DOT11_MANUFACTURING_FUNCTIONAL_TEST_TX {
1899     pub bEnable: super::super::Foundation::BOOLEAN,
1900     pub bOpenLoop: super::super::Foundation::BOOLEAN,
1901     pub Dot11Band: DOT11_BAND,
1902     pub uChannel: u32,
1903     pub uSetPowerLevel: u32,
1904     pub ADCPowerLevel: i32,
1905 }
1906 #[cfg(feature = "Win32_Foundation")]
1907 impl ::core::marker::Copy for DOT11_MANUFACTURING_FUNCTIONAL_TEST_TX {}
1908 #[cfg(feature = "Win32_Foundation")]
1909 impl ::core::clone::Clone for DOT11_MANUFACTURING_FUNCTIONAL_TEST_TX {
clone(&self) -> Self1910     fn clone(&self) -> Self {
1911         *self
1912     }
1913 }
1914 #[repr(C)]
1915 #[cfg(feature = "Win32_Foundation")]
1916 pub struct DOT11_MANUFACTURING_SELF_TEST_QUERY_RESULTS {
1917     pub SelfTestType: DOT11_MANUFACTURING_SELF_TEST_TYPE,
1918     pub uTestID: u32,
1919     pub bResult: super::super::Foundation::BOOLEAN,
1920     pub uPinFailedBitMask: u32,
1921     pub pvContext: *mut ::core::ffi::c_void,
1922     pub uBytesWrittenOut: u32,
1923     pub ucBufferOut: [u8; 1],
1924 }
1925 #[cfg(feature = "Win32_Foundation")]
1926 impl ::core::marker::Copy for DOT11_MANUFACTURING_SELF_TEST_QUERY_RESULTS {}
1927 #[cfg(feature = "Win32_Foundation")]
1928 impl ::core::clone::Clone for DOT11_MANUFACTURING_SELF_TEST_QUERY_RESULTS {
clone(&self) -> Self1929     fn clone(&self) -> Self {
1930         *self
1931     }
1932 }
1933 #[repr(C)]
1934 pub struct DOT11_MANUFACTURING_SELF_TEST_SET_PARAMS {
1935     pub SelfTestType: DOT11_MANUFACTURING_SELF_TEST_TYPE,
1936     pub uTestID: u32,
1937     pub uPinBitMask: u32,
1938     pub pvContext: *mut ::core::ffi::c_void,
1939     pub uBufferLength: u32,
1940     pub ucBufferIn: [u8; 1],
1941 }
1942 impl ::core::marker::Copy for DOT11_MANUFACTURING_SELF_TEST_SET_PARAMS {}
1943 impl ::core::clone::Clone for DOT11_MANUFACTURING_SELF_TEST_SET_PARAMS {
clone(&self) -> Self1944     fn clone(&self) -> Self {
1945         *self
1946     }
1947 }
1948 pub type DOT11_MANUFACTURING_SELF_TEST_TYPE = i32;
1949 pub const DOT11_MANUFACTURING_SELF_TEST_TYPE_INTERFACE: DOT11_MANUFACTURING_SELF_TEST_TYPE = 1i32;
1950 pub const DOT11_MANUFACTURING_SELF_TEST_TYPE_RF_INTERFACE: DOT11_MANUFACTURING_SELF_TEST_TYPE = 2i32;
1951 pub const DOT11_MANUFACTURING_SELF_TEST_TYPE_BT_COEXISTENCE: DOT11_MANUFACTURING_SELF_TEST_TYPE = 3i32;
1952 #[repr(C)]
1953 pub struct DOT11_MANUFACTURING_TEST {
1954     pub dot11ManufacturingTestType: DOT11_MANUFACTURING_TEST_TYPE,
1955     pub uBufferLength: u32,
1956     pub ucBuffer: [u8; 1],
1957 }
1958 impl ::core::marker::Copy for DOT11_MANUFACTURING_TEST {}
1959 impl ::core::clone::Clone for DOT11_MANUFACTURING_TEST {
clone(&self) -> Self1960     fn clone(&self) -> Self {
1961         *self
1962     }
1963 }
1964 #[repr(C)]
1965 pub struct DOT11_MANUFACTURING_TEST_QUERY_DATA {
1966     pub uKey: u32,
1967     pub uOffset: u32,
1968     pub uBufferLength: u32,
1969     pub uBytesRead: u32,
1970     pub ucBufferOut: [u8; 1],
1971 }
1972 impl ::core::marker::Copy for DOT11_MANUFACTURING_TEST_QUERY_DATA {}
1973 impl ::core::clone::Clone for DOT11_MANUFACTURING_TEST_QUERY_DATA {
clone(&self) -> Self1974     fn clone(&self) -> Self {
1975         *self
1976     }
1977 }
1978 pub const DOT11_MANUFACTURING_TEST_REVISION_1: u32 = 1u32;
1979 #[repr(C)]
1980 pub struct DOT11_MANUFACTURING_TEST_SET_DATA {
1981     pub uKey: u32,
1982     pub uOffset: u32,
1983     pub uBufferLength: u32,
1984     pub ucBufferIn: [u8; 1],
1985 }
1986 impl ::core::marker::Copy for DOT11_MANUFACTURING_TEST_SET_DATA {}
1987 impl ::core::clone::Clone for DOT11_MANUFACTURING_TEST_SET_DATA {
clone(&self) -> Self1988     fn clone(&self) -> Self {
1989         *self
1990     }
1991 }
1992 #[repr(C)]
1993 pub struct DOT11_MANUFACTURING_TEST_SLEEP {
1994     pub uSleepTime: u32,
1995     pub pvContext: *mut ::core::ffi::c_void,
1996 }
1997 impl ::core::marker::Copy for DOT11_MANUFACTURING_TEST_SLEEP {}
1998 impl ::core::clone::Clone for DOT11_MANUFACTURING_TEST_SLEEP {
clone(&self) -> Self1999     fn clone(&self) -> Self {
2000         *self
2001     }
2002 }
2003 pub type DOT11_MANUFACTURING_TEST_TYPE = i32;
2004 pub const dot11_manufacturing_test_unknown: DOT11_MANUFACTURING_TEST_TYPE = 0i32;
2005 pub const dot11_manufacturing_test_self_start: DOT11_MANUFACTURING_TEST_TYPE = 1i32;
2006 pub const dot11_manufacturing_test_self_query_result: DOT11_MANUFACTURING_TEST_TYPE = 2i32;
2007 pub const dot11_manufacturing_test_rx: DOT11_MANUFACTURING_TEST_TYPE = 3i32;
2008 pub const dot11_manufacturing_test_tx: DOT11_MANUFACTURING_TEST_TYPE = 4i32;
2009 pub const dot11_manufacturing_test_query_adc: DOT11_MANUFACTURING_TEST_TYPE = 5i32;
2010 pub const dot11_manufacturing_test_set_data: DOT11_MANUFACTURING_TEST_TYPE = 6i32;
2011 pub const dot11_manufacturing_test_query_data: DOT11_MANUFACTURING_TEST_TYPE = 7i32;
2012 pub const dot11_manufacturing_test_sleep: DOT11_MANUFACTURING_TEST_TYPE = 8i32;
2013 pub const dot11_manufacturing_test_awake: DOT11_MANUFACTURING_TEST_TYPE = 9i32;
2014 pub const dot11_manufacturing_test_IHV_start: DOT11_MANUFACTURING_TEST_TYPE = -2147483648i32;
2015 pub const dot11_manufacturing_test_IHV_end: DOT11_MANUFACTURING_TEST_TYPE = -1i32;
2016 pub const DOT11_MAX_CHANNEL_HINTS: u32 = 4u32;
2017 pub const DOT11_MAX_NUM_DEFAULT_KEY: u32 = 4u32;
2018 pub const DOT11_MAX_NUM_DEFAULT_KEY_MFP: u32 = 6u32;
2019 pub const DOT11_MAX_NUM_OF_FRAGMENTS: u32 = 16u32;
2020 pub const DOT11_MAX_PDU_SIZE: u32 = 2346u32;
2021 pub const DOT11_MAX_REQUESTED_SERVICE_INFORMATION_LENGTH: u32 = 255u32;
2022 #[repr(C)]
2023 pub struct DOT11_MD_CAPABILITY_ENTRY_LIST {
2024     pub uNumOfEntries: u32,
2025     pub uTotalNumOfEntries: u32,
2026     pub dot11MDCapabilityEntry: [DOT11_MULTI_DOMAIN_CAPABILITY_ENTRY; 1],
2027 }
2028 impl ::core::marker::Copy for DOT11_MD_CAPABILITY_ENTRY_LIST {}
2029 impl ::core::clone::Clone for DOT11_MD_CAPABILITY_ENTRY_LIST {
clone(&self) -> Self2030     fn clone(&self) -> Self {
2031         *self
2032     }
2033 }
2034 pub const DOT11_MIN_PDU_SIZE: u32 = 256u32;
2035 #[repr(C)]
2036 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2037 pub struct DOT11_MPDU_MAX_LENGTH_INDICATION {
2038     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2039     pub uPhyId: u32,
2040     pub uMPDUMaxLength: u32,
2041 }
2042 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2043 impl ::core::marker::Copy for DOT11_MPDU_MAX_LENGTH_INDICATION {}
2044 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2045 impl ::core::clone::Clone for DOT11_MPDU_MAX_LENGTH_INDICATION {
clone(&self) -> Self2046     fn clone(&self) -> Self {
2047         *self
2048     }
2049 }
2050 pub const DOT11_MPDU_MAX_LENGTH_INDICATION_REVISION_1: u32 = 1u32;
2051 #[repr(C)]
2052 pub struct DOT11_MULTI_DOMAIN_CAPABILITY_ENTRY {
2053     pub uMultiDomainCapabilityIndex: u32,
2054     pub uFirstChannelNumber: u32,
2055     pub uNumberOfChannels: u32,
2056     pub lMaximumTransmitPowerLevel: i32,
2057 }
2058 impl ::core::marker::Copy for DOT11_MULTI_DOMAIN_CAPABILITY_ENTRY {}
2059 impl ::core::clone::Clone for DOT11_MULTI_DOMAIN_CAPABILITY_ENTRY {
clone(&self) -> Self2060     fn clone(&self) -> Self {
2061         *self
2062     }
2063 }
2064 #[repr(C)]
2065 pub struct DOT11_NETWORK {
2066     pub dot11Ssid: DOT11_SSID,
2067     pub dot11BssType: DOT11_BSS_TYPE,
2068 }
2069 impl ::core::marker::Copy for DOT11_NETWORK {}
2070 impl ::core::clone::Clone for DOT11_NETWORK {
clone(&self) -> Self2071     fn clone(&self) -> Self {
2072         *self
2073     }
2074 }
2075 #[repr(C)]
2076 pub struct DOT11_NETWORK_LIST {
2077     pub dwNumberOfItems: u32,
2078     pub dwIndex: u32,
2079     pub Network: [DOT11_NETWORK; 1],
2080 }
2081 impl ::core::marker::Copy for DOT11_NETWORK_LIST {}
2082 impl ::core::clone::Clone for DOT11_NETWORK_LIST {
clone(&self) -> Self2083     fn clone(&self) -> Self {
2084         *self
2085     }
2086 }
2087 #[repr(C)]
2088 pub struct DOT11_NIC_SPECIFIC_EXTENSION {
2089     pub uBufferLength: u32,
2090     pub uTotalBufferLength: u32,
2091     pub ucBuffer: [u8; 1],
2092 }
2093 impl ::core::marker::Copy for DOT11_NIC_SPECIFIC_EXTENSION {}
2094 impl ::core::clone::Clone for DOT11_NIC_SPECIFIC_EXTENSION {
clone(&self) -> Self2095     fn clone(&self) -> Self {
2096         *self
2097     }
2098 }
2099 pub const DOT11_NLO_FLAG_SCAN_AT_SYSTEM_RESUME: u32 = 4u32;
2100 pub const DOT11_NLO_FLAG_SCAN_ON_AOAC_PLATFORM: u32 = 2u32;
2101 pub const DOT11_NLO_FLAG_STOP_NLO_INDICATION: u32 = 1u32;
2102 #[repr(C)]
2103 pub struct DOT11_OFDM_PHY_ATTRIBUTES {
2104     pub uFrequencyBandsSupported: u32,
2105 }
2106 impl ::core::marker::Copy for DOT11_OFDM_PHY_ATTRIBUTES {}
2107 impl ::core::clone::Clone for DOT11_OFDM_PHY_ATTRIBUTES {
clone(&self) -> Self2108     fn clone(&self) -> Self {
2109         *self
2110     }
2111 }
2112 #[repr(C)]
2113 pub struct DOT11_OFFLOAD_CAPABILITY {
2114     pub uReserved: u32,
2115     pub uFlags: u32,
2116     pub uSupportedWEPAlgorithms: u32,
2117     pub uNumOfReplayWindows: u32,
2118     pub uMaxWEPKeyMappingLength: u32,
2119     pub uSupportedAuthAlgorithms: u32,
2120     pub uMaxAuthKeyMappingLength: u32,
2121 }
2122 impl ::core::marker::Copy for DOT11_OFFLOAD_CAPABILITY {}
2123 impl ::core::clone::Clone for DOT11_OFFLOAD_CAPABILITY {
clone(&self) -> Self2124     fn clone(&self) -> Self {
2125         *self
2126     }
2127 }
2128 #[repr(C)]
2129 pub struct DOT11_OFFLOAD_NETWORK {
2130     pub Ssid: DOT11_SSID,
2131     pub UnicastCipher: DOT11_CIPHER_ALGORITHM,
2132     pub AuthAlgo: DOT11_AUTH_ALGORITHM,
2133     pub Dot11ChannelHints: [DOT11_CHANNEL_HINT; 4],
2134 }
2135 impl ::core::marker::Copy for DOT11_OFFLOAD_NETWORK {}
2136 impl ::core::clone::Clone for DOT11_OFFLOAD_NETWORK {
clone(&self) -> Self2137     fn clone(&self) -> Self {
2138         *self
2139     }
2140 }
2141 #[repr(C)]
2142 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2143 pub struct DOT11_OFFLOAD_NETWORK_LIST_INFO {
2144     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2145     pub ulFlags: u32,
2146     pub FastScanPeriod: u32,
2147     pub FastScanIterations: u32,
2148     pub SlowScanPeriod: u32,
2149     pub uNumOfEntries: u32,
2150     pub offloadNetworkList: [DOT11_OFFLOAD_NETWORK; 1],
2151 }
2152 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2153 impl ::core::marker::Copy for DOT11_OFFLOAD_NETWORK_LIST_INFO {}
2154 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2155 impl ::core::clone::Clone for DOT11_OFFLOAD_NETWORK_LIST_INFO {
clone(&self) -> Self2156     fn clone(&self) -> Self {
2157         *self
2158     }
2159 }
2160 pub const DOT11_OFFLOAD_NETWORK_LIST_REVISION_1: u32 = 1u32;
2161 #[repr(C)]
2162 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2163 pub struct DOT11_OFFLOAD_NETWORK_STATUS_PARAMETERS {
2164     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2165     pub Status: i32,
2166 }
2167 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2168 impl ::core::marker::Copy for DOT11_OFFLOAD_NETWORK_STATUS_PARAMETERS {}
2169 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2170 impl ::core::clone::Clone for DOT11_OFFLOAD_NETWORK_STATUS_PARAMETERS {
clone(&self) -> Self2171     fn clone(&self) -> Self {
2172         *self
2173     }
2174 }
2175 pub const DOT11_OFFLOAD_NETWORK_STATUS_PARAMETERS_REVISION_1: u32 = 1u32;
2176 pub type DOT11_OFFLOAD_TYPE = i32;
2177 pub const dot11_offload_type_wep: DOT11_OFFLOAD_TYPE = 1i32;
2178 pub const dot11_offload_type_auth: DOT11_OFFLOAD_TYPE = 2i32;
2179 #[repr(C)]
2180 pub struct DOT11_OI {
2181     pub OILength: u16,
2182     pub OI: [u8; 5],
2183 }
2184 impl ::core::marker::Copy for DOT11_OI {}
2185 impl ::core::clone::Clone for DOT11_OI {
clone(&self) -> Self2186     fn clone(&self) -> Self {
2187         *self
2188     }
2189 }
2190 pub const DOT11_OI_MAX_LENGTH: u32 = 5u32;
2191 pub const DOT11_OI_MIN_LENGTH: u32 = 3u32;
2192 pub const DOT11_OPERATION_MODE_AP: u32 = 2u32;
2193 #[repr(C)]
2194 pub struct DOT11_OPERATION_MODE_CAPABILITY {
2195     pub uReserved: u32,
2196     pub uMajorVersion: u32,
2197     pub uMinorVersion: u32,
2198     pub uNumOfTXBuffers: u32,
2199     pub uNumOfRXBuffers: u32,
2200     pub uOpModeCapability: u32,
2201 }
2202 impl ::core::marker::Copy for DOT11_OPERATION_MODE_CAPABILITY {}
2203 impl ::core::clone::Clone for DOT11_OPERATION_MODE_CAPABILITY {
clone(&self) -> Self2204     fn clone(&self) -> Self {
2205         *self
2206     }
2207 }
2208 pub const DOT11_OPERATION_MODE_EXTENSIBLE_AP: u32 = 8u32;
2209 pub const DOT11_OPERATION_MODE_EXTENSIBLE_STATION: u32 = 4u32;
2210 pub const DOT11_OPERATION_MODE_MANUFACTURING: u32 = 1073741824u32;
2211 pub const DOT11_OPERATION_MODE_NETWORK_MONITOR: u32 = 2147483648u32;
2212 pub const DOT11_OPERATION_MODE_STATION: u32 = 1u32;
2213 pub const DOT11_OPERATION_MODE_UNKNOWN: u32 = 0u32;
2214 pub const DOT11_OPERATION_MODE_WFD_CLIENT: u32 = 64u32;
2215 pub const DOT11_OPERATION_MODE_WFD_DEVICE: u32 = 16u32;
2216 pub const DOT11_OPERATION_MODE_WFD_GROUP_OWNER: u32 = 32u32;
2217 #[repr(C)]
2218 #[cfg(feature = "Win32_Foundation")]
2219 pub struct DOT11_OPTIONAL_CAPABILITY {
2220     pub uReserved: u32,
2221     pub bDot11PCF: super::super::Foundation::BOOLEAN,
2222     pub bDot11PCFMPDUTransferToPC: super::super::Foundation::BOOLEAN,
2223     pub bStrictlyOrderedServiceClass: super::super::Foundation::BOOLEAN,
2224 }
2225 #[cfg(feature = "Win32_Foundation")]
2226 impl ::core::marker::Copy for DOT11_OPTIONAL_CAPABILITY {}
2227 #[cfg(feature = "Win32_Foundation")]
2228 impl ::core::clone::Clone for DOT11_OPTIONAL_CAPABILITY {
clone(&self) -> Self2229     fn clone(&self) -> Self {
2230         *self
2231     }
2232 }
2233 pub const DOT11_PACKET_TYPE_ALL_MULTICAST_CTRL: u32 = 4096u32;
2234 pub const DOT11_PACKET_TYPE_ALL_MULTICAST_DATA: u32 = 16384u32;
2235 pub const DOT11_PACKET_TYPE_ALL_MULTICAST_MGMT: u32 = 8192u32;
2236 pub const DOT11_PACKET_TYPE_BROADCAST_CTRL: u32 = 64u32;
2237 pub const DOT11_PACKET_TYPE_BROADCAST_DATA: u32 = 256u32;
2238 pub const DOT11_PACKET_TYPE_BROADCAST_MGMT: u32 = 128u32;
2239 pub const DOT11_PACKET_TYPE_DIRECTED_CTRL: u32 = 1u32;
2240 pub const DOT11_PACKET_TYPE_DIRECTED_DATA: u32 = 4u32;
2241 pub const DOT11_PACKET_TYPE_DIRECTED_MGMT: u32 = 2u32;
2242 pub const DOT11_PACKET_TYPE_MULTICAST_CTRL: u32 = 8u32;
2243 pub const DOT11_PACKET_TYPE_MULTICAST_DATA: u32 = 32u32;
2244 pub const DOT11_PACKET_TYPE_MULTICAST_MGMT: u32 = 16u32;
2245 pub const DOT11_PACKET_TYPE_PROMISCUOUS_CTRL: u32 = 512u32;
2246 pub const DOT11_PACKET_TYPE_PROMISCUOUS_DATA: u32 = 2048u32;
2247 pub const DOT11_PACKET_TYPE_PROMISCUOUS_MGMT: u32 = 1024u32;
2248 #[repr(C)]
2249 #[cfg(feature = "Win32_Foundation")]
2250 pub struct DOT11_PEER_INFO {
2251     pub MacAddress: [u8; 6],
2252     pub usCapabilityInformation: u16,
2253     pub AuthAlgo: DOT11_AUTH_ALGORITHM,
2254     pub UnicastCipherAlgo: DOT11_CIPHER_ALGORITHM,
2255     pub MulticastCipherAlgo: DOT11_CIPHER_ALGORITHM,
2256     pub bWpsEnabled: super::super::Foundation::BOOLEAN,
2257     pub usListenInterval: u16,
2258     pub ucSupportedRates: [u8; 255],
2259     pub usAssociationID: u16,
2260     pub AssociationState: DOT11_ASSOCIATION_STATE,
2261     pub PowerMode: DOT11_POWER_MODE,
2262     pub liAssociationUpTime: i64,
2263     pub Statistics: DOT11_PEER_STATISTICS,
2264 }
2265 #[cfg(feature = "Win32_Foundation")]
2266 impl ::core::marker::Copy for DOT11_PEER_INFO {}
2267 #[cfg(feature = "Win32_Foundation")]
2268 impl ::core::clone::Clone for DOT11_PEER_INFO {
clone(&self) -> Self2269     fn clone(&self) -> Self {
2270         *self
2271     }
2272 }
2273 #[repr(C)]
2274 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2275 pub struct DOT11_PEER_INFO_LIST {
2276     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2277     pub uNumOfEntries: u32,
2278     pub uTotalNumOfEntries: u32,
2279     pub PeerInfo: [DOT11_PEER_INFO; 1],
2280 }
2281 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2282 impl ::core::marker::Copy for DOT11_PEER_INFO_LIST {}
2283 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2284 impl ::core::clone::Clone for DOT11_PEER_INFO_LIST {
clone(&self) -> Self2285     fn clone(&self) -> Self {
2286         *self
2287     }
2288 }
2289 pub const DOT11_PEER_INFO_LIST_REVISION_1: u32 = 1u32;
2290 #[repr(C)]
2291 pub struct DOT11_PEER_STATISTICS {
2292     pub ullDecryptSuccessCount: u64,
2293     pub ullDecryptFailureCount: u64,
2294     pub ullTxPacketSuccessCount: u64,
2295     pub ullTxPacketFailureCount: u64,
2296     pub ullRxPacketSuccessCount: u64,
2297     pub ullRxPacketFailureCount: u64,
2298 }
2299 impl ::core::marker::Copy for DOT11_PEER_STATISTICS {}
2300 impl ::core::clone::Clone for DOT11_PEER_STATISTICS {
clone(&self) -> Self2301     fn clone(&self) -> Self {
2302         *self
2303     }
2304 }
2305 #[repr(C)]
2306 pub struct DOT11_PER_MSDU_COUNTERS {
2307     pub uTransmittedFragmentCount: u32,
2308     pub uRetryCount: u32,
2309     pub uRTSSuccessCount: u32,
2310     pub uRTSFailureCount: u32,
2311     pub uACKFailureCount: u32,
2312 }
2313 impl ::core::marker::Copy for DOT11_PER_MSDU_COUNTERS {}
2314 impl ::core::clone::Clone for DOT11_PER_MSDU_COUNTERS {
clone(&self) -> Self2315     fn clone(&self) -> Self {
2316         *self
2317     }
2318 }
2319 #[repr(C)]
2320 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2321 pub struct DOT11_PHY_ATTRIBUTES {
2322     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2323     pub PhyType: DOT11_PHY_TYPE,
2324     pub bHardwarePhyState: super::super::Foundation::BOOLEAN,
2325     pub bSoftwarePhyState: super::super::Foundation::BOOLEAN,
2326     pub bCFPollable: super::super::Foundation::BOOLEAN,
2327     pub uMPDUMaxLength: u32,
2328     pub TempType: DOT11_TEMP_TYPE,
2329     pub DiversitySupport: DOT11_DIVERSITY_SUPPORT,
2330     pub PhySpecificAttributes: DOT11_PHY_ATTRIBUTES_0,
2331     pub uNumberSupportedPowerLevels: u32,
2332     pub TxPowerLevels: [u32; 8],
2333     pub uNumDataRateMappingEntries: u32,
2334     pub DataRateMappingEntries: [DOT11_DATA_RATE_MAPPING_ENTRY; 126],
2335     pub SupportedDataRatesValue: DOT11_SUPPORTED_DATA_RATES_VALUE_V2,
2336 }
2337 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2338 impl ::core::marker::Copy for DOT11_PHY_ATTRIBUTES {}
2339 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2340 impl ::core::clone::Clone for DOT11_PHY_ATTRIBUTES {
clone(&self) -> Self2341     fn clone(&self) -> Self {
2342         *self
2343     }
2344 }
2345 #[repr(C)]
2346 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2347 pub union DOT11_PHY_ATTRIBUTES_0 {
2348     pub HRDSSSAttributes: DOT11_HRDSSS_PHY_ATTRIBUTES,
2349     pub OFDMAttributes: DOT11_OFDM_PHY_ATTRIBUTES,
2350     pub ERPAttributes: DOT11_ERP_PHY_ATTRIBUTES,
2351 }
2352 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2353 impl ::core::marker::Copy for DOT11_PHY_ATTRIBUTES_0 {}
2354 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2355 impl ::core::clone::Clone for DOT11_PHY_ATTRIBUTES_0 {
clone(&self) -> Self2356     fn clone(&self) -> Self {
2357         *self
2358     }
2359 }
2360 pub const DOT11_PHY_ATTRIBUTES_REVISION_1: u32 = 1u32;
2361 #[repr(C)]
2362 pub struct DOT11_PHY_FRAME_STATISTICS {
2363     pub ullTransmittedFrameCount: u64,
2364     pub ullMulticastTransmittedFrameCount: u64,
2365     pub ullFailedCount: u64,
2366     pub ullRetryCount: u64,
2367     pub ullMultipleRetryCount: u64,
2368     pub ullMaxTXLifetimeExceededCount: u64,
2369     pub ullTransmittedFragmentCount: u64,
2370     pub ullRTSSuccessCount: u64,
2371     pub ullRTSFailureCount: u64,
2372     pub ullACKFailureCount: u64,
2373     pub ullReceivedFrameCount: u64,
2374     pub ullMulticastReceivedFrameCount: u64,
2375     pub ullPromiscuousReceivedFrameCount: u64,
2376     pub ullMaxRXLifetimeExceededCount: u64,
2377     pub ullFrameDuplicateCount: u64,
2378     pub ullReceivedFragmentCount: u64,
2379     pub ullPromiscuousReceivedFragmentCount: u64,
2380     pub ullFCSErrorCount: u64,
2381 }
2382 impl ::core::marker::Copy for DOT11_PHY_FRAME_STATISTICS {}
2383 impl ::core::clone::Clone for DOT11_PHY_FRAME_STATISTICS {
clone(&self) -> Self2384     fn clone(&self) -> Self {
2385         *self
2386     }
2387 }
2388 #[repr(C)]
2389 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2390 pub struct DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS {
2391     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2392     pub ulPhyId: u32,
2393     pub Anonymous: DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS_0,
2394 }
2395 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2396 impl ::core::marker::Copy for DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS {}
2397 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2398 impl ::core::clone::Clone for DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS {
clone(&self) -> Self2399     fn clone(&self) -> Self {
2400         *self
2401     }
2402 }
2403 #[repr(C)]
2404 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2405 pub union DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS_0 {
2406     pub ulChannel: u32,
2407     pub ulFrequency: u32,
2408 }
2409 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2410 impl ::core::marker::Copy for DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS_0 {}
2411 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2412 impl ::core::clone::Clone for DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS_0 {
clone(&self) -> Self2413     fn clone(&self) -> Self {
2414         *self
2415     }
2416 }
2417 pub const DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS_REVISION_1: u32 = 1u32;
2418 #[repr(C)]
2419 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2420 pub struct DOT11_PHY_ID_LIST {
2421     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2422     pub uNumOfEntries: u32,
2423     pub uTotalNumOfEntries: u32,
2424     pub dot11PhyId: [u32; 1],
2425 }
2426 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2427 impl ::core::marker::Copy for DOT11_PHY_ID_LIST {}
2428 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2429 impl ::core::clone::Clone for DOT11_PHY_ID_LIST {
clone(&self) -> Self2430     fn clone(&self) -> Self {
2431         *self
2432     }
2433 }
2434 pub const DOT11_PHY_ID_LIST_REVISION_1: u32 = 1u32;
2435 #[repr(C)]
2436 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2437 pub struct DOT11_PHY_STATE_PARAMETERS {
2438     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2439     pub uPhyId: u32,
2440     pub bHardwarePhyState: super::super::Foundation::BOOLEAN,
2441     pub bSoftwarePhyState: super::super::Foundation::BOOLEAN,
2442 }
2443 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2444 impl ::core::marker::Copy for DOT11_PHY_STATE_PARAMETERS {}
2445 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2446 impl ::core::clone::Clone for DOT11_PHY_STATE_PARAMETERS {
clone(&self) -> Self2447     fn clone(&self) -> Self {
2448         *self
2449     }
2450 }
2451 pub const DOT11_PHY_STATE_PARAMETERS_REVISION_1: u32 = 1u32;
2452 pub type DOT11_PHY_TYPE = i32;
2453 pub const dot11_phy_type_unknown: DOT11_PHY_TYPE = 0i32;
2454 pub const dot11_phy_type_any: DOT11_PHY_TYPE = 0i32;
2455 pub const dot11_phy_type_fhss: DOT11_PHY_TYPE = 1i32;
2456 pub const dot11_phy_type_dsss: DOT11_PHY_TYPE = 2i32;
2457 pub const dot11_phy_type_irbaseband: DOT11_PHY_TYPE = 3i32;
2458 pub const dot11_phy_type_ofdm: DOT11_PHY_TYPE = 4i32;
2459 pub const dot11_phy_type_hrdsss: DOT11_PHY_TYPE = 5i32;
2460 pub const dot11_phy_type_erp: DOT11_PHY_TYPE = 6i32;
2461 pub const dot11_phy_type_ht: DOT11_PHY_TYPE = 7i32;
2462 pub const dot11_phy_type_vht: DOT11_PHY_TYPE = 8i32;
2463 pub const dot11_phy_type_dmg: DOT11_PHY_TYPE = 9i32;
2464 pub const dot11_phy_type_he: DOT11_PHY_TYPE = 10i32;
2465 pub const dot11_phy_type_IHV_start: DOT11_PHY_TYPE = -2147483648i32;
2466 pub const dot11_phy_type_IHV_end: DOT11_PHY_TYPE = -1i32;
2467 #[repr(C)]
2468 #[cfg(feature = "Win32_Foundation")]
2469 pub struct DOT11_PHY_TYPE_INFO {
2470     pub dot11PhyType: DOT11_PHY_TYPE,
2471     pub bUseParameters: super::super::Foundation::BOOLEAN,
2472     pub uProbeDelay: u32,
2473     pub uMinChannelTime: u32,
2474     pub uMaxChannelTime: u32,
2475     pub ChDescriptionType: CH_DESCRIPTION_TYPE,
2476     pub uChannelListSize: u32,
2477     pub ucChannelListBuffer: [u8; 1],
2478 }
2479 #[cfg(feature = "Win32_Foundation")]
2480 impl ::core::marker::Copy for DOT11_PHY_TYPE_INFO {}
2481 #[cfg(feature = "Win32_Foundation")]
2482 impl ::core::clone::Clone for DOT11_PHY_TYPE_INFO {
clone(&self) -> Self2483     fn clone(&self) -> Self {
2484         *self
2485     }
2486 }
2487 #[repr(C)]
2488 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2489 pub struct DOT11_PHY_TYPE_LIST {
2490     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2491     pub uNumOfEntries: u32,
2492     pub uTotalNumOfEntries: u32,
2493     pub dot11PhyType: [DOT11_PHY_TYPE; 1],
2494 }
2495 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2496 impl ::core::marker::Copy for DOT11_PHY_TYPE_LIST {}
2497 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2498 impl ::core::clone::Clone for DOT11_PHY_TYPE_LIST {
clone(&self) -> Self2499     fn clone(&self) -> Self {
2500         *self
2501     }
2502 }
2503 pub const DOT11_PHY_TYPE_LIST_REVISION_1: u32 = 1u32;
2504 #[repr(C)]
2505 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2506 pub struct DOT11_PMKID_CANDIDATE_LIST_PARAMETERS {
2507     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2508     pub uCandidateListSize: u32,
2509     pub uCandidateListOffset: u32,
2510 }
2511 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2512 impl ::core::marker::Copy for DOT11_PMKID_CANDIDATE_LIST_PARAMETERS {}
2513 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2514 impl ::core::clone::Clone for DOT11_PMKID_CANDIDATE_LIST_PARAMETERS {
clone(&self) -> Self2515     fn clone(&self) -> Self {
2516         *self
2517     }
2518 }
2519 pub const DOT11_PMKID_CANDIDATE_LIST_PARAMETERS_REVISION_1: u32 = 1u32;
2520 #[repr(C)]
2521 pub struct DOT11_PMKID_ENTRY {
2522     pub BSSID: [u8; 6],
2523     pub PMKID: [u8; 16],
2524     pub uFlags: u32,
2525 }
2526 impl ::core::marker::Copy for DOT11_PMKID_ENTRY {}
2527 impl ::core::clone::Clone for DOT11_PMKID_ENTRY {
clone(&self) -> Self2528     fn clone(&self) -> Self {
2529         *self
2530     }
2531 }
2532 #[repr(C)]
2533 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2534 pub struct DOT11_PMKID_LIST {
2535     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2536     pub uNumOfEntries: u32,
2537     pub uTotalNumOfEntries: u32,
2538     pub PMKIDs: [DOT11_PMKID_ENTRY; 1],
2539 }
2540 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2541 impl ::core::marker::Copy for DOT11_PMKID_LIST {}
2542 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2543 impl ::core::clone::Clone for DOT11_PMKID_LIST {
clone(&self) -> Self2544     fn clone(&self) -> Self {
2545         *self
2546     }
2547 }
2548 pub const DOT11_PMKID_LIST_REVISION_1: u32 = 1u32;
2549 #[repr(C)]
2550 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2551 pub struct DOT11_PORT_STATE_NOTIFICATION {
2552     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2553     pub PeerMac: [u8; 6],
2554     pub bOpen: super::super::Foundation::BOOLEAN,
2555 }
2556 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2557 impl ::core::marker::Copy for DOT11_PORT_STATE_NOTIFICATION {}
2558 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2559 impl ::core::clone::Clone for DOT11_PORT_STATE_NOTIFICATION {
clone(&self) -> Self2560     fn clone(&self) -> Self {
2561         *self
2562     }
2563 }
2564 pub const DOT11_PORT_STATE_NOTIFICATION_REVISION_1: u32 = 1u32;
2565 #[repr(C)]
2566 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2567 pub struct DOT11_POWER_MGMT_AUTO_MODE_ENABLED_INFO {
2568     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2569     pub bEnabled: super::super::Foundation::BOOLEAN,
2570 }
2571 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2572 impl ::core::marker::Copy for DOT11_POWER_MGMT_AUTO_MODE_ENABLED_INFO {}
2573 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
2574 impl ::core::clone::Clone for DOT11_POWER_MGMT_AUTO_MODE_ENABLED_INFO {
clone(&self) -> Self2575     fn clone(&self) -> Self {
2576         *self
2577     }
2578 }
2579 pub const DOT11_POWER_MGMT_AUTO_MODE_ENABLED_REVISION_1: u32 = 1u32;
2580 #[repr(C)]
2581 #[cfg(feature = "Win32_Foundation")]
2582 pub struct DOT11_POWER_MGMT_MODE {
2583     pub dot11PowerMode: DOT11_POWER_MODE,
2584     pub uPowerSaveLevel: u32,
2585     pub usListenInterval: u16,
2586     pub usAID: u16,
2587     pub bReceiveDTIMs: super::super::Foundation::BOOLEAN,
2588 }
2589 #[cfg(feature = "Win32_Foundation")]
2590 impl ::core::marker::Copy for DOT11_POWER_MGMT_MODE {}
2591 #[cfg(feature = "Win32_Foundation")]
2592 impl ::core::clone::Clone for DOT11_POWER_MGMT_MODE {
clone(&self) -> Self2593     fn clone(&self) -> Self {
2594         *self
2595     }
2596 }
2597 #[repr(C)]
2598 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2599 pub struct DOT11_POWER_MGMT_MODE_STATUS_INFO {
2600     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2601     pub PowerSaveMode: DOT11_POWER_MODE,
2602     pub uPowerSaveLevel: u32,
2603     pub Reason: DOT11_POWER_MODE_REASON,
2604 }
2605 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2606 impl ::core::marker::Copy for DOT11_POWER_MGMT_MODE_STATUS_INFO {}
2607 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2608 impl ::core::clone::Clone for DOT11_POWER_MGMT_MODE_STATUS_INFO {
clone(&self) -> Self2609     fn clone(&self) -> Self {
2610         *self
2611     }
2612 }
2613 pub const DOT11_POWER_MGMT_MODE_STATUS_INFO_REVISION_1: u32 = 1u32;
2614 pub type DOT11_POWER_MODE = i32;
2615 pub const dot11_power_mode_unknown: DOT11_POWER_MODE = 0i32;
2616 pub const dot11_power_mode_active: DOT11_POWER_MODE = 1i32;
2617 pub const dot11_power_mode_powersave: DOT11_POWER_MODE = 2i32;
2618 pub type DOT11_POWER_MODE_REASON = i32;
2619 pub const dot11_power_mode_reason_no_change: DOT11_POWER_MODE_REASON = 0i32;
2620 pub const dot11_power_mode_reason_noncompliant_AP: DOT11_POWER_MODE_REASON = 1i32;
2621 pub const dot11_power_mode_reason_legacy_WFD_device: DOT11_POWER_MODE_REASON = 2i32;
2622 pub const dot11_power_mode_reason_compliant_AP: DOT11_POWER_MODE_REASON = 3i32;
2623 pub const dot11_power_mode_reason_compliant_WFD_device: DOT11_POWER_MODE_REASON = 4i32;
2624 pub const dot11_power_mode_reason_others: DOT11_POWER_MODE_REASON = 5i32;
2625 pub const DOT11_POWER_SAVE_LEVEL_FAST_PSP: u32 = 2u32;
2626 pub const DOT11_POWER_SAVE_LEVEL_MAX_PSP: u32 = 1u32;
2627 pub const DOT11_POWER_SAVING_FAST_PSP: u32 = 8u32;
2628 pub const DOT11_POWER_SAVING_MAXIMUM_LEVEL: u32 = 24u32;
2629 pub const DOT11_POWER_SAVING_MAX_PSP: u32 = 16u32;
2630 pub const DOT11_POWER_SAVING_NO_POWER_SAVING: u32 = 0u32;
2631 pub const DOT11_PRIORITY_CONTENTION: u32 = 0u32;
2632 pub const DOT11_PRIORITY_CONTENTION_FREE: u32 = 1u32;
2633 #[repr(C)]
2634 pub struct DOT11_PRIVACY_EXEMPTION {
2635     pub usEtherType: u16,
2636     pub usExemptionActionType: u16,
2637     pub usExemptionPacketType: u16,
2638 }
2639 impl ::core::marker::Copy for DOT11_PRIVACY_EXEMPTION {}
2640 impl ::core::clone::Clone for DOT11_PRIVACY_EXEMPTION {
clone(&self) -> Self2641     fn clone(&self) -> Self {
2642         *self
2643     }
2644 }
2645 #[repr(C)]
2646 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2647 pub struct DOT11_PRIVACY_EXEMPTION_LIST {
2648     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2649     pub uNumOfEntries: u32,
2650     pub uTotalNumOfEntries: u32,
2651     pub PrivacyExemptionEntries: [DOT11_PRIVACY_EXEMPTION; 1],
2652 }
2653 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2654 impl ::core::marker::Copy for DOT11_PRIVACY_EXEMPTION_LIST {}
2655 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2656 impl ::core::clone::Clone for DOT11_PRIVACY_EXEMPTION_LIST {
clone(&self) -> Self2657     fn clone(&self) -> Self {
2658         *self
2659     }
2660 }
2661 pub const DOT11_PRIVACY_EXEMPTION_LIST_REVISION_1: u32 = 1u32;
2662 #[repr(C)]
2663 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2664 pub struct DOT11_PROVISION_DISCOVERY_REQUEST_SEND_COMPLETE_PARAMETERS {
2665     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2666     pub PeerDeviceAddress: [u8; 6],
2667     pub ReceiverAddress: [u8; 6],
2668     pub DialogToken: u8,
2669     pub Status: i32,
2670     pub uIEsOffset: u32,
2671     pub uIEsLength: u32,
2672 }
2673 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2674 impl ::core::marker::Copy for DOT11_PROVISION_DISCOVERY_REQUEST_SEND_COMPLETE_PARAMETERS {}
2675 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2676 impl ::core::clone::Clone for DOT11_PROVISION_DISCOVERY_REQUEST_SEND_COMPLETE_PARAMETERS {
clone(&self) -> Self2677     fn clone(&self) -> Self {
2678         *self
2679     }
2680 }
2681 pub const DOT11_PROVISION_DISCOVERY_REQUEST_SEND_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
2682 #[repr(C)]
2683 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2684 pub struct DOT11_PROVISION_DISCOVERY_RESPONSE_SEND_COMPLETE_PARAMETERS {
2685     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2686     pub ReceiverDeviceAddress: [u8; 6],
2687     pub DialogToken: u8,
2688     pub Status: i32,
2689     pub uIEsOffset: u32,
2690     pub uIEsLength: u32,
2691 }
2692 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2693 impl ::core::marker::Copy for DOT11_PROVISION_DISCOVERY_RESPONSE_SEND_COMPLETE_PARAMETERS {}
2694 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2695 impl ::core::clone::Clone for DOT11_PROVISION_DISCOVERY_RESPONSE_SEND_COMPLETE_PARAMETERS {
clone(&self) -> Self2696     fn clone(&self) -> Self {
2697         *self
2698     }
2699 }
2700 pub const DOT11_PROVISION_DISCOVERY_RESPONSE_SEND_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
2701 pub const DOT11_PSD_IE_MAX_DATA_SIZE: u32 = 240u32;
2702 pub const DOT11_PSD_IE_MAX_ENTRY_NUMBER: u32 = 5u32;
2703 #[repr(C)]
2704 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2705 pub struct DOT11_QOS_PARAMS {
2706     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2707     pub ucEnabledQoSProtocolFlags: u8,
2708 }
2709 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2710 impl ::core::marker::Copy for DOT11_QOS_PARAMS {}
2711 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2712 impl ::core::clone::Clone for DOT11_QOS_PARAMS {
clone(&self) -> Self2713     fn clone(&self) -> Self {
2714         *self
2715     }
2716 }
2717 pub const DOT11_QOS_PARAMS_REVISION_1: u32 = 1u32;
2718 #[repr(C)]
2719 pub struct DOT11_QOS_TX_DURATION {
2720     pub uNominalMSDUSize: u32,
2721     pub uMinPHYRate: u32,
2722     pub uDuration: u32,
2723 }
2724 impl ::core::marker::Copy for DOT11_QOS_TX_DURATION {}
2725 impl ::core::clone::Clone for DOT11_QOS_TX_DURATION {
clone(&self) -> Self2726     fn clone(&self) -> Self {
2727         *self
2728     }
2729 }
2730 #[repr(C)]
2731 pub struct DOT11_QOS_TX_MEDIUM_TIME {
2732     pub dot11PeerAddress: [u8; 6],
2733     pub ucQoSPriority: u8,
2734     pub uMediumTimeAdmited: u32,
2735 }
2736 impl ::core::marker::Copy for DOT11_QOS_TX_MEDIUM_TIME {}
2737 impl ::core::clone::Clone for DOT11_QOS_TX_MEDIUM_TIME {
clone(&self) -> Self2738     fn clone(&self) -> Self {
2739         *self
2740     }
2741 }
2742 pub type DOT11_RADIO_STATE = i32;
2743 pub const dot11_radio_state_unknown: DOT11_RADIO_STATE = 0i32;
2744 pub const dot11_radio_state_on: DOT11_RADIO_STATE = 1i32;
2745 pub const dot11_radio_state_off: DOT11_RADIO_STATE = 2i32;
2746 #[repr(C)]
2747 pub struct DOT11_RATE_SET {
2748     pub uRateSetLength: u32,
2749     pub ucRateSet: [u8; 126],
2750 }
2751 impl ::core::marker::Copy for DOT11_RATE_SET {}
2752 impl ::core::clone::Clone for DOT11_RATE_SET {
clone(&self) -> Self2753     fn clone(&self) -> Self {
2754         *self
2755     }
2756 }
2757 pub const DOT11_RATE_SET_MAX_LENGTH: u32 = 126u32;
2758 #[repr(C)]
2759 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2760 pub struct DOT11_RECEIVED_GO_NEGOTIATION_CONFIRMATION_PARAMETERS {
2761     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2762     pub PeerDeviceAddress: [u8; 6],
2763     pub DialogToken: u8,
2764     pub uIEsOffset: u32,
2765     pub uIEsLength: u32,
2766 }
2767 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2768 impl ::core::marker::Copy for DOT11_RECEIVED_GO_NEGOTIATION_CONFIRMATION_PARAMETERS {}
2769 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2770 impl ::core::clone::Clone for DOT11_RECEIVED_GO_NEGOTIATION_CONFIRMATION_PARAMETERS {
clone(&self) -> Self2771     fn clone(&self) -> Self {
2772         *self
2773     }
2774 }
2775 pub const DOT11_RECEIVED_GO_NEGOTIATION_CONFIRMATION_PARAMETERS_REVISION_1: u32 = 1u32;
2776 #[repr(C)]
2777 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2778 pub struct DOT11_RECEIVED_GO_NEGOTIATION_REQUEST_PARAMETERS {
2779     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2780     pub PeerDeviceAddress: [u8; 6],
2781     pub DialogToken: u8,
2782     pub RequestContext: *mut ::core::ffi::c_void,
2783     pub uIEsOffset: u32,
2784     pub uIEsLength: u32,
2785 }
2786 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2787 impl ::core::marker::Copy for DOT11_RECEIVED_GO_NEGOTIATION_REQUEST_PARAMETERS {}
2788 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2789 impl ::core::clone::Clone for DOT11_RECEIVED_GO_NEGOTIATION_REQUEST_PARAMETERS {
clone(&self) -> Self2790     fn clone(&self) -> Self {
2791         *self
2792     }
2793 }
2794 pub const DOT11_RECEIVED_GO_NEGOTIATION_REQUEST_PARAMETERS_REVISION_1: u32 = 1u32;
2795 #[repr(C)]
2796 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2797 pub struct DOT11_RECEIVED_GO_NEGOTIATION_RESPONSE_PARAMETERS {
2798     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2799     pub PeerDeviceAddress: [u8; 6],
2800     pub DialogToken: u8,
2801     pub ResponseContext: *mut ::core::ffi::c_void,
2802     pub uIEsOffset: u32,
2803     pub uIEsLength: u32,
2804 }
2805 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2806 impl ::core::marker::Copy for DOT11_RECEIVED_GO_NEGOTIATION_RESPONSE_PARAMETERS {}
2807 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2808 impl ::core::clone::Clone for DOT11_RECEIVED_GO_NEGOTIATION_RESPONSE_PARAMETERS {
clone(&self) -> Self2809     fn clone(&self) -> Self {
2810         *self
2811     }
2812 }
2813 pub const DOT11_RECEIVED_GO_NEGOTIATION_RESPONSE_PARAMETERS_REVISION_1: u32 = 1u32;
2814 #[repr(C)]
2815 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2816 pub struct DOT11_RECEIVED_INVITATION_REQUEST_PARAMETERS {
2817     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2818     pub TransmitterDeviceAddress: [u8; 6],
2819     pub BSSID: [u8; 6],
2820     pub DialogToken: u8,
2821     pub RequestContext: *mut ::core::ffi::c_void,
2822     pub uIEsOffset: u32,
2823     pub uIEsLength: u32,
2824 }
2825 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2826 impl ::core::marker::Copy for DOT11_RECEIVED_INVITATION_REQUEST_PARAMETERS {}
2827 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2828 impl ::core::clone::Clone for DOT11_RECEIVED_INVITATION_REQUEST_PARAMETERS {
clone(&self) -> Self2829     fn clone(&self) -> Self {
2830         *self
2831     }
2832 }
2833 pub const DOT11_RECEIVED_INVITATION_REQUEST_PARAMETERS_REVISION_1: u32 = 1u32;
2834 #[repr(C)]
2835 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2836 pub struct DOT11_RECEIVED_INVITATION_RESPONSE_PARAMETERS {
2837     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2838     pub TransmitterDeviceAddress: [u8; 6],
2839     pub BSSID: [u8; 6],
2840     pub DialogToken: u8,
2841     pub uIEsOffset: u32,
2842     pub uIEsLength: u32,
2843 }
2844 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2845 impl ::core::marker::Copy for DOT11_RECEIVED_INVITATION_RESPONSE_PARAMETERS {}
2846 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2847 impl ::core::clone::Clone for DOT11_RECEIVED_INVITATION_RESPONSE_PARAMETERS {
clone(&self) -> Self2848     fn clone(&self) -> Self {
2849         *self
2850     }
2851 }
2852 pub const DOT11_RECEIVED_INVITATION_RESPONSE_PARAMETERS_REVISION_1: u32 = 1u32;
2853 #[repr(C)]
2854 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2855 pub struct DOT11_RECEIVED_PROVISION_DISCOVERY_REQUEST_PARAMETERS {
2856     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2857     pub TransmitterDeviceAddress: [u8; 6],
2858     pub BSSID: [u8; 6],
2859     pub DialogToken: u8,
2860     pub RequestContext: *mut ::core::ffi::c_void,
2861     pub uIEsOffset: u32,
2862     pub uIEsLength: u32,
2863 }
2864 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2865 impl ::core::marker::Copy for DOT11_RECEIVED_PROVISION_DISCOVERY_REQUEST_PARAMETERS {}
2866 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2867 impl ::core::clone::Clone for DOT11_RECEIVED_PROVISION_DISCOVERY_REQUEST_PARAMETERS {
clone(&self) -> Self2868     fn clone(&self) -> Self {
2869         *self
2870     }
2871 }
2872 pub const DOT11_RECEIVED_PROVISION_DISCOVERY_REQUEST_PARAMETERS_REVISION_1: u32 = 1u32;
2873 #[repr(C)]
2874 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2875 pub struct DOT11_RECEIVED_PROVISION_DISCOVERY_RESPONSE_PARAMETERS {
2876     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
2877     pub TransmitterDeviceAddress: [u8; 6],
2878     pub BSSID: [u8; 6],
2879     pub DialogToken: u8,
2880     pub uIEsOffset: u32,
2881     pub uIEsLength: u32,
2882 }
2883 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2884 impl ::core::marker::Copy for DOT11_RECEIVED_PROVISION_DISCOVERY_RESPONSE_PARAMETERS {}
2885 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
2886 impl ::core::clone::Clone for DOT11_RECEIVED_PROVISION_DISCOVERY_RESPONSE_PARAMETERS {
clone(&self) -> Self2887     fn clone(&self) -> Self {
2888         *self
2889     }
2890 }
2891 pub const DOT11_RECEIVED_PROVISION_DISCOVERY_RESPONSE_PARAMETERS_REVISION_1: u32 = 1u32;
2892 pub const DOT11_RECV_CONTEXT_REVISION_1: u32 = 1u32;
2893 #[repr(C)]
2894 #[cfg(feature = "Win32_Foundation")]
2895 pub struct DOT11_RECV_EXTENSION_INFO {
2896     pub uVersion: u32,
2897     pub pvReserved: *mut ::core::ffi::c_void,
2898     pub dot11PhyType: DOT11_PHY_TYPE,
2899     pub uChCenterFrequency: u32,
2900     pub lRSSI: i32,
2901     pub lRSSIMin: i32,
2902     pub lRSSIMax: i32,
2903     pub uRSSI: u32,
2904     pub ucPriority: u8,
2905     pub ucDataRate: u8,
2906     pub ucPeerMacAddress: [u8; 6],
2907     pub dwExtendedStatus: u32,
2908     pub hWEPOffloadContext: super::super::Foundation::HANDLE,
2909     pub hAuthOffloadContext: super::super::Foundation::HANDLE,
2910     pub usWEPAppliedMask: u16,
2911     pub usWPAMSDUPriority: u16,
2912     pub dot11LowestIV48Counter: DOT11_IV48_COUNTER,
2913     pub usDot11LeftRWBitMap: u16,
2914     pub dot11HighestIV48Counter: DOT11_IV48_COUNTER,
2915     pub usDot11RightRWBitMap: u16,
2916     pub usNumberOfMPDUsReceived: u16,
2917     pub usNumberOfFragments: u16,
2918     pub pNdisPackets: [*mut ::core::ffi::c_void; 1],
2919 }
2920 #[cfg(feature = "Win32_Foundation")]
2921 impl ::core::marker::Copy for DOT11_RECV_EXTENSION_INFO {}
2922 #[cfg(feature = "Win32_Foundation")]
2923 impl ::core::clone::Clone for DOT11_RECV_EXTENSION_INFO {
clone(&self) -> Self2924     fn clone(&self) -> Self {
2925         *self
2926     }
2927 }
2928 #[repr(C)]
2929 #[cfg(feature = "Win32_Foundation")]
2930 pub struct DOT11_RECV_EXTENSION_INFO_V2 {
2931     pub uVersion: u32,
2932     pub pvReserved: *mut ::core::ffi::c_void,
2933     pub dot11PhyType: DOT11_PHY_TYPE,
2934     pub uChCenterFrequency: u32,
2935     pub lRSSI: i32,
2936     pub uRSSI: u32,
2937     pub ucPriority: u8,
2938     pub ucDataRate: u8,
2939     pub ucPeerMacAddress: [u8; 6],
2940     pub dwExtendedStatus: u32,
2941     pub hWEPOffloadContext: super::super::Foundation::HANDLE,
2942     pub hAuthOffloadContext: super::super::Foundation::HANDLE,
2943     pub usWEPAppliedMask: u16,
2944     pub usWPAMSDUPriority: u16,
2945     pub dot11LowestIV48Counter: DOT11_IV48_COUNTER,
2946     pub usDot11LeftRWBitMap: u16,
2947     pub dot11HighestIV48Counter: DOT11_IV48_COUNTER,
2948     pub usDot11RightRWBitMap: u16,
2949     pub usNumberOfMPDUsReceived: u16,
2950     pub usNumberOfFragments: u16,
2951     pub pNdisPackets: [*mut ::core::ffi::c_void; 1],
2952 }
2953 #[cfg(feature = "Win32_Foundation")]
2954 impl ::core::marker::Copy for DOT11_RECV_EXTENSION_INFO_V2 {}
2955 #[cfg(feature = "Win32_Foundation")]
2956 impl ::core::clone::Clone for DOT11_RECV_EXTENSION_INFO_V2 {
clone(&self) -> Self2957     fn clone(&self) -> Self {
2958         *self
2959     }
2960 }
2961 #[repr(C)]
2962 pub struct DOT11_RECV_SENSITIVITY {
2963     pub ucDataRate: u8,
2964     pub lRSSIMin: i32,
2965     pub lRSSIMax: i32,
2966 }
2967 impl ::core::marker::Copy for DOT11_RECV_SENSITIVITY {}
2968 impl ::core::clone::Clone for DOT11_RECV_SENSITIVITY {
clone(&self) -> Self2969     fn clone(&self) -> Self {
2970         *self
2971     }
2972 }
2973 #[repr(C)]
2974 pub struct DOT11_RECV_SENSITIVITY_LIST {
2975     pub Anonymous: DOT11_RECV_SENSITIVITY_LIST_0,
2976     pub uNumOfEntries: u32,
2977     pub uTotalNumOfEntries: u32,
2978     pub dot11RecvSensitivity: [DOT11_RECV_SENSITIVITY; 1],
2979 }
2980 impl ::core::marker::Copy for DOT11_RECV_SENSITIVITY_LIST {}
2981 impl ::core::clone::Clone for DOT11_RECV_SENSITIVITY_LIST {
clone(&self) -> Self2982     fn clone(&self) -> Self {
2983         *self
2984     }
2985 }
2986 #[repr(C)]
2987 pub union DOT11_RECV_SENSITIVITY_LIST_0 {
2988     pub dot11PhyType: DOT11_PHY_TYPE,
2989     pub uPhyId: u32,
2990 }
2991 impl ::core::marker::Copy for DOT11_RECV_SENSITIVITY_LIST_0 {}
2992 impl ::core::clone::Clone for DOT11_RECV_SENSITIVITY_LIST_0 {
clone(&self) -> Self2993     fn clone(&self) -> Self {
2994         *self
2995     }
2996 }
2997 #[repr(C)]
2998 pub struct DOT11_REG_DOMAINS_SUPPORT_VALUE {
2999     pub uNumOfEntries: u32,
3000     pub uTotalNumOfEntries: u32,
3001     pub dot11RegDomainValue: [DOT11_REG_DOMAIN_VALUE; 1],
3002 }
3003 impl ::core::marker::Copy for DOT11_REG_DOMAINS_SUPPORT_VALUE {}
3004 impl ::core::clone::Clone for DOT11_REG_DOMAINS_SUPPORT_VALUE {
clone(&self) -> Self3005     fn clone(&self) -> Self {
3006         *self
3007     }
3008 }
3009 pub const DOT11_REG_DOMAIN_DOC: u32 = 32u32;
3010 pub const DOT11_REG_DOMAIN_ETSI: u32 = 48u32;
3011 pub const DOT11_REG_DOMAIN_FCC: u32 = 16u32;
3012 pub const DOT11_REG_DOMAIN_FRANCE: u32 = 50u32;
3013 pub const DOT11_REG_DOMAIN_MKK: u32 = 64u32;
3014 pub const DOT11_REG_DOMAIN_OTHER: u32 = 0u32;
3015 pub const DOT11_REG_DOMAIN_SPAIN: u32 = 49u32;
3016 #[repr(C)]
3017 pub struct DOT11_REG_DOMAIN_VALUE {
3018     pub uRegDomainsSupportIndex: u32,
3019     pub uRegDomainsSupportValue: u32,
3020 }
3021 impl ::core::marker::Copy for DOT11_REG_DOMAIN_VALUE {}
3022 impl ::core::clone::Clone for DOT11_REG_DOMAIN_VALUE {
clone(&self) -> Self3023     fn clone(&self) -> Self {
3024         *self
3025     }
3026 }
3027 #[repr(C)]
3028 #[cfg(feature = "Win32_Foundation")]
3029 pub struct DOT11_RESET_REQUEST {
3030     pub dot11ResetType: DOT11_RESET_TYPE,
3031     pub dot11MacAddress: [u8; 6],
3032     pub bSetDefaultMIB: super::super::Foundation::BOOLEAN,
3033 }
3034 #[cfg(feature = "Win32_Foundation")]
3035 impl ::core::marker::Copy for DOT11_RESET_REQUEST {}
3036 #[cfg(feature = "Win32_Foundation")]
3037 impl ::core::clone::Clone for DOT11_RESET_REQUEST {
clone(&self) -> Self3038     fn clone(&self) -> Self {
3039         *self
3040     }
3041 }
3042 pub type DOT11_RESET_TYPE = i32;
3043 pub const dot11_reset_type_phy: DOT11_RESET_TYPE = 1i32;
3044 pub const dot11_reset_type_mac: DOT11_RESET_TYPE = 2i32;
3045 pub const dot11_reset_type_phy_and_mac: DOT11_RESET_TYPE = 3i32;
3046 #[repr(C)]
3047 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3048 pub struct DOT11_ROAMING_COMPLETION_PARAMETERS {
3049     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3050     pub uStatus: u32,
3051 }
3052 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3053 impl ::core::marker::Copy for DOT11_ROAMING_COMPLETION_PARAMETERS {}
3054 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3055 impl ::core::clone::Clone for DOT11_ROAMING_COMPLETION_PARAMETERS {
clone(&self) -> Self3056     fn clone(&self) -> Self {
3057         *self
3058     }
3059 }
3060 pub const DOT11_ROAMING_COMPLETION_PARAMETERS_REVISION_1: u32 = 1u32;
3061 #[repr(C)]
3062 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3063 pub struct DOT11_ROAMING_START_PARAMETERS {
3064     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3065     pub AdhocBSSID: [u8; 6],
3066     pub AdhocSSID: DOT11_SSID,
3067     pub uRoamingReason: u32,
3068 }
3069 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3070 impl ::core::marker::Copy for DOT11_ROAMING_START_PARAMETERS {}
3071 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3072 impl ::core::clone::Clone for DOT11_ROAMING_START_PARAMETERS {
clone(&self) -> Self3073     fn clone(&self) -> Self {
3074         *self
3075     }
3076 }
3077 pub const DOT11_ROAMING_START_PARAMETERS_REVISION_1: u32 = 1u32;
3078 #[repr(C)]
3079 pub struct DOT11_RSSI_RANGE {
3080     pub dot11PhyType: DOT11_PHY_TYPE,
3081     pub uRSSIMin: u32,
3082     pub uRSSIMax: u32,
3083 }
3084 impl ::core::marker::Copy for DOT11_RSSI_RANGE {}
3085 impl ::core::clone::Clone for DOT11_RSSI_RANGE {
clone(&self) -> Self3086     fn clone(&self) -> Self {
3087         *self
3088     }
3089 }
3090 #[repr(C)]
3091 #[cfg(feature = "Win32_Foundation")]
3092 pub struct DOT11_SCAN_REQUEST {
3093     pub dot11BSSType: DOT11_BSS_TYPE,
3094     pub dot11BSSID: [u8; 6],
3095     pub dot11SSID: DOT11_SSID,
3096     pub dot11ScanType: DOT11_SCAN_TYPE,
3097     pub bRestrictedScan: super::super::Foundation::BOOLEAN,
3098     pub bUseRequestIE: super::super::Foundation::BOOLEAN,
3099     pub uRequestIDsOffset: u32,
3100     pub uNumOfRequestIDs: u32,
3101     pub uPhyTypesOffset: u32,
3102     pub uNumOfPhyTypes: u32,
3103     pub uIEsOffset: u32,
3104     pub uIEsLength: u32,
3105     pub ucBuffer: [u8; 1],
3106 }
3107 #[cfg(feature = "Win32_Foundation")]
3108 impl ::core::marker::Copy for DOT11_SCAN_REQUEST {}
3109 #[cfg(feature = "Win32_Foundation")]
3110 impl ::core::clone::Clone for DOT11_SCAN_REQUEST {
clone(&self) -> Self3111     fn clone(&self) -> Self {
3112         *self
3113     }
3114 }
3115 #[repr(C)]
3116 #[cfg(feature = "Win32_Foundation")]
3117 pub struct DOT11_SCAN_REQUEST_V2 {
3118     pub dot11BSSType: DOT11_BSS_TYPE,
3119     pub dot11BSSID: [u8; 6],
3120     pub dot11ScanType: DOT11_SCAN_TYPE,
3121     pub bRestrictedScan: super::super::Foundation::BOOLEAN,
3122     pub udot11SSIDsOffset: u32,
3123     pub uNumOfdot11SSIDs: u32,
3124     pub bUseRequestIE: super::super::Foundation::BOOLEAN,
3125     pub uRequestIDsOffset: u32,
3126     pub uNumOfRequestIDs: u32,
3127     pub uPhyTypeInfosOffset: u32,
3128     pub uNumOfPhyTypeInfos: u32,
3129     pub uIEsOffset: u32,
3130     pub uIEsLength: u32,
3131     pub ucBuffer: [u8; 1],
3132 }
3133 #[cfg(feature = "Win32_Foundation")]
3134 impl ::core::marker::Copy for DOT11_SCAN_REQUEST_V2 {}
3135 #[cfg(feature = "Win32_Foundation")]
3136 impl ::core::clone::Clone for DOT11_SCAN_REQUEST_V2 {
clone(&self) -> Self3137     fn clone(&self) -> Self {
3138         *self
3139     }
3140 }
3141 pub type DOT11_SCAN_TYPE = i32;
3142 pub const dot11_scan_type_active: DOT11_SCAN_TYPE = 1i32;
3143 pub const dot11_scan_type_passive: DOT11_SCAN_TYPE = 2i32;
3144 pub const dot11_scan_type_auto: DOT11_SCAN_TYPE = 3i32;
3145 pub const dot11_scan_type_forced: DOT11_SCAN_TYPE = -2147483648i32;
3146 pub const DOT11_SEND_CONTEXT_REVISION_1: u32 = 1u32;
3147 #[repr(C)]
3148 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3149 pub struct DOT11_SEND_GO_NEGOTIATION_CONFIRMATION_PARAMETERS {
3150     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3151     pub PeerDeviceAddress: [u8; 6],
3152     pub DialogToken: u8,
3153     pub ResponseContext: *mut ::core::ffi::c_void,
3154     pub uSendTimeout: u32,
3155     pub Status: u8,
3156     pub GroupCapability: u8,
3157     pub GroupID: DOT11_WFD_GROUP_ID,
3158     pub bUseGroupID: super::super::Foundation::BOOLEAN,
3159     pub uIEsOffset: u32,
3160     pub uIEsLength: u32,
3161 }
3162 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3163 impl ::core::marker::Copy for DOT11_SEND_GO_NEGOTIATION_CONFIRMATION_PARAMETERS {}
3164 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3165 impl ::core::clone::Clone for DOT11_SEND_GO_NEGOTIATION_CONFIRMATION_PARAMETERS {
clone(&self) -> Self3166     fn clone(&self) -> Self {
3167         *self
3168     }
3169 }
3170 pub const DOT11_SEND_GO_NEGOTIATION_CONFIRMATION_PARAMETERS_REVISION_1: u32 = 1u32;
3171 #[repr(C)]
3172 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3173 pub struct DOT11_SEND_GO_NEGOTIATION_REQUEST_PARAMETERS {
3174     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3175     pub PeerDeviceAddress: [u8; 6],
3176     pub DialogToken: u8,
3177     pub uSendTimeout: u32,
3178     pub GroupOwnerIntent: DOT11_WFD_GO_INTENT,
3179     pub MinimumConfigTimeout: DOT11_WFD_CONFIGURATION_TIMEOUT,
3180     pub IntendedInterfaceAddress: [u8; 6],
3181     pub GroupCapability: u8,
3182     pub uIEsOffset: u32,
3183     pub uIEsLength: u32,
3184 }
3185 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3186 impl ::core::marker::Copy for DOT11_SEND_GO_NEGOTIATION_REQUEST_PARAMETERS {}
3187 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3188 impl ::core::clone::Clone for DOT11_SEND_GO_NEGOTIATION_REQUEST_PARAMETERS {
clone(&self) -> Self3189     fn clone(&self) -> Self {
3190         *self
3191     }
3192 }
3193 pub const DOT11_SEND_GO_NEGOTIATION_REQUEST_PARAMETERS_REVISION_1: u32 = 1u32;
3194 #[repr(C)]
3195 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3196 pub struct DOT11_SEND_GO_NEGOTIATION_RESPONSE_PARAMETERS {
3197     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3198     pub PeerDeviceAddress: [u8; 6],
3199     pub DialogToken: u8,
3200     pub RequestContext: *mut ::core::ffi::c_void,
3201     pub uSendTimeout: u32,
3202     pub Status: u8,
3203     pub GroupOwnerIntent: DOT11_WFD_GO_INTENT,
3204     pub MinimumConfigTimeout: DOT11_WFD_CONFIGURATION_TIMEOUT,
3205     pub IntendedInterfaceAddress: [u8; 6],
3206     pub GroupCapability: u8,
3207     pub GroupID: DOT11_WFD_GROUP_ID,
3208     pub bUseGroupID: super::super::Foundation::BOOLEAN,
3209     pub uIEsOffset: u32,
3210     pub uIEsLength: u32,
3211 }
3212 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3213 impl ::core::marker::Copy for DOT11_SEND_GO_NEGOTIATION_RESPONSE_PARAMETERS {}
3214 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3215 impl ::core::clone::Clone for DOT11_SEND_GO_NEGOTIATION_RESPONSE_PARAMETERS {
clone(&self) -> Self3216     fn clone(&self) -> Self {
3217         *self
3218     }
3219 }
3220 pub const DOT11_SEND_GO_NEGOTIATION_RESPONSE_PARAMETERS_REVISION_1: u32 = 1u32;
3221 #[repr(C)]
3222 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3223 pub struct DOT11_SEND_INVITATION_REQUEST_PARAMETERS {
3224     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3225     pub DialogToken: u8,
3226     pub PeerDeviceAddress: [u8; 6],
3227     pub uSendTimeout: u32,
3228     pub MinimumConfigTimeout: DOT11_WFD_CONFIGURATION_TIMEOUT,
3229     pub InvitationFlags: DOT11_WFD_INVITATION_FLAGS,
3230     pub GroupBSSID: [u8; 6],
3231     pub bUseGroupBSSID: super::super::Foundation::BOOLEAN,
3232     pub OperatingChannel: DOT11_WFD_CHANNEL,
3233     pub bUseSpecifiedOperatingChannel: super::super::Foundation::BOOLEAN,
3234     pub GroupID: DOT11_WFD_GROUP_ID,
3235     pub bLocalGO: super::super::Foundation::BOOLEAN,
3236     pub uIEsOffset: u32,
3237     pub uIEsLength: u32,
3238 }
3239 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3240 impl ::core::marker::Copy for DOT11_SEND_INVITATION_REQUEST_PARAMETERS {}
3241 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3242 impl ::core::clone::Clone for DOT11_SEND_INVITATION_REQUEST_PARAMETERS {
clone(&self) -> Self3243     fn clone(&self) -> Self {
3244         *self
3245     }
3246 }
3247 pub const DOT11_SEND_INVITATION_REQUEST_PARAMETERS_REVISION_1: u32 = 1u32;
3248 #[repr(C)]
3249 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3250 pub struct DOT11_SEND_INVITATION_RESPONSE_PARAMETERS {
3251     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3252     pub ReceiverDeviceAddress: [u8; 6],
3253     pub DialogToken: u8,
3254     pub RequestContext: *mut ::core::ffi::c_void,
3255     pub uSendTimeout: u32,
3256     pub Status: u8,
3257     pub MinimumConfigTimeout: DOT11_WFD_CONFIGURATION_TIMEOUT,
3258     pub GroupBSSID: [u8; 6],
3259     pub bUseGroupBSSID: super::super::Foundation::BOOLEAN,
3260     pub OperatingChannel: DOT11_WFD_CHANNEL,
3261     pub bUseSpecifiedOperatingChannel: super::super::Foundation::BOOLEAN,
3262     pub uIEsOffset: u32,
3263     pub uIEsLength: u32,
3264 }
3265 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3266 impl ::core::marker::Copy for DOT11_SEND_INVITATION_RESPONSE_PARAMETERS {}
3267 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3268 impl ::core::clone::Clone for DOT11_SEND_INVITATION_RESPONSE_PARAMETERS {
clone(&self) -> Self3269     fn clone(&self) -> Self {
3270         *self
3271     }
3272 }
3273 pub const DOT11_SEND_INVITATION_RESPONSE_PARAMETERS_REVISION_1: u32 = 1u32;
3274 #[repr(C)]
3275 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3276 pub struct DOT11_SEND_PROVISION_DISCOVERY_REQUEST_PARAMETERS {
3277     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3278     pub DialogToken: u8,
3279     pub PeerDeviceAddress: [u8; 6],
3280     pub uSendTimeout: u32,
3281     pub GroupCapability: u8,
3282     pub GroupID: DOT11_WFD_GROUP_ID,
3283     pub bUseGroupID: super::super::Foundation::BOOLEAN,
3284     pub uIEsOffset: u32,
3285     pub uIEsLength: u32,
3286 }
3287 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3288 impl ::core::marker::Copy for DOT11_SEND_PROVISION_DISCOVERY_REQUEST_PARAMETERS {}
3289 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3290 impl ::core::clone::Clone for DOT11_SEND_PROVISION_DISCOVERY_REQUEST_PARAMETERS {
clone(&self) -> Self3291     fn clone(&self) -> Self {
3292         *self
3293     }
3294 }
3295 pub const DOT11_SEND_PROVISION_DISCOVERY_REQUEST_PARAMETERS_REVISION_1: u32 = 1u32;
3296 #[repr(C)]
3297 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3298 pub struct DOT11_SEND_PROVISION_DISCOVERY_RESPONSE_PARAMETERS {
3299     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3300     pub ReceiverDeviceAddress: [u8; 6],
3301     pub DialogToken: u8,
3302     pub RequestContext: *mut ::core::ffi::c_void,
3303     pub uSendTimeout: u32,
3304     pub uIEsOffset: u32,
3305     pub uIEsLength: u32,
3306 }
3307 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3308 impl ::core::marker::Copy for DOT11_SEND_PROVISION_DISCOVERY_RESPONSE_PARAMETERS {}
3309 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3310 impl ::core::clone::Clone for DOT11_SEND_PROVISION_DISCOVERY_RESPONSE_PARAMETERS {
clone(&self) -> Self3311     fn clone(&self) -> Self {
3312         *self
3313     }
3314 }
3315 pub const DOT11_SEND_PROVISION_DISCOVERY_RESPONSE_PARAMETERS_REVISION_1: u32 = 1u32;
3316 pub const DOT11_SERVICE_CLASS_REORDERABLE_MULTICAST: u32 = 0u32;
3317 pub const DOT11_SERVICE_CLASS_STRICTLY_ORDERED: u32 = 1u32;
3318 #[repr(C)]
3319 pub struct DOT11_SSID {
3320     pub uSSIDLength: u32,
3321     pub ucSSID: [u8; 32],
3322 }
3323 impl ::core::marker::Copy for DOT11_SSID {}
3324 impl ::core::clone::Clone for DOT11_SSID {
clone(&self) -> Self3325     fn clone(&self) -> Self {
3326         *self
3327     }
3328 }
3329 #[repr(C)]
3330 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3331 pub struct DOT11_SSID_LIST {
3332     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3333     pub uNumOfEntries: u32,
3334     pub uTotalNumOfEntries: u32,
3335     pub SSIDs: [DOT11_SSID; 1],
3336 }
3337 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3338 impl ::core::marker::Copy for DOT11_SSID_LIST {}
3339 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3340 impl ::core::clone::Clone for DOT11_SSID_LIST {
clone(&self) -> Self3341     fn clone(&self) -> Self {
3342         *self
3343     }
3344 }
3345 pub const DOT11_SSID_LIST_REVISION_1: u32 = 1u32;
3346 pub const DOT11_SSID_MAX_LENGTH: u32 = 32u32;
3347 #[repr(C)]
3348 pub struct DOT11_START_REQUEST {
3349     pub uStartFailureTimeout: u32,
3350     pub OperationalRateSet: DOT11_RATE_SET,
3351     pub uChCenterFrequency: u32,
3352     pub dot11BSSDescription: DOT11_BSS_DESCRIPTION,
3353 }
3354 impl ::core::marker::Copy for DOT11_START_REQUEST {}
3355 impl ::core::clone::Clone for DOT11_START_REQUEST {
clone(&self) -> Self3356     fn clone(&self) -> Self {
3357         *self
3358     }
3359 }
3360 #[repr(C)]
3361 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3362 pub struct DOT11_STATISTICS {
3363     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3364     pub ullFourWayHandshakeFailures: u64,
3365     pub ullTKIPCounterMeasuresInvoked: u64,
3366     pub ullReserved: u64,
3367     pub MacUcastCounters: DOT11_MAC_FRAME_STATISTICS,
3368     pub MacMcastCounters: DOT11_MAC_FRAME_STATISTICS,
3369     pub PhyCounters: [DOT11_PHY_FRAME_STATISTICS; 1],
3370 }
3371 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3372 impl ::core::marker::Copy for DOT11_STATISTICS {}
3373 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3374 impl ::core::clone::Clone for DOT11_STATISTICS {
clone(&self) -> Self3375     fn clone(&self) -> Self {
3376         *self
3377     }
3378 }
3379 pub const DOT11_STATISTICS_REVISION_1: u32 = 1u32;
3380 pub const DOT11_STATUS_AP_JOIN_CONFIRM: u32 = 5u32;
3381 pub const DOT11_STATUS_AUTH_FAILED: u32 = 131072u32;
3382 pub const DOT11_STATUS_AUTH_NOT_VERIFIED: u32 = 32768u32;
3383 pub const DOT11_STATUS_AUTH_VERIFIED: u32 = 65536u32;
3384 pub const DOT11_STATUS_ENCRYPTION_FAILED: u32 = 512u32;
3385 pub const DOT11_STATUS_EXCESSIVE_DATA_LENGTH: u32 = 256u32;
3386 pub const DOT11_STATUS_GENERATE_AUTH_FAILED: u32 = 16384u32;
3387 pub const DOT11_STATUS_ICV_VERIFIED: u32 = 2048u32;
3388 #[repr(C)]
3389 pub struct DOT11_STATUS_INDICATION {
3390     pub uStatusType: u32,
3391     pub ndisStatus: i32,
3392 }
3393 impl ::core::marker::Copy for DOT11_STATUS_INDICATION {}
3394 impl ::core::clone::Clone for DOT11_STATUS_INDICATION {
clone(&self) -> Self3395     fn clone(&self) -> Self {
3396         *self
3397     }
3398 }
3399 pub const DOT11_STATUS_JOIN_CONFIRM: u32 = 2u32;
3400 pub const DOT11_STATUS_MPDU_MAX_LENGTH_CHANGED: u32 = 6u32;
3401 pub const DOT11_STATUS_PACKET_NOT_REASSEMBLED: u32 = 8192u32;
3402 pub const DOT11_STATUS_PACKET_REASSEMBLED: u32 = 4096u32;
3403 pub const DOT11_STATUS_PS_LIFETIME_EXPIRED: u32 = 262144u32;
3404 pub const DOT11_STATUS_RESET_CONFIRM: u32 = 4u32;
3405 pub const DOT11_STATUS_RETRY_LIMIT_EXCEEDED: u32 = 2u32;
3406 pub const DOT11_STATUS_SCAN_CONFIRM: u32 = 1u32;
3407 pub const DOT11_STATUS_START_CONFIRM: u32 = 3u32;
3408 pub const DOT11_STATUS_SUCCESS: u32 = 1u32;
3409 pub const DOT11_STATUS_UNAVAILABLE_BSS: u32 = 128u32;
3410 pub const DOT11_STATUS_UNAVAILABLE_PRIORITY: u32 = 16u32;
3411 pub const DOT11_STATUS_UNAVAILABLE_SERVICE_CLASS: u32 = 32u32;
3412 pub const DOT11_STATUS_UNSUPPORTED_PRIORITY: u32 = 4u32;
3413 pub const DOT11_STATUS_UNSUPPORTED_SERVICE_CLASS: u32 = 8u32;
3414 pub const DOT11_STATUS_WEP_KEY_UNAVAILABLE: u32 = 1024u32;
3415 pub const DOT11_STATUS_XMIT_MSDU_TIMER_EXPIRED: u32 = 64u32;
3416 #[repr(C)]
3417 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3418 pub struct DOT11_STOP_AP_PARAMETERS {
3419     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3420     pub ulReason: u32,
3421 }
3422 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3423 impl ::core::marker::Copy for DOT11_STOP_AP_PARAMETERS {}
3424 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3425 impl ::core::clone::Clone for DOT11_STOP_AP_PARAMETERS {
clone(&self) -> Self3426     fn clone(&self) -> Self {
3427         *self
3428     }
3429 }
3430 pub const DOT11_STOP_AP_PARAMETERS_REVISION_1: u32 = 1u32;
3431 pub const DOT11_STOP_AP_REASON_AP_ACTIVE: u32 = 3u32;
3432 pub const DOT11_STOP_AP_REASON_CHANNEL_NOT_AVAILABLE: u32 = 2u32;
3433 pub const DOT11_STOP_AP_REASON_FREQUENCY_NOT_AVAILABLE: u32 = 1u32;
3434 pub const DOT11_STOP_AP_REASON_IHV_END: u32 = 4294967295u32;
3435 pub const DOT11_STOP_AP_REASON_IHV_START: u32 = 4278190080u32;
3436 #[repr(C)]
3437 #[cfg(feature = "Win32_Foundation")]
3438 pub struct DOT11_SUPPORTED_ANTENNA {
3439     pub uAntennaListIndex: u32,
3440     pub bSupportedAntenna: super::super::Foundation::BOOLEAN,
3441 }
3442 #[cfg(feature = "Win32_Foundation")]
3443 impl ::core::marker::Copy for DOT11_SUPPORTED_ANTENNA {}
3444 #[cfg(feature = "Win32_Foundation")]
3445 impl ::core::clone::Clone for DOT11_SUPPORTED_ANTENNA {
clone(&self) -> Self3446     fn clone(&self) -> Self {
3447         *self
3448     }
3449 }
3450 #[repr(C)]
3451 #[cfg(feature = "Win32_Foundation")]
3452 pub struct DOT11_SUPPORTED_ANTENNA_LIST {
3453     pub uNumOfEntries: u32,
3454     pub uTotalNumOfEntries: u32,
3455     pub dot11SupportedAntenna: [DOT11_SUPPORTED_ANTENNA; 1],
3456 }
3457 #[cfg(feature = "Win32_Foundation")]
3458 impl ::core::marker::Copy for DOT11_SUPPORTED_ANTENNA_LIST {}
3459 #[cfg(feature = "Win32_Foundation")]
3460 impl ::core::clone::Clone for DOT11_SUPPORTED_ANTENNA_LIST {
clone(&self) -> Self3461     fn clone(&self) -> Self {
3462         *self
3463     }
3464 }
3465 #[repr(C)]
3466 pub struct DOT11_SUPPORTED_DATA_RATES_VALUE {
3467     pub ucSupportedTxDataRatesValue: [u8; 8],
3468     pub ucSupportedRxDataRatesValue: [u8; 8],
3469 }
3470 impl ::core::marker::Copy for DOT11_SUPPORTED_DATA_RATES_VALUE {}
3471 impl ::core::clone::Clone for DOT11_SUPPORTED_DATA_RATES_VALUE {
clone(&self) -> Self3472     fn clone(&self) -> Self {
3473         *self
3474     }
3475 }
3476 #[repr(C)]
3477 pub struct DOT11_SUPPORTED_DATA_RATES_VALUE_V2 {
3478     pub ucSupportedTxDataRatesValue: [u8; 255],
3479     pub ucSupportedRxDataRatesValue: [u8; 255],
3480 }
3481 impl ::core::marker::Copy for DOT11_SUPPORTED_DATA_RATES_VALUE_V2 {}
3482 impl ::core::clone::Clone for DOT11_SUPPORTED_DATA_RATES_VALUE_V2 {
clone(&self) -> Self3483     fn clone(&self) -> Self {
3484         *self
3485     }
3486 }
3487 #[repr(C)]
3488 pub struct DOT11_SUPPORTED_DSSS_CHANNEL {
3489     pub uChannel: u32,
3490 }
3491 impl ::core::marker::Copy for DOT11_SUPPORTED_DSSS_CHANNEL {}
3492 impl ::core::clone::Clone for DOT11_SUPPORTED_DSSS_CHANNEL {
clone(&self) -> Self3493     fn clone(&self) -> Self {
3494         *self
3495     }
3496 }
3497 #[repr(C)]
3498 pub struct DOT11_SUPPORTED_DSSS_CHANNEL_LIST {
3499     pub uNumOfEntries: u32,
3500     pub uTotalNumOfEntries: u32,
3501     pub dot11SupportedDSSSChannel: [DOT11_SUPPORTED_DSSS_CHANNEL; 1],
3502 }
3503 impl ::core::marker::Copy for DOT11_SUPPORTED_DSSS_CHANNEL_LIST {}
3504 impl ::core::clone::Clone for DOT11_SUPPORTED_DSSS_CHANNEL_LIST {
clone(&self) -> Self3505     fn clone(&self) -> Self {
3506         *self
3507     }
3508 }
3509 #[repr(C)]
3510 pub struct DOT11_SUPPORTED_OFDM_FREQUENCY {
3511     pub uCenterFrequency: u32,
3512 }
3513 impl ::core::marker::Copy for DOT11_SUPPORTED_OFDM_FREQUENCY {}
3514 impl ::core::clone::Clone for DOT11_SUPPORTED_OFDM_FREQUENCY {
clone(&self) -> Self3515     fn clone(&self) -> Self {
3516         *self
3517     }
3518 }
3519 #[repr(C)]
3520 pub struct DOT11_SUPPORTED_OFDM_FREQUENCY_LIST {
3521     pub uNumOfEntries: u32,
3522     pub uTotalNumOfEntries: u32,
3523     pub dot11SupportedOFDMFrequency: [DOT11_SUPPORTED_OFDM_FREQUENCY; 1],
3524 }
3525 impl ::core::marker::Copy for DOT11_SUPPORTED_OFDM_FREQUENCY_LIST {}
3526 impl ::core::clone::Clone for DOT11_SUPPORTED_OFDM_FREQUENCY_LIST {
clone(&self) -> Self3527     fn clone(&self) -> Self {
3528         *self
3529     }
3530 }
3531 #[repr(C)]
3532 pub struct DOT11_SUPPORTED_PHY_TYPES {
3533     pub uNumOfEntries: u32,
3534     pub uTotalNumOfEntries: u32,
3535     pub dot11PHYType: [DOT11_PHY_TYPE; 1],
3536 }
3537 impl ::core::marker::Copy for DOT11_SUPPORTED_PHY_TYPES {}
3538 impl ::core::clone::Clone for DOT11_SUPPORTED_PHY_TYPES {
clone(&self) -> Self3539     fn clone(&self) -> Self {
3540         *self
3541     }
3542 }
3543 #[repr(C)]
3544 pub struct DOT11_SUPPORTED_POWER_LEVELS {
3545     pub uNumOfSupportedPowerLevels: u32,
3546     pub uTxPowerLevelValues: [u32; 8],
3547 }
3548 impl ::core::marker::Copy for DOT11_SUPPORTED_POWER_LEVELS {}
3549 impl ::core::clone::Clone for DOT11_SUPPORTED_POWER_LEVELS {
clone(&self) -> Self3550     fn clone(&self) -> Self {
3551         *self
3552     }
3553 }
3554 pub type DOT11_TEMP_TYPE = i32;
3555 pub const dot11_temp_type_unknown: DOT11_TEMP_TYPE = 0i32;
3556 pub const dot11_temp_type_1: DOT11_TEMP_TYPE = 1i32;
3557 pub const dot11_temp_type_2: DOT11_TEMP_TYPE = 2i32;
3558 #[repr(C)]
3559 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3560 pub struct DOT11_TKIPMIC_FAILURE_PARAMETERS {
3561     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3562     pub bDefaultKeyFailure: super::super::Foundation::BOOLEAN,
3563     pub uKeyIndex: u32,
3564     pub PeerMac: [u8; 6],
3565 }
3566 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3567 impl ::core::marker::Copy for DOT11_TKIPMIC_FAILURE_PARAMETERS {}
3568 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3569 impl ::core::clone::Clone for DOT11_TKIPMIC_FAILURE_PARAMETERS {
clone(&self) -> Self3570     fn clone(&self) -> Self {
3571         *self
3572     }
3573 }
3574 pub const DOT11_TKIPMIC_FAILURE_PARAMETERS_REVISION_1: u32 = 1u32;
3575 #[repr(C)]
3576 pub struct DOT11_UPDATE_IE {
3577     pub dot11UpdateIEOp: DOT11_UPDATE_IE_OP,
3578     pub uBufferLength: u32,
3579     pub ucBuffer: [u8; 1],
3580 }
3581 impl ::core::marker::Copy for DOT11_UPDATE_IE {}
3582 impl ::core::clone::Clone for DOT11_UPDATE_IE {
clone(&self) -> Self3583     fn clone(&self) -> Self {
3584         *self
3585     }
3586 }
3587 pub type DOT11_UPDATE_IE_OP = i32;
3588 pub const dot11_update_ie_op_create_replace: DOT11_UPDATE_IE_OP = 1i32;
3589 pub const dot11_update_ie_op_delete: DOT11_UPDATE_IE_OP = 2i32;
3590 #[repr(C)]
3591 pub struct DOT11_VENUEINFO {
3592     pub VenueGroup: u8,
3593     pub VenueType: u8,
3594 }
3595 impl ::core::marker::Copy for DOT11_VENUEINFO {}
3596 impl ::core::clone::Clone for DOT11_VENUEINFO {
clone(&self) -> Self3597     fn clone(&self) -> Self {
3598         *self
3599     }
3600 }
3601 #[repr(C)]
3602 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3603 pub struct DOT11_VWIFI_ATTRIBUTES {
3604     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3605     pub uTotalNumOfEntries: u32,
3606     pub Combinations: [DOT11_VWIFI_COMBINATION; 1],
3607 }
3608 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3609 impl ::core::marker::Copy for DOT11_VWIFI_ATTRIBUTES {}
3610 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3611 impl ::core::clone::Clone for DOT11_VWIFI_ATTRIBUTES {
clone(&self) -> Self3612     fn clone(&self) -> Self {
3613         *self
3614     }
3615 }
3616 pub const DOT11_VWIFI_ATTRIBUTES_REVISION_1: u32 = 1u32;
3617 #[repr(C)]
3618 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3619 pub struct DOT11_VWIFI_COMBINATION {
3620     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3621     pub uNumInfrastructure: u32,
3622     pub uNumAdhoc: u32,
3623     pub uNumSoftAP: u32,
3624 }
3625 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3626 impl ::core::marker::Copy for DOT11_VWIFI_COMBINATION {}
3627 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3628 impl ::core::clone::Clone for DOT11_VWIFI_COMBINATION {
clone(&self) -> Self3629     fn clone(&self) -> Self {
3630         *self
3631     }
3632 }
3633 pub const DOT11_VWIFI_COMBINATION_REVISION_1: u32 = 1u32;
3634 pub const DOT11_VWIFI_COMBINATION_REVISION_2: u32 = 2u32;
3635 pub const DOT11_VWIFI_COMBINATION_REVISION_3: u32 = 3u32;
3636 #[repr(C)]
3637 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3638 pub struct DOT11_VWIFI_COMBINATION_V2 {
3639     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3640     pub uNumInfrastructure: u32,
3641     pub uNumAdhoc: u32,
3642     pub uNumSoftAP: u32,
3643     pub uNumVirtualStation: u32,
3644 }
3645 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3646 impl ::core::marker::Copy for DOT11_VWIFI_COMBINATION_V2 {}
3647 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3648 impl ::core::clone::Clone for DOT11_VWIFI_COMBINATION_V2 {
clone(&self) -> Self3649     fn clone(&self) -> Self {
3650         *self
3651     }
3652 }
3653 #[repr(C)]
3654 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3655 pub struct DOT11_VWIFI_COMBINATION_V3 {
3656     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3657     pub uNumInfrastructure: u32,
3658     pub uNumAdhoc: u32,
3659     pub uNumSoftAP: u32,
3660     pub uNumVirtualStation: u32,
3661     pub uNumWFDGroup: u32,
3662 }
3663 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3664 impl ::core::marker::Copy for DOT11_VWIFI_COMBINATION_V3 {}
3665 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3666 impl ::core::clone::Clone for DOT11_VWIFI_COMBINATION_V3 {
clone(&self) -> Self3667     fn clone(&self) -> Self {
3668         *self
3669     }
3670 }
3671 #[repr(C)]
3672 #[cfg(feature = "Win32_Foundation")]
3673 pub struct DOT11_WEP_OFFLOAD {
3674     pub uReserved: u32,
3675     pub hOffloadContext: super::super::Foundation::HANDLE,
3676     pub hOffload: super::super::Foundation::HANDLE,
3677     pub dot11OffloadType: DOT11_OFFLOAD_TYPE,
3678     pub dwAlgorithm: u32,
3679     pub bRowIsOutbound: super::super::Foundation::BOOLEAN,
3680     pub bUseDefault: super::super::Foundation::BOOLEAN,
3681     pub uFlags: u32,
3682     pub ucMacAddress: [u8; 6],
3683     pub uNumOfRWsOnPeer: u32,
3684     pub uNumOfRWsOnMe: u32,
3685     pub dot11IV48Counters: [DOT11_IV48_COUNTER; 16],
3686     pub usDot11RWBitMaps: [u16; 16],
3687     pub usKeyLength: u16,
3688     pub ucKey: [u8; 1],
3689 }
3690 #[cfg(feature = "Win32_Foundation")]
3691 impl ::core::marker::Copy for DOT11_WEP_OFFLOAD {}
3692 #[cfg(feature = "Win32_Foundation")]
3693 impl ::core::clone::Clone for DOT11_WEP_OFFLOAD {
clone(&self) -> Self3694     fn clone(&self) -> Self {
3695         *self
3696     }
3697 }
3698 #[repr(C)]
3699 #[cfg(feature = "Win32_Foundation")]
3700 pub struct DOT11_WEP_UPLOAD {
3701     pub uReserved: u32,
3702     pub dot11OffloadType: DOT11_OFFLOAD_TYPE,
3703     pub hOffload: super::super::Foundation::HANDLE,
3704     pub uNumOfRWsUsed: u32,
3705     pub dot11IV48Counters: [DOT11_IV48_COUNTER; 16],
3706     pub usDot11RWBitMaps: [u16; 16],
3707 }
3708 #[cfg(feature = "Win32_Foundation")]
3709 impl ::core::marker::Copy for DOT11_WEP_UPLOAD {}
3710 #[cfg(feature = "Win32_Foundation")]
3711 impl ::core::clone::Clone for DOT11_WEP_UPLOAD {
clone(&self) -> Self3712     fn clone(&self) -> Self {
3713         *self
3714     }
3715 }
3716 #[repr(C)]
3717 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3718 pub struct DOT11_WFD_ADDITIONAL_IE {
3719     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3720     pub uBeaconIEsOffset: u32,
3721     pub uBeaconIEsLength: u32,
3722     pub uProbeResponseIEsOffset: u32,
3723     pub uProbeResponseIEsLength: u32,
3724     pub uDefaultRequestIEsOffset: u32,
3725     pub uDefaultRequestIEsLength: u32,
3726 }
3727 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3728 impl ::core::marker::Copy for DOT11_WFD_ADDITIONAL_IE {}
3729 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3730 impl ::core::clone::Clone for DOT11_WFD_ADDITIONAL_IE {
clone(&self) -> Self3731     fn clone(&self) -> Self {
3732         *self
3733     }
3734 }
3735 pub const DOT11_WFD_ADDITIONAL_IE_REVISION_1: u32 = 1u32;
3736 #[repr(C)]
3737 pub struct DOT11_WFD_ADVERTISED_SERVICE_DESCRIPTOR {
3738     pub AdvertisementID: u32,
3739     pub ConfigMethods: u16,
3740     pub ServiceNameLength: u8,
3741     pub ServiceName: [u8; 255],
3742 }
3743 impl ::core::marker::Copy for DOT11_WFD_ADVERTISED_SERVICE_DESCRIPTOR {}
3744 impl ::core::clone::Clone for DOT11_WFD_ADVERTISED_SERVICE_DESCRIPTOR {
clone(&self) -> Self3745     fn clone(&self) -> Self {
3746         *self
3747     }
3748 }
3749 #[repr(C)]
3750 pub struct DOT11_WFD_ADVERTISED_SERVICE_LIST {
3751     pub ServiceCount: u16,
3752     pub AdvertisedService: [DOT11_WFD_ADVERTISED_SERVICE_DESCRIPTOR; 1],
3753 }
3754 impl ::core::marker::Copy for DOT11_WFD_ADVERTISED_SERVICE_LIST {}
3755 impl ::core::clone::Clone for DOT11_WFD_ADVERTISED_SERVICE_LIST {
clone(&self) -> Self3756     fn clone(&self) -> Self {
3757         *self
3758     }
3759 }
3760 #[repr(C)]
3761 pub struct DOT11_WFD_ADVERTISEMENT_ID {
3762     pub AdvertisementID: u32,
3763     pub ServiceAddress: [u8; 6],
3764 }
3765 impl ::core::marker::Copy for DOT11_WFD_ADVERTISEMENT_ID {}
3766 impl ::core::clone::Clone for DOT11_WFD_ADVERTISEMENT_ID {
clone(&self) -> Self3767     fn clone(&self) -> Self {
3768         *self
3769     }
3770 }
3771 pub const DOT11_WFD_APS2_SERVICE_TYPE_MAX_LENGTH: u32 = 21u32;
3772 pub const DOT11_WFD_ASP2_INSTANCE_NAME_MAX_LENGTH: u32 = 63u32;
3773 #[repr(C)]
3774 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3775 pub struct DOT11_WFD_ATTRIBUTES {
3776     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3777     pub uNumConcurrentGORole: u32,
3778     pub uNumConcurrentClientRole: u32,
3779     pub WPSVersionsSupported: u32,
3780     pub bServiceDiscoverySupported: super::super::Foundation::BOOLEAN,
3781     pub bClientDiscoverabilitySupported: super::super::Foundation::BOOLEAN,
3782     pub bInfrastructureManagementSupported: super::super::Foundation::BOOLEAN,
3783     pub uMaxSecondaryDeviceTypeListSize: u32,
3784     pub DeviceAddress: [u8; 6],
3785     pub uInterfaceAddressListCount: u32,
3786     pub pInterfaceAddressList: *mut u8,
3787     pub uNumSupportedCountryOrRegionStrings: u32,
3788     pub pSupportedCountryOrRegionStrings: *mut u8,
3789     pub uDiscoveryFilterListSize: u32,
3790     pub uGORoleClientTableSize: u32,
3791 }
3792 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3793 impl ::core::marker::Copy for DOT11_WFD_ATTRIBUTES {}
3794 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3795 impl ::core::clone::Clone for DOT11_WFD_ATTRIBUTES {
clone(&self) -> Self3796     fn clone(&self) -> Self {
3797         *self
3798     }
3799 }
3800 pub const DOT11_WFD_ATTRIBUTES_REVISION_1: u32 = 1u32;
3801 #[repr(C)]
3802 pub struct DOT11_WFD_CHANNEL {
3803     pub CountryRegionString: [u8; 3],
3804     pub OperatingClass: u8,
3805     pub ChannelNumber: u8,
3806 }
3807 impl ::core::marker::Copy for DOT11_WFD_CHANNEL {}
3808 impl ::core::clone::Clone for DOT11_WFD_CHANNEL {
clone(&self) -> Self3809     fn clone(&self) -> Self {
3810         *self
3811     }
3812 }
3813 #[repr(C)]
3814 pub struct DOT11_WFD_CONFIGURATION_TIMEOUT {
3815     pub GOTimeout: u8,
3816     pub ClientTimeout: u8,
3817 }
3818 impl ::core::marker::Copy for DOT11_WFD_CONFIGURATION_TIMEOUT {}
3819 impl ::core::clone::Clone for DOT11_WFD_CONFIGURATION_TIMEOUT {
clone(&self) -> Self3820     fn clone(&self) -> Self {
3821         *self
3822     }
3823 }
3824 pub const DOT11_WFD_DEVICE_AUTO_AVAILABILITY: u32 = 16u32;
3825 pub const DOT11_WFD_DEVICE_CAPABILITY_CONCURRENT_OPERATION: u32 = 4u32;
3826 #[repr(C)]
3827 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3828 pub struct DOT11_WFD_DEVICE_CAPABILITY_CONFIG {
3829     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3830     pub bServiceDiscoveryEnabled: super::super::Foundation::BOOLEAN,
3831     pub bClientDiscoverabilityEnabled: super::super::Foundation::BOOLEAN,
3832     pub bConcurrentOperationSupported: super::super::Foundation::BOOLEAN,
3833     pub bInfrastructureManagementEnabled: super::super::Foundation::BOOLEAN,
3834     pub bDeviceLimitReached: super::super::Foundation::BOOLEAN,
3835     pub bInvitationProcedureEnabled: super::super::Foundation::BOOLEAN,
3836     pub WPSVersionsEnabled: u32,
3837 }
3838 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3839 impl ::core::marker::Copy for DOT11_WFD_DEVICE_CAPABILITY_CONFIG {}
3840 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3841 impl ::core::clone::Clone for DOT11_WFD_DEVICE_CAPABILITY_CONFIG {
clone(&self) -> Self3842     fn clone(&self) -> Self {
3843         *self
3844     }
3845 }
3846 pub const DOT11_WFD_DEVICE_CAPABILITY_CONFIG_REVISION_1: u32 = 1u32;
3847 pub const DOT11_WFD_DEVICE_CAPABILITY_P2P_CLIENT_DISCOVERABILITY: u32 = 2u32;
3848 pub const DOT11_WFD_DEVICE_CAPABILITY_P2P_DEVICE_LIMIT: u32 = 16u32;
3849 pub const DOT11_WFD_DEVICE_CAPABILITY_P2P_INFRASTRUCTURE_MANAGED: u32 = 8u32;
3850 pub const DOT11_WFD_DEVICE_CAPABILITY_P2P_INVITATION_PROCEDURE: u32 = 32u32;
3851 pub const DOT11_WFD_DEVICE_CAPABILITY_RESERVED_6: u32 = 64u32;
3852 pub const DOT11_WFD_DEVICE_CAPABILITY_RESERVED_7: u32 = 128u32;
3853 pub const DOT11_WFD_DEVICE_CAPABILITY_SERVICE_DISCOVERY: u32 = 1u32;
3854 #[repr(C)]
3855 pub struct DOT11_WFD_DEVICE_ENTRY {
3856     pub uPhyId: u32,
3857     pub PhySpecificInfo: DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO,
3858     pub dot11BSSID: [u8; 6],
3859     pub dot11BSSType: DOT11_BSS_TYPE,
3860     pub TransmitterAddress: [u8; 6],
3861     pub lRSSI: i32,
3862     pub uLinkQuality: u32,
3863     pub usBeaconPeriod: u16,
3864     pub ullTimestamp: u64,
3865     pub ullBeaconHostTimestamp: u64,
3866     pub ullProbeResponseHostTimestamp: u64,
3867     pub usCapabilityInformation: u16,
3868     pub uBeaconIEsOffset: u32,
3869     pub uBeaconIEsLength: u32,
3870     pub uProbeResponseIEsOffset: u32,
3871     pub uProbeResponseIEsLength: u32,
3872 }
3873 impl ::core::marker::Copy for DOT11_WFD_DEVICE_ENTRY {}
3874 impl ::core::clone::Clone for DOT11_WFD_DEVICE_ENTRY {
clone(&self) -> Self3875     fn clone(&self) -> Self {
3876         *self
3877     }
3878 }
3879 pub const DOT11_WFD_DEVICE_HIGH_AVAILABILITY: u32 = 24u32;
3880 #[repr(C)]
3881 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3882 pub struct DOT11_WFD_DEVICE_INFO {
3883     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3884     pub DeviceAddress: [u8; 6],
3885     pub ConfigMethods: u16,
3886     pub PrimaryDeviceType: DOT11_WFD_DEVICE_TYPE,
3887     pub DeviceName: DOT11_WPS_DEVICE_NAME,
3888 }
3889 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3890 impl ::core::marker::Copy for DOT11_WFD_DEVICE_INFO {}
3891 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3892 impl ::core::clone::Clone for DOT11_WFD_DEVICE_INFO {
clone(&self) -> Self3893     fn clone(&self) -> Self {
3894         *self
3895     }
3896 }
3897 pub const DOT11_WFD_DEVICE_INFO_REVISION_1: u32 = 1u32;
3898 #[repr(C)]
3899 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3900 pub struct DOT11_WFD_DEVICE_LISTEN_CHANNEL {
3901     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3902     pub ChannelNumber: u8,
3903 }
3904 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3905 impl ::core::marker::Copy for DOT11_WFD_DEVICE_LISTEN_CHANNEL {}
3906 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3907 impl ::core::clone::Clone for DOT11_WFD_DEVICE_LISTEN_CHANNEL {
clone(&self) -> Self3908     fn clone(&self) -> Self {
3909         *self
3910     }
3911 }
3912 pub const DOT11_WFD_DEVICE_LISTEN_CHANNEL_REVISION_1: u32 = 1u32;
3913 pub const DOT11_WFD_DEVICE_NOT_DISCOVERABLE: u32 = 0u32;
3914 #[repr(C)]
3915 pub struct DOT11_WFD_DEVICE_TYPE {
3916     pub CategoryID: u16,
3917     pub SubCategoryID: u16,
3918     pub OUI: [u8; 4],
3919 }
3920 impl ::core::marker::Copy for DOT11_WFD_DEVICE_TYPE {}
3921 impl ::core::clone::Clone for DOT11_WFD_DEVICE_TYPE {
clone(&self) -> Self3922     fn clone(&self) -> Self {
3923         *self
3924     }
3925 }
3926 pub const DOT11_WFD_DISCOVER_COMPLETE_MAX_LIST_SIZE: u32 = 128u32;
3927 #[repr(C)]
3928 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3929 pub struct DOT11_WFD_DISCOVER_COMPLETE_PARAMETERS {
3930     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3931     pub Status: i32,
3932     pub uNumOfEntries: u32,
3933     pub uTotalNumOfEntries: u32,
3934     pub uListOffset: u32,
3935     pub uListLength: u32,
3936 }
3937 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3938 impl ::core::marker::Copy for DOT11_WFD_DISCOVER_COMPLETE_PARAMETERS {}
3939 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
3940 impl ::core::clone::Clone for DOT11_WFD_DISCOVER_COMPLETE_PARAMETERS {
clone(&self) -> Self3941     fn clone(&self) -> Self {
3942         *self
3943     }
3944 }
3945 pub const DOT11_WFD_DISCOVER_COMPLETE_PARAMETERS_REVISION_1: u32 = 1u32;
3946 #[repr(C)]
3947 pub struct DOT11_WFD_DISCOVER_DEVICE_FILTER {
3948     pub DeviceID: [u8; 6],
3949     pub ucBitmask: u8,
3950     pub GroupSSID: DOT11_SSID,
3951 }
3952 impl ::core::marker::Copy for DOT11_WFD_DISCOVER_DEVICE_FILTER {}
3953 impl ::core::clone::Clone for DOT11_WFD_DISCOVER_DEVICE_FILTER {
clone(&self) -> Self3954     fn clone(&self) -> Self {
3955         *self
3956     }
3957 }
3958 #[repr(C)]
3959 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3960 pub struct DOT11_WFD_DISCOVER_REQUEST {
3961     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
3962     pub DiscoverType: DOT11_WFD_DISCOVER_TYPE,
3963     pub ScanType: DOT11_WFD_SCAN_TYPE,
3964     pub uDiscoverTimeout: u32,
3965     pub uDeviceFilterListOffset: u32,
3966     pub uNumDeviceFilters: u32,
3967     pub uIEsOffset: u32,
3968     pub uIEsLength: u32,
3969     pub bForceScanLegacyNetworks: super::super::Foundation::BOOLEAN,
3970 }
3971 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3972 impl ::core::marker::Copy for DOT11_WFD_DISCOVER_REQUEST {}
3973 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
3974 impl ::core::clone::Clone for DOT11_WFD_DISCOVER_REQUEST {
clone(&self) -> Self3975     fn clone(&self) -> Self {
3976         *self
3977     }
3978 }
3979 pub const DOT11_WFD_DISCOVER_REQUEST_REVISION_1: u32 = 1u32;
3980 pub type DOT11_WFD_DISCOVER_TYPE = i32;
3981 pub const dot11_wfd_discover_type_scan_only: DOT11_WFD_DISCOVER_TYPE = 1i32;
3982 pub const dot11_wfd_discover_type_find_only: DOT11_WFD_DISCOVER_TYPE = 2i32;
3983 pub const dot11_wfd_discover_type_auto: DOT11_WFD_DISCOVER_TYPE = 3i32;
3984 pub const dot11_wfd_discover_type_scan_social_channels: DOT11_WFD_DISCOVER_TYPE = 4i32;
3985 pub const dot11_wfd_discover_type_forced: DOT11_WFD_DISCOVER_TYPE = -2147483648i32;
3986 #[repr(C)]
3987 pub struct DOT11_WFD_GO_INTENT {
3988     pub _bitfield: u8,
3989 }
3990 impl ::core::marker::Copy for DOT11_WFD_GO_INTENT {}
3991 impl ::core::clone::Clone for DOT11_WFD_GO_INTENT {
clone(&self) -> Self3992     fn clone(&self) -> Self {
3993         *self
3994     }
3995 }
3996 pub const DOT11_WFD_GROUP_CAPABILITY_CROSS_CONNECTION_SUPPORTED: u32 = 16u32;
3997 pub const DOT11_WFD_GROUP_CAPABILITY_EAPOL_KEY_IP_ADDRESS_ALLOCATION_SUPPORTED: u32 = 128u32;
3998 pub const DOT11_WFD_GROUP_CAPABILITY_GROUP_LIMIT_REACHED: u32 = 4u32;
3999 pub const DOT11_WFD_GROUP_CAPABILITY_GROUP_OWNER: u32 = 1u32;
4000 pub const DOT11_WFD_GROUP_CAPABILITY_INTRABSS_DISTRIBUTION_SUPPORTED: u32 = 8u32;
4001 pub const DOT11_WFD_GROUP_CAPABILITY_IN_GROUP_FORMATION: u32 = 64u32;
4002 pub const DOT11_WFD_GROUP_CAPABILITY_NONE: u32 = 0u32;
4003 pub const DOT11_WFD_GROUP_CAPABILITY_PERSISTENT_GROUP: u32 = 2u32;
4004 pub const DOT11_WFD_GROUP_CAPABILITY_PERSISTENT_RECONNECT_SUPPORTED: u32 = 32u32;
4005 pub const DOT11_WFD_GROUP_CAPABILITY_RESERVED_7: u32 = 128u32;
4006 #[repr(C)]
4007 pub struct DOT11_WFD_GROUP_ID {
4008     pub DeviceAddress: [u8; 6],
4009     pub SSID: DOT11_SSID,
4010 }
4011 impl ::core::marker::Copy for DOT11_WFD_GROUP_ID {}
4012 impl ::core::clone::Clone for DOT11_WFD_GROUP_ID {
clone(&self) -> Self4013     fn clone(&self) -> Self {
4014         *self
4015     }
4016 }
4017 #[repr(C)]
4018 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4019 pub struct DOT11_WFD_GROUP_JOIN_PARAMETERS {
4020     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
4021     pub GOOperatingChannel: DOT11_WFD_CHANNEL,
4022     pub GOConfigTime: u32,
4023     pub bInGroupFormation: super::super::Foundation::BOOLEAN,
4024     pub bWaitForWPSReady: super::super::Foundation::BOOLEAN,
4025 }
4026 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4027 impl ::core::marker::Copy for DOT11_WFD_GROUP_JOIN_PARAMETERS {}
4028 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4029 impl ::core::clone::Clone for DOT11_WFD_GROUP_JOIN_PARAMETERS {
clone(&self) -> Self4030     fn clone(&self) -> Self {
4031         *self
4032     }
4033 }
4034 pub const DOT11_WFD_GROUP_JOIN_PARAMETERS_REVISION_1: u32 = 1u32;
4035 #[repr(C)]
4036 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4037 pub struct DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG {
4038     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
4039     pub bPersistentGroupEnabled: super::super::Foundation::BOOLEAN,
4040     pub bIntraBSSDistributionSupported: super::super::Foundation::BOOLEAN,
4041     pub bCrossConnectionSupported: super::super::Foundation::BOOLEAN,
4042     pub bPersistentReconnectSupported: super::super::Foundation::BOOLEAN,
4043     pub bGroupFormationEnabled: super::super::Foundation::BOOLEAN,
4044     pub uMaximumGroupLimit: u32,
4045 }
4046 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4047 impl ::core::marker::Copy for DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG {}
4048 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4049 impl ::core::clone::Clone for DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG {
clone(&self) -> Self4050     fn clone(&self) -> Self {
4051         *self
4052     }
4053 }
4054 pub const DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG_REVISION_1: u32 = 1u32;
4055 pub const DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG_REVISION_2: u32 = 2u32;
4056 #[repr(C)]
4057 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4058 pub struct DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG_V2 {
4059     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
4060     pub bPersistentGroupEnabled: super::super::Foundation::BOOLEAN,
4061     pub bIntraBSSDistributionSupported: super::super::Foundation::BOOLEAN,
4062     pub bCrossConnectionSupported: super::super::Foundation::BOOLEAN,
4063     pub bPersistentReconnectSupported: super::super::Foundation::BOOLEAN,
4064     pub bGroupFormationEnabled: super::super::Foundation::BOOLEAN,
4065     pub uMaximumGroupLimit: u32,
4066     pub bEapolKeyIpAddressAllocationSupported: super::super::Foundation::BOOLEAN,
4067 }
4068 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4069 impl ::core::marker::Copy for DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG_V2 {}
4070 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4071 impl ::core::clone::Clone for DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG_V2 {
clone(&self) -> Self4072     fn clone(&self) -> Self {
4073         *self
4074     }
4075 }
4076 #[repr(C)]
4077 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
4078 pub struct DOT11_WFD_GROUP_START_PARAMETERS {
4079     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
4080     pub AdvertisedOperatingChannel: DOT11_WFD_CHANNEL,
4081 }
4082 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
4083 impl ::core::marker::Copy for DOT11_WFD_GROUP_START_PARAMETERS {}
4084 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
4085 impl ::core::clone::Clone for DOT11_WFD_GROUP_START_PARAMETERS {
clone(&self) -> Self4086     fn clone(&self) -> Self {
4087         *self
4088     }
4089 }
4090 pub const DOT11_WFD_GROUP_START_PARAMETERS_REVISION_1: u32 = 1u32;
4091 #[repr(C)]
4092 pub struct DOT11_WFD_INVITATION_FLAGS {
4093     pub _bitfield: u8,
4094 }
4095 impl ::core::marker::Copy for DOT11_WFD_INVITATION_FLAGS {}
4096 impl ::core::clone::Clone for DOT11_WFD_INVITATION_FLAGS {
clone(&self) -> Self4097     fn clone(&self) -> Self {
4098         *self
4099     }
4100 }
4101 pub const DOT11_WFD_MINOR_REASON_DISASSOCIATED_FROM_WLAN_CROSS_CONNECTION_POLICY: u32 = 1u32;
4102 pub const DOT11_WFD_MINOR_REASON_DISASSOCIATED_INFRASTRUCTURE_MANAGED_POLICY: u32 = 4u32;
4103 pub const DOT11_WFD_MINOR_REASON_DISASSOCIATED_NOT_MANAGED_INFRASTRUCTURE_CAPABLE: u32 = 2u32;
4104 pub const DOT11_WFD_MINOR_REASON_DISASSOCIATED_WFD_COEXISTENCE_POLICY: u32 = 3u32;
4105 pub const DOT11_WFD_MINOR_REASON_SUCCESS: u32 = 0u32;
4106 pub type DOT11_WFD_SCAN_TYPE = i32;
4107 pub const dot11_wfd_scan_type_active: DOT11_WFD_SCAN_TYPE = 1i32;
4108 pub const dot11_wfd_scan_type_passive: DOT11_WFD_SCAN_TYPE = 2i32;
4109 pub const dot11_wfd_scan_type_auto: DOT11_WFD_SCAN_TYPE = 3i32;
4110 #[repr(C)]
4111 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
4112 pub struct DOT11_WFD_SECONDARY_DEVICE_TYPE_LIST {
4113     pub Header: super::Ndis::NDIS_OBJECT_HEADER,
4114     pub uNumOfEntries: u32,
4115     pub uTotalNumOfEntries: u32,
4116     pub SecondaryDeviceTypes: [DOT11_WFD_DEVICE_TYPE; 1],
4117 }
4118 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
4119 impl ::core::marker::Copy for DOT11_WFD_SECONDARY_DEVICE_TYPE_LIST {}
4120 #[cfg(feature = "Win32_NetworkManagement_Ndis")]
4121 impl ::core::clone::Clone for DOT11_WFD_SECONDARY_DEVICE_TYPE_LIST {
clone(&self) -> Self4122     fn clone(&self) -> Self {
4123         *self
4124     }
4125 }
4126 pub const DOT11_WFD_SECONDARY_DEVICE_TYPE_LIST_REVISION_1: u32 = 1u32;
4127 #[repr(C)]
4128 pub struct DOT11_WFD_SERVICE_HASH_LIST {
4129     pub ServiceHashCount: u16,
4130     pub ServiceHash: [u8; 6],
4131 }
4132 impl ::core::marker::Copy for DOT11_WFD_SERVICE_HASH_LIST {}
4133 impl ::core::clone::Clone for DOT11_WFD_SERVICE_HASH_LIST {
clone(&self) -> Self4134     fn clone(&self) -> Self {
4135         *self
4136     }
4137 }
4138 pub const DOT11_WFD_SERVICE_INFORMATION_MAX_LENGTH: u32 = 65535u32;
4139 pub const DOT11_WFD_SERVICE_NAME_MAX_LENGTH: u32 = 255u32;
4140 #[repr(C)]
4141 pub struct DOT11_WFD_SESSION_ID {
4142     pub SessionID: u32,
4143     pub SessionAddress: [u8; 6],
4144 }
4145 impl ::core::marker::Copy for DOT11_WFD_SESSION_ID {}
4146 impl ::core::clone::Clone for DOT11_WFD_SESSION_ID {
clone(&self) -> Self4147     fn clone(&self) -> Self {
4148         *self
4149     }
4150 }
4151 #[repr(C)]
4152 pub struct DOT11_WFD_SESSION_INFO {
4153     pub uSessionInfoLength: u16,
4154     pub ucSessionInfo: [u8; 144],
4155 }
4156 impl ::core::marker::Copy for DOT11_WFD_SESSION_INFO {}
4157 impl ::core::clone::Clone for DOT11_WFD_SESSION_INFO {
clone(&self) -> Self4158     fn clone(&self) -> Self {
4159         *self
4160     }
4161 }
4162 pub const DOT11_WFD_SESSION_INFO_MAX_LENGTH: u32 = 144u32;
4163 pub const DOT11_WFD_STATUS_FAILED_INCOMPATIBLE_PARAMETERS: u32 = 2u32;
4164 pub const DOT11_WFD_STATUS_FAILED_INCOMPATIBLE_PROVISIONING_METHOD: u32 = 10u32;
4165 pub const DOT11_WFD_STATUS_FAILED_INFORMATION_IS_UNAVAILABLE: u32 = 1u32;
4166 pub const DOT11_WFD_STATUS_FAILED_INVALID_PARAMETERS: u32 = 4u32;
4167 pub const DOT11_WFD_STATUS_FAILED_LIMIT_REACHED: u32 = 3u32;
4168 pub const DOT11_WFD_STATUS_FAILED_MATCHING_MAX_INTENT: u32 = 9u32;
4169 pub const DOT11_WFD_STATUS_FAILED_NO_COMMON_CHANNELS: u32 = 7u32;
4170 pub const DOT11_WFD_STATUS_FAILED_PREVIOUS_PROTOCOL_ERROR: u32 = 6u32;
4171 pub const DOT11_WFD_STATUS_FAILED_REJECTED_BY_USER: u32 = 11u32;
4172 pub const DOT11_WFD_STATUS_FAILED_UNABLE_TO_ACCOMODATE_REQUEST: u32 = 5u32;
4173 pub const DOT11_WFD_STATUS_FAILED_UNKNOWN_WFD_GROUP: u32 = 8u32;
4174 pub const DOT11_WFD_STATUS_SUCCESS: u32 = 0u32;
4175 pub const DOT11_WFD_STATUS_SUCCESS_ACCEPTED_BY_USER: u32 = 12u32;
4176 #[repr(C)]
4177 pub struct DOT11_WME_AC_PARAMETERS {
4178     pub ucAccessCategoryIndex: u8,
4179     pub ucAIFSN: u8,
4180     pub ucECWmin: u8,
4181     pub ucECWmax: u8,
4182     pub usTXOPLimit: u16,
4183 }
4184 impl ::core::marker::Copy for DOT11_WME_AC_PARAMETERS {}
4185 impl ::core::clone::Clone for DOT11_WME_AC_PARAMETERS {
clone(&self) -> Self4186     fn clone(&self) -> Self {
4187         *self
4188     }
4189 }
4190 pub const DOT11_WME_PACKET: u32 = 256u32;
4191 #[repr(C)]
4192 pub struct DOT11_WME_UPDATE_IE {
4193     pub uParamElemMinBeaconIntervals: u32,
4194     pub uWMEInfoElemOffset: u32,
4195     pub uWMEInfoElemLength: u32,
4196     pub uWMEParamElemOffset: u32,
4197     pub uWMEParamElemLength: u32,
4198     pub ucBuffer: [u8; 1],
4199 }
4200 impl ::core::marker::Copy for DOT11_WME_UPDATE_IE {}
4201 impl ::core::clone::Clone for DOT11_WME_UPDATE_IE {
clone(&self) -> Self4202     fn clone(&self) -> Self {
4203         *self
4204     }
4205 }
4206 #[repr(C)]
4207 #[cfg(feature = "Win32_Foundation")]
4208 pub struct DOT11_WPA_TSC {
4209     pub uReserved: u32,
4210     pub dot11OffloadType: DOT11_OFFLOAD_TYPE,
4211     pub hOffload: super::super::Foundation::HANDLE,
4212     pub dot11IV48Counter: DOT11_IV48_COUNTER,
4213 }
4214 #[cfg(feature = "Win32_Foundation")]
4215 impl ::core::marker::Copy for DOT11_WPA_TSC {}
4216 #[cfg(feature = "Win32_Foundation")]
4217 impl ::core::clone::Clone for DOT11_WPA_TSC {
clone(&self) -> Self4218     fn clone(&self) -> Self {
4219         *self
4220     }
4221 }
4222 pub type DOT11_WPS_CONFIG_METHOD = i32;
4223 pub const DOT11_WPS_CONFIG_METHOD_NULL: DOT11_WPS_CONFIG_METHOD = 0i32;
4224 pub const DOT11_WPS_CONFIG_METHOD_DISPLAY: DOT11_WPS_CONFIG_METHOD = 8i32;
4225 pub const DOT11_WPS_CONFIG_METHOD_NFC_TAG: DOT11_WPS_CONFIG_METHOD = 32i32;
4226 pub const DOT11_WPS_CONFIG_METHOD_NFC_INTERFACE: DOT11_WPS_CONFIG_METHOD = 64i32;
4227 pub const DOT11_WPS_CONFIG_METHOD_PUSHBUTTON: DOT11_WPS_CONFIG_METHOD = 128i32;
4228 pub const DOT11_WPS_CONFIG_METHOD_KEYPAD: DOT11_WPS_CONFIG_METHOD = 256i32;
4229 pub const DOT11_WPS_CONFIG_METHOD_WFDS_DEFAULT: DOT11_WPS_CONFIG_METHOD = 4096i32;
4230 #[repr(C)]
4231 pub struct DOT11_WPS_DEVICE_NAME {
4232     pub uDeviceNameLength: u32,
4233     pub ucDeviceName: [u8; 32],
4234 }
4235 impl ::core::marker::Copy for DOT11_WPS_DEVICE_NAME {}
4236 impl ::core::clone::Clone for DOT11_WPS_DEVICE_NAME {
clone(&self) -> Self4237     fn clone(&self) -> Self {
4238         *self
4239     }
4240 }
4241 pub const DOT11_WPS_DEVICE_NAME_MAX_LENGTH: u32 = 32u32;
4242 pub type DOT11_WPS_DEVICE_PASSWORD_ID = i32;
4243 pub const DOT11_WPS_PASSWORD_ID_DEFAULT: DOT11_WPS_DEVICE_PASSWORD_ID = 0i32;
4244 pub const DOT11_WPS_PASSWORD_ID_USER_SPECIFIED: DOT11_WPS_DEVICE_PASSWORD_ID = 1i32;
4245 pub const DOT11_WPS_PASSWORD_ID_MACHINE_SPECIFIED: DOT11_WPS_DEVICE_PASSWORD_ID = 2i32;
4246 pub const DOT11_WPS_PASSWORD_ID_REKEY: DOT11_WPS_DEVICE_PASSWORD_ID = 3i32;
4247 pub const DOT11_WPS_PASSWORD_ID_PUSHBUTTON: DOT11_WPS_DEVICE_PASSWORD_ID = 4i32;
4248 pub const DOT11_WPS_PASSWORD_ID_REGISTRAR_SPECIFIED: DOT11_WPS_DEVICE_PASSWORD_ID = 5i32;
4249 pub const DOT11_WPS_PASSWORD_ID_NFC_CONNECTION_HANDOVER: DOT11_WPS_DEVICE_PASSWORD_ID = 7i32;
4250 pub const DOT11_WPS_PASSWORD_ID_WFD_SERVICES: DOT11_WPS_DEVICE_PASSWORD_ID = 8i32;
4251 pub const DOT11_WPS_PASSWORD_ID_OOB_RANGE_MIN: DOT11_WPS_DEVICE_PASSWORD_ID = 16i32;
4252 pub const DOT11_WPS_PASSWORD_ID_OOB_RANGE_MAX: DOT11_WPS_DEVICE_PASSWORD_ID = 65535i32;
4253 pub const DOT11_WPS_MAX_MODEL_NAME_LENGTH: u32 = 32u32;
4254 pub const DOT11_WPS_MAX_MODEL_NUMBER_LENGTH: u32 = 32u32;
4255 pub const DOT11_WPS_MAX_PASSKEY_LENGTH: u32 = 8u32;
4256 pub const DOT11_WPS_VERSION_1_0: u32 = 1u32;
4257 pub const DOT11_WPS_VERSION_2_0: u32 = 2u32;
4258 pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_Enhanced: u32 = 4u32;
4259 pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_NoP2PSupported: u32 = 2u32;
4260 pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_NotSupported: u32 = 0u32;
4261 pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_SingleFunctionSupported: u32 = 1u32;
4262 pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_Supported: u32 = 3u32;
4263 pub const DevProp_PciDevice_AcsSupport_Missing: u32 = 2u32;
4264 pub const DevProp_PciDevice_AcsSupport_NotNeeded: u32 = 1u32;
4265 pub const DevProp_PciDevice_AcsSupport_Present: u32 = 0u32;
4266 pub const DevProp_PciDevice_BridgeType_PciConventional: u32 = 6u32;
4267 pub const DevProp_PciDevice_BridgeType_PciExpressDownstreamSwitchPort: u32 = 10u32;
4268 pub const DevProp_PciDevice_BridgeType_PciExpressEventCollector: u32 = 14u32;
4269 pub const DevProp_PciDevice_BridgeType_PciExpressRootPort: u32 = 8u32;
4270 pub const DevProp_PciDevice_BridgeType_PciExpressToPciXBridge: u32 = 11u32;
4271 pub const DevProp_PciDevice_BridgeType_PciExpressTreatedAsPci: u32 = 13u32;
4272 pub const DevProp_PciDevice_BridgeType_PciExpressUpstreamSwitchPort: u32 = 9u32;
4273 pub const DevProp_PciDevice_BridgeType_PciX: u32 = 7u32;
4274 pub const DevProp_PciDevice_BridgeType_PciXToExpressBridge: u32 = 12u32;
4275 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_100Mhz: u32 = 2u32;
4276 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_133MHZ: u32 = 3u32;
4277 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_66Mhz: u32 = 1u32;
4278 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_100Mhz: u32 = 6u32;
4279 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_133Mhz: u32 = 7u32;
4280 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_66Mhz: u32 = 5u32;
4281 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_100MHz: u32 = 10u32;
4282 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_133MHz: u32 = 11u32;
4283 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_66MHz: u32 = 9u32;
4284 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_100MHz: u32 = 14u32;
4285 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_133MHz: u32 = 15u32;
4286 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_66MHz: u32 = 13u32;
4287 pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode_Conventional_Pci: u32 = 0u32;
4288 pub const DevProp_PciDevice_CurrentSpeedAndMode_Pci_Conventional_33MHz: u32 = 0u32;
4289 pub const DevProp_PciDevice_CurrentSpeedAndMode_Pci_Conventional_66MHz: u32 = 1u32;
4290 pub const DevProp_PciDevice_DeviceType_PciConventional: u32 = 0u32;
4291 pub const DevProp_PciDevice_DeviceType_PciExpressEndpoint: u32 = 2u32;
4292 pub const DevProp_PciDevice_DeviceType_PciExpressLegacyEndpoint: u32 = 3u32;
4293 pub const DevProp_PciDevice_DeviceType_PciExpressRootComplexIntegratedEndpoint: u32 = 4u32;
4294 pub const DevProp_PciDevice_DeviceType_PciExpressTreatedAsPci: u32 = 5u32;
4295 pub const DevProp_PciDevice_DeviceType_PciX: u32 = 1u32;
4296 pub const DevProp_PciDevice_InterruptType_LineBased: u32 = 1u32;
4297 pub const DevProp_PciDevice_InterruptType_Msi: u32 = 2u32;
4298 pub const DevProp_PciDevice_InterruptType_MsiX: u32 = 4u32;
4299 pub const DevProp_PciDevice_SriovSupport_DidntGetVfBarSpace: u32 = 4u32;
4300 pub const DevProp_PciDevice_SriovSupport_MissingAcs: u32 = 1u32;
4301 pub const DevProp_PciDevice_SriovSupport_MissingPfDriver: u32 = 2u32;
4302 pub const DevProp_PciDevice_SriovSupport_NoBusResource: u32 = 3u32;
4303 pub const DevProp_PciDevice_SriovSupport_Ok: u32 = 0u32;
4304 pub const DevProp_PciExpressDevice_LinkSpeed_Five_Gbps: u32 = 2u32;
4305 pub const DevProp_PciExpressDevice_LinkSpeed_TwoAndHalf_Gbps: u32 = 1u32;
4306 pub const DevProp_PciExpressDevice_LinkWidth_By_1: u32 = 1u32;
4307 pub const DevProp_PciExpressDevice_LinkWidth_By_12: u32 = 12u32;
4308 pub const DevProp_PciExpressDevice_LinkWidth_By_16: u32 = 16u32;
4309 pub const DevProp_PciExpressDevice_LinkWidth_By_2: u32 = 2u32;
4310 pub const DevProp_PciExpressDevice_LinkWidth_By_32: u32 = 32u32;
4311 pub const DevProp_PciExpressDevice_LinkWidth_By_4: u32 = 4u32;
4312 pub const DevProp_PciExpressDevice_LinkWidth_By_8: u32 = 8u32;
4313 pub const DevProp_PciExpressDevice_PayloadOrRequestSize_1024Bytes: u32 = 3u32;
4314 pub const DevProp_PciExpressDevice_PayloadOrRequestSize_128Bytes: u32 = 0u32;
4315 pub const DevProp_PciExpressDevice_PayloadOrRequestSize_2048Bytes: u32 = 4u32;
4316 pub const DevProp_PciExpressDevice_PayloadOrRequestSize_256Bytes: u32 = 1u32;
4317 pub const DevProp_PciExpressDevice_PayloadOrRequestSize_4096Bytes: u32 = 5u32;
4318 pub const DevProp_PciExpressDevice_PayloadOrRequestSize_512Bytes: u32 = 2u32;
4319 pub const DevProp_PciExpressDevice_Spec_Version_10: u32 = 1u32;
4320 pub const DevProp_PciExpressDevice_Spec_Version_11: u32 = 2u32;
4321 pub const DevProp_PciRootBus_BusWidth_32Bits: u32 = 0u32;
4322 pub const DevProp_PciRootBus_BusWidth_64Bits: u32 = 1u32;
4323 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_Conventional_33Mhz: u32 = 0u32;
4324 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_Conventional_66Mhz: u32 = 1u32;
4325 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_100Mhz: u32 = 9u32;
4326 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_133Mhz: u32 = 10u32;
4327 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_66Mhz: u32 = 8u32;
4328 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_100Mhz: u32 = 12u32;
4329 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_133Mhz: u32 = 13u32;
4330 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_66Mhz: u32 = 11u32;
4331 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_100Mhz: u32 = 3u32;
4332 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_133Mhz: u32 = 4u32;
4333 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_66Mhz: u32 = 2u32;
4334 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_100Mhz: u32 = 6u32;
4335 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_133Mhz: u32 = 7u32;
4336 pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_66Mhz: u32 = 5u32;
4337 pub const DevProp_PciRootBus_SecondaryInterface_PciConventional: u32 = 0u32;
4338 pub const DevProp_PciRootBus_SecondaryInterface_PciExpress: u32 = 3u32;
4339 pub const DevProp_PciRootBus_SecondaryInterface_PciXMode1: u32 = 1u32;
4340 pub const DevProp_PciRootBus_SecondaryInterface_PciXMode2: u32 = 2u32;
4341 pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_Conventional_33Mhz: u32 = 1u32;
4342 pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_Conventional_66Mhz: u32 = 2u32;
4343 pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_133Mhz: u32 = 8u32;
4344 pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_266Mhz: u32 = 16u32;
4345 pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_533Mhz: u32 = 32u32;
4346 pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_66Mhz: u32 = 4u32;
4347 pub const Dot11AdHocManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
4348     data1: 3708201039,
4349     data2: 33725,
4350     data3: 19713,
4351     data4: [138, 185, 35, 137, 254, 160, 134, 158],
4352 };
4353 pub const GUID_AEPSERVICE_WIFIDIRECT_DEVICE: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
4354     data1: 3425272444,
4355     data2: 40111,
4356     data3: 18728,
4357     data4: [153, 169, 24, 247, 194, 56, 19, 137],
4358 };
4359 pub const GUID_DEVINTERFACE_ASP_INFRA_DEVICE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4286724501, data2: 31346, data3: 19584, data4: [135, 87, 198, 126, 225, 61, 26, 73] };
4360 pub const GUID_DEVINTERFACE_WIFIDIRECT_DEVICE: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
4361     data1: 1134239919,
4362     data2: 35157,
4363     data3: 16475,
4364     data4: [153, 240, 166, 42, 240, 198, 141, 67],
4365 };
4366 pub type IDot11AdHocInterface = *mut ::core::ffi::c_void;
4367 pub type IDot11AdHocInterfaceNotificationSink = *mut ::core::ffi::c_void;
4368 pub type IDot11AdHocManager = *mut ::core::ffi::c_void;
4369 pub type IDot11AdHocManagerNotificationSink = *mut ::core::ffi::c_void;
4370 pub type IDot11AdHocNetwork = *mut ::core::ffi::c_void;
4371 pub type IDot11AdHocNetworkNotificationSink = *mut ::core::ffi::c_void;
4372 pub type IDot11AdHocSecuritySettings = *mut ::core::ffi::c_void;
4373 pub type IEnumDot11AdHocInterfaces = *mut ::core::ffi::c_void;
4374 pub type IEnumDot11AdHocNetworks = *mut ::core::ffi::c_void;
4375 pub type IEnumDot11AdHocSecuritySettings = *mut ::core::ffi::c_void;
4376 pub const L2_NOTIFICATION_CODE_GROUP_SIZE: u32 = 4096u32;
4377 pub const L2_NOTIFICATION_CODE_PUBLIC_BEGIN: u32 = 0u32;
4378 #[repr(C)]
4379 pub struct L2_NOTIFICATION_DATA {
4380     pub NotificationSource: u32,
4381     pub NotificationCode: u32,
4382     pub InterfaceGuid: ::windows_sys::core::GUID,
4383     pub dwDataSize: u32,
4384     pub pData: *mut ::core::ffi::c_void,
4385 }
4386 impl ::core::marker::Copy for L2_NOTIFICATION_DATA {}
4387 impl ::core::clone::Clone for L2_NOTIFICATION_DATA {
clone(&self) -> Self4388     fn clone(&self) -> Self {
4389         *self
4390     }
4391 }
4392 pub const L2_NOTIFICATION_SOURCE_ALL: u32 = 65535u32;
4393 pub const L2_NOTIFICATION_SOURCE_DOT3_AUTO_CONFIG: u32 = 1u32;
4394 pub const L2_NOTIFICATION_SOURCE_NONE: u32 = 0u32;
4395 pub const L2_NOTIFICATION_SOURCE_ONEX: u32 = 4u32;
4396 pub const L2_NOTIFICATION_SOURCE_SECURITY: u32 = 2u32;
4397 pub const L2_NOTIFICATION_SOURCE_WCM: u32 = 256u32;
4398 pub const L2_NOTIFICATION_SOURCE_WCM_CSP: u32 = 512u32;
4399 pub const L2_NOTIFICATION_SOURCE_WFD: u32 = 1024u32;
4400 pub const L2_NOTIFICATION_SOURCE_WLAN_ACM: u32 = 8u32;
4401 pub const L2_NOTIFICATION_SOURCE_WLAN_DEVICE_SERVICE: u32 = 2048u32;
4402 pub const L2_NOTIFICATION_SOURCE_WLAN_HNWK: u32 = 128u32;
4403 pub const L2_NOTIFICATION_SOURCE_WLAN_IHV: u32 = 64u32;
4404 pub const L2_NOTIFICATION_SOURCE_WLAN_MSM: u32 = 16u32;
4405 pub const L2_NOTIFICATION_SOURCE_WLAN_SECURITY: u32 = 32u32;
4406 pub const L2_PROFILE_MAX_NAME_LENGTH: u32 = 256u32;
4407 pub const L2_REASON_CODE_DOT11_AC_BASE: u32 = 131072u32;
4408 pub const L2_REASON_CODE_DOT11_MSM_BASE: u32 = 196608u32;
4409 pub const L2_REASON_CODE_DOT11_SECURITY_BASE: u32 = 262144u32;
4410 pub const L2_REASON_CODE_DOT3_AC_BASE: u32 = 393216u32;
4411 pub const L2_REASON_CODE_DOT3_MSM_BASE: u32 = 458752u32;
4412 pub const L2_REASON_CODE_GEN_BASE: u32 = 65536u32;
4413 pub const L2_REASON_CODE_GROUP_SIZE: u32 = 65536u32;
4414 pub const L2_REASON_CODE_IHV_BASE: u32 = 589824u32;
4415 pub const L2_REASON_CODE_ONEX_BASE: u32 = 327680u32;
4416 pub const L2_REASON_CODE_PROFILE_BASE: u32 = 524288u32;
4417 pub const L2_REASON_CODE_PROFILE_MISSING: u32 = 1u32;
4418 pub const L2_REASON_CODE_RESERVED_BASE: u32 = 720896u32;
4419 pub const L2_REASON_CODE_SUCCESS: u32 = 0u32;
4420 pub const L2_REASON_CODE_UNKNOWN: u32 = 65537u32;
4421 pub const L2_REASON_CODE_WIMAX_BASE: u32 = 655360u32;
4422 pub const MAX_NUM_SUPPORTED_RATES: u32 = 8u32;
4423 pub const MAX_NUM_SUPPORTED_RATES_V2: u32 = 255u32;
4424 pub const NDIS_PACKET_TYPE_802_11_ALL_MULTICAST_DATA: u32 = 4u32;
4425 pub const NDIS_PACKET_TYPE_802_11_BROADCAST_DATA: u32 = 8u32;
4426 pub const NDIS_PACKET_TYPE_802_11_DIRECTED_DATA: u32 = 1u32;
4427 pub const NDIS_PACKET_TYPE_802_11_MULTICAST_DATA: u32 = 2u32;
4428 pub const NDIS_PACKET_TYPE_802_11_PROMISCUOUS_DATA: u32 = 32u32;
4429 pub const OID_DOT11_AP_JOIN_REQUEST: u32 = 218170205u32;
4430 pub const OID_DOT11_ATIM_WINDOW: u32 = 218170122u32;
4431 pub const OID_DOT11_BEACON_PERIOD: u32 = 218170139u32;
4432 pub const OID_DOT11_CCA_MODE_SUPPORTED: u32 = 218170166u32;
4433 pub const OID_DOT11_CCA_WATCHDOG_COUNT_MAX: u32 = 218170170u32;
4434 pub const OID_DOT11_CCA_WATCHDOG_COUNT_MIN: u32 = 218170172u32;
4435 pub const OID_DOT11_CCA_WATCHDOG_TIMER_MAX: u32 = 218170169u32;
4436 pub const OID_DOT11_CCA_WATCHDOG_TIMER_MIN: u32 = 218170171u32;
4437 pub const OID_DOT11_CFP_MAX_DURATION: u32 = 218170136u32;
4438 pub const OID_DOT11_CFP_PERIOD: u32 = 218170135u32;
4439 pub const OID_DOT11_CF_POLLABLE: u32 = 218170134u32;
4440 pub const OID_DOT11_CHANNEL_AGILITY_ENABLED: u32 = 218170184u32;
4441 pub const OID_DOT11_CHANNEL_AGILITY_PRESENT: u32 = 218170183u32;
4442 pub const OID_DOT11_COUNTERS_ENTRY: u32 = 218170149u32;
4443 pub const OID_DOT11_COUNTRY_STRING: u32 = 218170188u32;
4444 pub const OID_DOT11_CURRENT_ADDRESS: u32 = 218171138u32;
4445 pub const OID_DOT11_CURRENT_CCA_MODE: u32 = 218170167u32;
4446 pub const OID_DOT11_CURRENT_CHANNEL: u32 = 218170165u32;
4447 pub const OID_DOT11_CURRENT_CHANNEL_NUMBER: u32 = 218170159u32;
4448 pub const OID_DOT11_CURRENT_DWELL_TIME: u32 = 218170161u32;
4449 pub const OID_DOT11_CURRENT_FREQUENCY: u32 = 218170178u32;
4450 pub const OID_DOT11_CURRENT_INDEX: u32 = 218170164u32;
4451 pub const OID_DOT11_CURRENT_OFFLOAD_CAPABILITY: u32 = 218170113u32;
4452 pub const OID_DOT11_CURRENT_OPERATION_MODE: u32 = 218170120u32;
4453 pub const OID_DOT11_CURRENT_OPTIONAL_CAPABILITY: u32 = 218170131u32;
4454 pub const OID_DOT11_CURRENT_PACKET_FILTER: u32 = 218170121u32;
4455 pub const OID_DOT11_CURRENT_PATTERN: u32 = 218170163u32;
4456 pub const OID_DOT11_CURRENT_PHY_TYPE: u32 = 218170124u32;
4457 pub const OID_DOT11_CURRENT_REG_DOMAIN: u32 = 218170151u32;
4458 pub const OID_DOT11_CURRENT_RX_ANTENNA: u32 = 218170155u32;
4459 pub const OID_DOT11_CURRENT_SET: u32 = 218170162u32;
4460 pub const OID_DOT11_CURRENT_TX_ANTENNA: u32 = 218170153u32;
4461 pub const OID_DOT11_CURRENT_TX_POWER_LEVEL: u32 = 218170157u32;
4462 pub const OID_DOT11_DEFAULT_WEP_OFFLOAD: u32 = 218170116u32;
4463 pub const OID_DOT11_DEFAULT_WEP_UPLOAD: u32 = 218170117u32;
4464 pub const OID_DOT11_DIVERSITY_SELECTION_RX: u32 = 218170176u32;
4465 pub const OID_DOT11_DIVERSITY_SUPPORT: u32 = 218170154u32;
4466 pub const OID_DOT11_DSSS_OFDM_OPTION_ENABLED: u32 = 218170209u32;
4467 pub const OID_DOT11_DSSS_OFDM_OPTION_IMPLEMENTED: u32 = 218170208u32;
4468 pub const OID_DOT11_DTIM_PERIOD: u32 = 218170140u32;
4469 pub const OID_DOT11_ED_THRESHOLD: u32 = 218170168u32;
4470 pub const OID_DOT11_EHCC_CAPABILITY_ENABLED: u32 = 218170193u32;
4471 pub const OID_DOT11_EHCC_CAPABILITY_IMPLEMENTED: u32 = 218170192u32;
4472 pub const OID_DOT11_EHCC_NUMBER_OF_CHANNELS_FAMILY_INDEX: u32 = 218170191u32;
4473 pub const OID_DOT11_EHCC_PRIME_RADIX: u32 = 218170190u32;
4474 pub const OID_DOT11_ERP_PBCC_OPTION_ENABLED: u32 = 218170207u32;
4475 pub const OID_DOT11_ERP_PBCC_OPTION_IMPLEMENTED: u32 = 218170206u32;
4476 pub const OID_DOT11_FRAGMENTATION_THRESHOLD: u32 = 218170146u32;
4477 pub const OID_DOT11_FREQUENCY_BANDS_SUPPORTED: u32 = 218170180u32;
4478 pub const OID_DOT11_HOPPING_PATTERN: u32 = 218170199u32;
4479 pub const OID_DOT11_HOP_ALGORITHM_ADOPTED: u32 = 218170194u32;
4480 pub const OID_DOT11_HOP_MODULUS: u32 = 218170197u32;
4481 pub const OID_DOT11_HOP_OFFSET: u32 = 218170198u32;
4482 pub const OID_DOT11_HOP_TIME: u32 = 218170158u32;
4483 pub const OID_DOT11_HR_CCA_MODE_SUPPORTED: u32 = 218170185u32;
4484 pub const OID_DOT11_JOIN_REQUEST: u32 = 218170125u32;
4485 pub const OID_DOT11_LONG_RETRY_LIMIT: u32 = 218170145u32;
4486 pub const OID_DOT11_MAC_ADDRESS: u32 = 218170142u32;
4487 pub const OID_DOT11_MAXIMUM_LIST_SIZE: u32 = 218171141u32;
4488 pub const OID_DOT11_MAX_DWELL_TIME: u32 = 218170160u32;
4489 pub const OID_DOT11_MAX_MAC_ADDRESS_STATES: u32 = 218170212u32;
4490 pub const OID_DOT11_MAX_RECEIVE_LIFETIME: u32 = 218170148u32;
4491 pub const OID_DOT11_MAX_TRANSMIT_MSDU_LIFETIME: u32 = 218170147u32;
4492 pub const OID_DOT11_MEDIUM_OCCUPANCY_LIMIT: u32 = 218170133u32;
4493 pub const OID_DOT11_MPDU_MAX_LENGTH: u32 = 218170118u32;
4494 pub const OID_DOT11_MULTICAST_LIST: u32 = 218171140u32;
4495 pub const OID_DOT11_MULTI_DOMAIN_CAPABILITY: u32 = 218170189u32;
4496 pub const OID_DOT11_MULTI_DOMAIN_CAPABILITY_ENABLED: u32 = 218170187u32;
4497 pub const OID_DOT11_MULTI_DOMAIN_CAPABILITY_IMPLEMENTED: u32 = 218170186u32;
4498 pub const OID_DOT11_NDIS_START: u32 = 218170112u32;
4499 pub const OID_DOT11_NIC_POWER_STATE: u32 = 218170129u32;
4500 pub const OID_DOT11_NIC_SPECIFIC_EXTENSION: u32 = 218170204u32;
4501 pub const OID_DOT11_NUMBER_OF_HOPPING_SETS: u32 = 218170196u32;
4502 pub const OID_DOT11_OFFLOAD_CAPABILITY: u32 = 218170112u32;
4503 pub const OID_DOT11_OPERATIONAL_RATE_SET: u32 = 218170138u32;
4504 pub const OID_DOT11_OPERATION_MODE_CAPABILITY: u32 = 218170119u32;
4505 pub const OID_DOT11_OPTIONAL_CAPABILITY: u32 = 218170130u32;
4506 pub const OID_DOT11_PBCC_OPTION_IMPLEMENTED: u32 = 218170182u32;
4507 pub const OID_DOT11_PERMANENT_ADDRESS: u32 = 218171139u32;
4508 pub const OID_DOT11_POWER_MGMT_MODE: u32 = 218170137u32;
4509 pub const OID_DOT11_PRIVATE_OIDS_START: u32 = 218171136u32;
4510 pub const OID_DOT11_QOS_TX_DURATION: u32 = 218170219u32;
4511 pub const OID_DOT11_QOS_TX_MEDIUM_TIME: u32 = 218170220u32;
4512 pub const OID_DOT11_QOS_TX_QUEUES_SUPPORTED: u32 = 218170218u32;
4513 pub const OID_DOT11_RANDOM_TABLE_FIELD_NUMBER: u32 = 218170200u32;
4514 pub const OID_DOT11_RANDOM_TABLE_FLAG: u32 = 218170195u32;
4515 pub const OID_DOT11_RECV_SENSITIVITY_LIST: u32 = 218170213u32;
4516 pub const OID_DOT11_REG_DOMAINS_SUPPORT_VALUE: u32 = 218170173u32;
4517 pub const OID_DOT11_RESET_REQUEST: u32 = 218170128u32;
4518 pub const OID_DOT11_RF_USAGE: u32 = 218170203u32;
4519 pub const OID_DOT11_RSSI_RANGE: u32 = 218170202u32;
4520 pub const OID_DOT11_RTS_THRESHOLD: u32 = 218170143u32;
4521 pub const OID_DOT11_SCAN_REQUEST: u32 = 218170123u32;
4522 pub const OID_DOT11_SHORT_PREAMBLE_OPTION_IMPLEMENTED: u32 = 218170181u32;
4523 pub const OID_DOT11_SHORT_RETRY_LIMIT: u32 = 218170144u32;
4524 pub const OID_DOT11_SHORT_SLOT_TIME_OPTION_ENABLED: u32 = 218170211u32;
4525 pub const OID_DOT11_SHORT_SLOT_TIME_OPTION_IMPLEMENTED: u32 = 218170210u32;
4526 pub const OID_DOT11_START_REQUEST: u32 = 218170126u32;
4527 pub const OID_DOT11_STATION_ID: u32 = 218170132u32;
4528 pub const OID_DOT11_SUPPORTED_DATA_RATES_VALUE: u32 = 218170177u32;
4529 pub const OID_DOT11_SUPPORTED_DSSS_CHANNEL_LIST: u32 = 218170222u32;
4530 pub const OID_DOT11_SUPPORTED_OFDM_FREQUENCY_LIST: u32 = 218170221u32;
4531 pub const OID_DOT11_SUPPORTED_PHY_TYPES: u32 = 218170150u32;
4532 pub const OID_DOT11_SUPPORTED_POWER_LEVELS: u32 = 218170156u32;
4533 pub const OID_DOT11_SUPPORTED_RX_ANTENNA: u32 = 218170175u32;
4534 pub const OID_DOT11_SUPPORTED_TX_ANTENNA: u32 = 218170174u32;
4535 pub const OID_DOT11_TEMP_TYPE: u32 = 218170152u32;
4536 pub const OID_DOT11_TI_THRESHOLD: u32 = 218170179u32;
4537 pub const OID_DOT11_UPDATE_IE: u32 = 218170127u32;
4538 pub const OID_DOT11_WEP_ICV_ERROR_COUNT: u32 = 218170141u32;
4539 pub const OID_DOT11_WEP_OFFLOAD: u32 = 218170114u32;
4540 pub const OID_DOT11_WEP_UPLOAD: u32 = 218170115u32;
4541 pub const OID_DOT11_WME_AC_PARAMETERS: u32 = 218170216u32;
4542 pub const OID_DOT11_WME_ENABLED: u32 = 218170215u32;
4543 pub const OID_DOT11_WME_IMPLEMENTED: u32 = 218170214u32;
4544 pub const OID_DOT11_WME_UPDATE_IE: u32 = 218170217u32;
4545 pub const OID_DOT11_WPA_TSC: u32 = 218170201u32;
4546 pub type ONEX_AUTH_IDENTITY = i32;
4547 pub const OneXAuthIdentityNone: ONEX_AUTH_IDENTITY = 0i32;
4548 pub const OneXAuthIdentityMachine: ONEX_AUTH_IDENTITY = 1i32;
4549 pub const OneXAuthIdentityUser: ONEX_AUTH_IDENTITY = 2i32;
4550 pub const OneXAuthIdentityExplicitUser: ONEX_AUTH_IDENTITY = 3i32;
4551 pub const OneXAuthIdentityGuest: ONEX_AUTH_IDENTITY = 4i32;
4552 pub const OneXAuthIdentityInvalid: ONEX_AUTH_IDENTITY = 5i32;
4553 #[repr(C)]
4554 #[cfg(feature = "Win32_Foundation")]
4555 pub struct ONEX_AUTH_PARAMS {
4556     pub fUpdatePending: super::super::Foundation::BOOL,
4557     pub oneXConnProfile: ONEX_VARIABLE_BLOB,
4558     pub authIdentity: ONEX_AUTH_IDENTITY,
4559     pub dwQuarantineState: u32,
4560     pub _bitfield: u32,
4561     pub dwSessionId: u32,
4562     pub hUserToken: super::super::Foundation::HANDLE,
4563     pub OneXUserProfile: ONEX_VARIABLE_BLOB,
4564     pub Identity: ONEX_VARIABLE_BLOB,
4565     pub UserName: ONEX_VARIABLE_BLOB,
4566     pub Domain: ONEX_VARIABLE_BLOB,
4567 }
4568 #[cfg(feature = "Win32_Foundation")]
4569 impl ::core::marker::Copy for ONEX_AUTH_PARAMS {}
4570 #[cfg(feature = "Win32_Foundation")]
4571 impl ::core::clone::Clone for ONEX_AUTH_PARAMS {
clone(&self) -> Self4572     fn clone(&self) -> Self {
4573         *self
4574     }
4575 }
4576 pub type ONEX_AUTH_RESTART_REASON = i32;
4577 pub const OneXRestartReasonPeerInitiated: ONEX_AUTH_RESTART_REASON = 0i32;
4578 pub const OneXRestartReasonMsmInitiated: ONEX_AUTH_RESTART_REASON = 1i32;
4579 pub const OneXRestartReasonOneXHeldStateTimeout: ONEX_AUTH_RESTART_REASON = 2i32;
4580 pub const OneXRestartReasonOneXAuthTimeout: ONEX_AUTH_RESTART_REASON = 3i32;
4581 pub const OneXRestartReasonOneXConfigurationChanged: ONEX_AUTH_RESTART_REASON = 4i32;
4582 pub const OneXRestartReasonOneXUserChanged: ONEX_AUTH_RESTART_REASON = 5i32;
4583 pub const OneXRestartReasonQuarantineStateChanged: ONEX_AUTH_RESTART_REASON = 6i32;
4584 pub const OneXRestartReasonAltCredsTrial: ONEX_AUTH_RESTART_REASON = 7i32;
4585 pub const OneXRestartReasonInvalid: ONEX_AUTH_RESTART_REASON = 8i32;
4586 pub type ONEX_AUTH_STATUS = i32;
4587 pub const OneXAuthNotStarted: ONEX_AUTH_STATUS = 0i32;
4588 pub const OneXAuthInProgress: ONEX_AUTH_STATUS = 1i32;
4589 pub const OneXAuthNoAuthenticatorFound: ONEX_AUTH_STATUS = 2i32;
4590 pub const OneXAuthSuccess: ONEX_AUTH_STATUS = 3i32;
4591 pub const OneXAuthFailure: ONEX_AUTH_STATUS = 4i32;
4592 pub const OneXAuthInvalid: ONEX_AUTH_STATUS = 5i32;
4593 #[repr(C)]
4594 #[cfg(feature = "Win32_Security_ExtensibleAuthenticationProtocol")]
4595 pub struct ONEX_EAP_ERROR {
4596     pub dwWinError: u32,
4597     pub r#type: super::super::Security::ExtensibleAuthenticationProtocol::EAP_METHOD_TYPE,
4598     pub dwReasonCode: u32,
4599     pub rootCauseGuid: ::windows_sys::core::GUID,
4600     pub repairGuid: ::windows_sys::core::GUID,
4601     pub helpLinkGuid: ::windows_sys::core::GUID,
4602     pub _bitfield: u32,
4603     pub RootCauseString: ONEX_VARIABLE_BLOB,
4604     pub RepairString: ONEX_VARIABLE_BLOB,
4605 }
4606 #[cfg(feature = "Win32_Security_ExtensibleAuthenticationProtocol")]
4607 impl ::core::marker::Copy for ONEX_EAP_ERROR {}
4608 #[cfg(feature = "Win32_Security_ExtensibleAuthenticationProtocol")]
4609 impl ::core::clone::Clone for ONEX_EAP_ERROR {
clone(&self) -> Self4610     fn clone(&self) -> Self {
4611         *self
4612     }
4613 }
4614 pub type ONEX_EAP_METHOD_BACKEND_SUPPORT = i32;
4615 pub const OneXEapMethodBackendSupportUnknown: ONEX_EAP_METHOD_BACKEND_SUPPORT = 0i32;
4616 pub const OneXEapMethodBackendSupported: ONEX_EAP_METHOD_BACKEND_SUPPORT = 1i32;
4617 pub const OneXEapMethodBackendUnsupported: ONEX_EAP_METHOD_BACKEND_SUPPORT = 2i32;
4618 pub type ONEX_NOTIFICATION_TYPE = i32;
4619 pub const OneXPublicNotificationBase: ONEX_NOTIFICATION_TYPE = 0i32;
4620 pub const OneXNotificationTypeResultUpdate: ONEX_NOTIFICATION_TYPE = 1i32;
4621 pub const OneXNotificationTypeAuthRestarted: ONEX_NOTIFICATION_TYPE = 2i32;
4622 pub const OneXNotificationTypeEventInvalid: ONEX_NOTIFICATION_TYPE = 3i32;
4623 pub const OneXNumNotifications: ONEX_NOTIFICATION_TYPE = 3i32;
4624 pub type ONEX_REASON_CODE = i32;
4625 pub const ONEX_REASON_CODE_SUCCESS: ONEX_REASON_CODE = 0i32;
4626 pub const ONEX_REASON_START: ONEX_REASON_CODE = 327680i32;
4627 pub const ONEX_UNABLE_TO_IDENTIFY_USER: ONEX_REASON_CODE = 327681i32;
4628 pub const ONEX_IDENTITY_NOT_FOUND: ONEX_REASON_CODE = 327682i32;
4629 pub const ONEX_UI_DISABLED: ONEX_REASON_CODE = 327683i32;
4630 pub const ONEX_UI_FAILURE: ONEX_REASON_CODE = 327684i32;
4631 pub const ONEX_EAP_FAILURE_RECEIVED: ONEX_REASON_CODE = 327685i32;
4632 pub const ONEX_AUTHENTICATOR_NO_LONGER_PRESENT: ONEX_REASON_CODE = 327686i32;
4633 pub const ONEX_NO_RESPONSE_TO_IDENTITY: ONEX_REASON_CODE = 327687i32;
4634 pub const ONEX_PROFILE_VERSION_NOT_SUPPORTED: ONEX_REASON_CODE = 327688i32;
4635 pub const ONEX_PROFILE_INVALID_LENGTH: ONEX_REASON_CODE = 327689i32;
4636 pub const ONEX_PROFILE_DISALLOWED_EAP_TYPE: ONEX_REASON_CODE = 327690i32;
4637 pub const ONEX_PROFILE_INVALID_EAP_TYPE_OR_FLAG: ONEX_REASON_CODE = 327691i32;
4638 pub const ONEX_PROFILE_INVALID_ONEX_FLAGS: ONEX_REASON_CODE = 327692i32;
4639 pub const ONEX_PROFILE_INVALID_TIMER_VALUE: ONEX_REASON_CODE = 327693i32;
4640 pub const ONEX_PROFILE_INVALID_SUPPLICANT_MODE: ONEX_REASON_CODE = 327694i32;
4641 pub const ONEX_PROFILE_INVALID_AUTH_MODE: ONEX_REASON_CODE = 327695i32;
4642 pub const ONEX_PROFILE_INVALID_EAP_CONNECTION_PROPERTIES: ONEX_REASON_CODE = 327696i32;
4643 pub const ONEX_UI_CANCELLED: ONEX_REASON_CODE = 327697i32;
4644 pub const ONEX_PROFILE_INVALID_EXPLICIT_CREDENTIALS: ONEX_REASON_CODE = 327698i32;
4645 pub const ONEX_PROFILE_EXPIRED_EXPLICIT_CREDENTIALS: ONEX_REASON_CODE = 327699i32;
4646 pub const ONEX_UI_NOT_PERMITTED: ONEX_REASON_CODE = 327700i32;
4647 #[repr(C)]
4648 #[cfg(feature = "Win32_Foundation")]
4649 pub struct ONEX_RESULT_UPDATE_DATA {
4650     pub oneXStatus: ONEX_STATUS,
4651     pub BackendSupport: ONEX_EAP_METHOD_BACKEND_SUPPORT,
4652     pub fBackendEngaged: super::super::Foundation::BOOL,
4653     pub _bitfield: u32,
4654     pub authParams: ONEX_VARIABLE_BLOB,
4655     pub eapError: ONEX_VARIABLE_BLOB,
4656 }
4657 #[cfg(feature = "Win32_Foundation")]
4658 impl ::core::marker::Copy for ONEX_RESULT_UPDATE_DATA {}
4659 #[cfg(feature = "Win32_Foundation")]
4660 impl ::core::clone::Clone for ONEX_RESULT_UPDATE_DATA {
clone(&self) -> Self4661     fn clone(&self) -> Self {
4662         *self
4663     }
4664 }
4665 #[repr(C)]
4666 pub struct ONEX_STATUS {
4667     pub authStatus: ONEX_AUTH_STATUS,
4668     pub dwReason: u32,
4669     pub dwError: u32,
4670 }
4671 impl ::core::marker::Copy for ONEX_STATUS {}
4672 impl ::core::clone::Clone for ONEX_STATUS {
clone(&self) -> Self4673     fn clone(&self) -> Self {
4674         *self
4675     }
4676 }
4677 #[repr(C)]
4678 pub struct ONEX_USER_INFO {
4679     pub authIdentity: ONEX_AUTH_IDENTITY,
4680     pub _bitfield: u32,
4681     pub UserName: ONEX_VARIABLE_BLOB,
4682     pub DomainName: ONEX_VARIABLE_BLOB,
4683 }
4684 impl ::core::marker::Copy for ONEX_USER_INFO {}
4685 impl ::core::clone::Clone for ONEX_USER_INFO {
clone(&self) -> Self4686     fn clone(&self) -> Self {
4687         *self
4688     }
4689 }
4690 #[repr(C)]
4691 pub struct ONEX_VARIABLE_BLOB {
4692     pub dwSize: u32,
4693     pub dwOffset: u32,
4694 }
4695 impl ::core::marker::Copy for ONEX_VARIABLE_BLOB {}
4696 impl ::core::clone::Clone for ONEX_VARIABLE_BLOB {
clone(&self) -> Self4697     fn clone(&self) -> Self {
4698         *self
4699     }
4700 }
4701 #[repr(C)]
4702 #[cfg(feature = "Win32_Foundation")]
4703 pub struct WFDSVC_CONNECTION_CAPABILITY {
4704     pub bNew: super::super::Foundation::BOOLEAN,
4705     pub bClient: super::super::Foundation::BOOLEAN,
4706     pub bGO: super::super::Foundation::BOOLEAN,
4707 }
4708 #[cfg(feature = "Win32_Foundation")]
4709 impl ::core::marker::Copy for WFDSVC_CONNECTION_CAPABILITY {}
4710 #[cfg(feature = "Win32_Foundation")]
4711 impl ::core::clone::Clone for WFDSVC_CONNECTION_CAPABILITY {
clone(&self) -> Self4712     fn clone(&self) -> Self {
4713         *self
4714     }
4715 }
4716 pub const WFDSVC_CONNECTION_CAPABILITY_CLIENT: u32 = 2u32;
4717 pub const WFDSVC_CONNECTION_CAPABILITY_GO: u32 = 4u32;
4718 pub const WFDSVC_CONNECTION_CAPABILITY_NEW: u32 = 1u32;
4719 pub const WFD_API_VERSION: u32 = 1u32;
4720 pub const WFD_API_VERSION_1_0: u32 = 1u32;
4721 #[repr(C)]
4722 pub struct WFD_GROUP_ID {
4723     pub DeviceAddress: [u8; 6],
4724     pub GroupSSID: DOT11_SSID,
4725 }
4726 impl ::core::marker::Copy for WFD_GROUP_ID {}
4727 impl ::core::clone::Clone for WFD_GROUP_ID {
clone(&self) -> Self4728     fn clone(&self) -> Self {
4729         *self
4730     }
4731 }
4732 #[cfg(feature = "Win32_Foundation")]
4733 pub type WFD_OPEN_SESSION_COMPLETE_CALLBACK = unsafe extern "system" fn(hsessionhandle: super::super::Foundation::HANDLE, pvcontext: *const ::core::ffi::c_void, guidsessioninterface: ::windows_sys::core::GUID, dwerror: u32, dwreasoncode: u32);
4734 pub type WFD_ROLE_TYPE = i32;
4735 pub const WFD_ROLE_TYPE_NONE: WFD_ROLE_TYPE = 0i32;
4736 pub const WFD_ROLE_TYPE_DEVICE: WFD_ROLE_TYPE = 1i32;
4737 pub const WFD_ROLE_TYPE_GROUP_OWNER: WFD_ROLE_TYPE = 2i32;
4738 pub const WFD_ROLE_TYPE_CLIENT: WFD_ROLE_TYPE = 4i32;
4739 pub const WFD_ROLE_TYPE_MAX: WFD_ROLE_TYPE = 5i32;
4740 pub type WLAN_ADHOC_NETWORK_STATE = i32;
4741 pub const wlan_adhoc_network_state_formed: WLAN_ADHOC_NETWORK_STATE = 0i32;
4742 pub const wlan_adhoc_network_state_connected: WLAN_ADHOC_NETWORK_STATE = 1i32;
4743 pub const WLAN_API_VERSION: u32 = 2u32;
4744 pub const WLAN_API_VERSION_1_0: u32 = 1u32;
4745 pub const WLAN_API_VERSION_2_0: u32 = 2u32;
4746 #[repr(C)]
4747 pub struct WLAN_ASSOCIATION_ATTRIBUTES {
4748     pub dot11Ssid: DOT11_SSID,
4749     pub dot11BssType: DOT11_BSS_TYPE,
4750     pub dot11Bssid: [u8; 6],
4751     pub dot11PhyType: DOT11_PHY_TYPE,
4752     pub uDot11PhyIndex: u32,
4753     pub wlanSignalQuality: u32,
4754     pub ulRxRate: u32,
4755     pub ulTxRate: u32,
4756 }
4757 impl ::core::marker::Copy for WLAN_ASSOCIATION_ATTRIBUTES {}
4758 impl ::core::clone::Clone for WLAN_ASSOCIATION_ATTRIBUTES {
clone(&self) -> Self4759     fn clone(&self) -> Self {
4760         *self
4761     }
4762 }
4763 #[repr(C)]
4764 pub struct WLAN_AUTH_CIPHER_PAIR_LIST {
4765     pub dwNumberOfItems: u32,
4766     pub pAuthCipherPairList: [DOT11_AUTH_CIPHER_PAIR; 1],
4767 }
4768 impl ::core::marker::Copy for WLAN_AUTH_CIPHER_PAIR_LIST {}
4769 impl ::core::clone::Clone for WLAN_AUTH_CIPHER_PAIR_LIST {
clone(&self) -> Self4770     fn clone(&self) -> Self {
4771         *self
4772     }
4773 }
4774 pub type WLAN_AUTOCONF_OPCODE = i32;
4775 pub const wlan_autoconf_opcode_start: WLAN_AUTOCONF_OPCODE = 0i32;
4776 pub const wlan_autoconf_opcode_show_denied_networks: WLAN_AUTOCONF_OPCODE = 1i32;
4777 pub const wlan_autoconf_opcode_power_setting: WLAN_AUTOCONF_OPCODE = 2i32;
4778 pub const wlan_autoconf_opcode_only_use_gp_profiles_for_allowed_networks: WLAN_AUTOCONF_OPCODE = 3i32;
4779 pub const wlan_autoconf_opcode_allow_explicit_creds: WLAN_AUTOCONF_OPCODE = 4i32;
4780 pub const wlan_autoconf_opcode_block_period: WLAN_AUTOCONF_OPCODE = 5i32;
4781 pub const wlan_autoconf_opcode_allow_virtual_station_extensibility: WLAN_AUTOCONF_OPCODE = 6i32;
4782 pub const wlan_autoconf_opcode_end: WLAN_AUTOCONF_OPCODE = 7i32;
4783 #[repr(C)]
4784 #[cfg(feature = "Win32_Foundation")]
4785 pub struct WLAN_AVAILABLE_NETWORK {
4786     pub strProfileName: [u16; 256],
4787     pub dot11Ssid: DOT11_SSID,
4788     pub dot11BssType: DOT11_BSS_TYPE,
4789     pub uNumberOfBssids: u32,
4790     pub bNetworkConnectable: super::super::Foundation::BOOL,
4791     pub wlanNotConnectableReason: u32,
4792     pub uNumberOfPhyTypes: u32,
4793     pub dot11PhyTypes: [DOT11_PHY_TYPE; 8],
4794     pub bMorePhyTypes: super::super::Foundation::BOOL,
4795     pub wlanSignalQuality: u32,
4796     pub bSecurityEnabled: super::super::Foundation::BOOL,
4797     pub dot11DefaultAuthAlgorithm: DOT11_AUTH_ALGORITHM,
4798     pub dot11DefaultCipherAlgorithm: DOT11_CIPHER_ALGORITHM,
4799     pub dwFlags: u32,
4800     pub dwReserved: u32,
4801 }
4802 #[cfg(feature = "Win32_Foundation")]
4803 impl ::core::marker::Copy for WLAN_AVAILABLE_NETWORK {}
4804 #[cfg(feature = "Win32_Foundation")]
4805 impl ::core::clone::Clone for WLAN_AVAILABLE_NETWORK {
clone(&self) -> Self4806     fn clone(&self) -> Self {
4807         *self
4808     }
4809 }
4810 pub const WLAN_AVAILABLE_NETWORK_ANQP_SUPPORTED: u32 = 32u32;
4811 pub const WLAN_AVAILABLE_NETWORK_AUTO_CONNECT_FAILED: u32 = 256u32;
4812 pub const WLAN_AVAILABLE_NETWORK_CONNECTED: u32 = 1u32;
4813 pub const WLAN_AVAILABLE_NETWORK_CONSOLE_USER_PROFILE: u32 = 4u32;
4814 pub const WLAN_AVAILABLE_NETWORK_HAS_PROFILE: u32 = 2u32;
4815 pub const WLAN_AVAILABLE_NETWORK_HOTSPOT2_DOMAIN: u32 = 64u32;
4816 pub const WLAN_AVAILABLE_NETWORK_HOTSPOT2_ENABLED: u32 = 16u32;
4817 pub const WLAN_AVAILABLE_NETWORK_HOTSPOT2_ROAMING: u32 = 128u32;
4818 pub const WLAN_AVAILABLE_NETWORK_INCLUDE_ALL_ADHOC_PROFILES: u32 = 1u32;
4819 pub const WLAN_AVAILABLE_NETWORK_INCLUDE_ALL_MANUAL_HIDDEN_PROFILES: u32 = 2u32;
4820 pub const WLAN_AVAILABLE_NETWORK_INTERWORKING_SUPPORTED: u32 = 8u32;
4821 #[repr(C)]
4822 #[cfg(feature = "Win32_Foundation")]
4823 pub struct WLAN_AVAILABLE_NETWORK_LIST {
4824     pub dwNumberOfItems: u32,
4825     pub dwIndex: u32,
4826     pub Network: [WLAN_AVAILABLE_NETWORK; 1],
4827 }
4828 #[cfg(feature = "Win32_Foundation")]
4829 impl ::core::marker::Copy for WLAN_AVAILABLE_NETWORK_LIST {}
4830 #[cfg(feature = "Win32_Foundation")]
4831 impl ::core::clone::Clone for WLAN_AVAILABLE_NETWORK_LIST {
clone(&self) -> Self4832     fn clone(&self) -> Self {
4833         *self
4834     }
4835 }
4836 #[repr(C)]
4837 #[cfg(feature = "Win32_Foundation")]
4838 pub struct WLAN_AVAILABLE_NETWORK_LIST_V2 {
4839     pub dwNumberOfItems: u32,
4840     pub dwIndex: u32,
4841     pub Network: [WLAN_AVAILABLE_NETWORK_V2; 1],
4842 }
4843 #[cfg(feature = "Win32_Foundation")]
4844 impl ::core::marker::Copy for WLAN_AVAILABLE_NETWORK_LIST_V2 {}
4845 #[cfg(feature = "Win32_Foundation")]
4846 impl ::core::clone::Clone for WLAN_AVAILABLE_NETWORK_LIST_V2 {
clone(&self) -> Self4847     fn clone(&self) -> Self {
4848         *self
4849     }
4850 }
4851 #[repr(C)]
4852 #[cfg(feature = "Win32_Foundation")]
4853 pub struct WLAN_AVAILABLE_NETWORK_V2 {
4854     pub strProfileName: [u16; 256],
4855     pub dot11Ssid: DOT11_SSID,
4856     pub dot11BssType: DOT11_BSS_TYPE,
4857     pub uNumberOfBssids: u32,
4858     pub bNetworkConnectable: super::super::Foundation::BOOL,
4859     pub wlanNotConnectableReason: u32,
4860     pub uNumberOfPhyTypes: u32,
4861     pub dot11PhyTypes: [DOT11_PHY_TYPE; 8],
4862     pub bMorePhyTypes: super::super::Foundation::BOOL,
4863     pub wlanSignalQuality: u32,
4864     pub bSecurityEnabled: super::super::Foundation::BOOL,
4865     pub dot11DefaultAuthAlgorithm: DOT11_AUTH_ALGORITHM,
4866     pub dot11DefaultCipherAlgorithm: DOT11_CIPHER_ALGORITHM,
4867     pub dwFlags: u32,
4868     pub AccessNetworkOptions: DOT11_ACCESSNETWORKOPTIONS,
4869     pub dot11HESSID: [u8; 6],
4870     pub VenueInfo: DOT11_VENUEINFO,
4871     pub dwReserved: u32,
4872 }
4873 #[cfg(feature = "Win32_Foundation")]
4874 impl ::core::marker::Copy for WLAN_AVAILABLE_NETWORK_V2 {}
4875 #[cfg(feature = "Win32_Foundation")]
4876 impl ::core::clone::Clone for WLAN_AVAILABLE_NETWORK_V2 {
clone(&self) -> Self4877     fn clone(&self) -> Self {
4878         *self
4879     }
4880 }
4881 #[repr(C)]
4882 #[cfg(feature = "Win32_Foundation")]
4883 pub struct WLAN_BSS_ENTRY {
4884     pub dot11Ssid: DOT11_SSID,
4885     pub uPhyId: u32,
4886     pub dot11Bssid: [u8; 6],
4887     pub dot11BssType: DOT11_BSS_TYPE,
4888     pub dot11BssPhyType: DOT11_PHY_TYPE,
4889     pub lRssi: i32,
4890     pub uLinkQuality: u32,
4891     pub bInRegDomain: super::super::Foundation::BOOLEAN,
4892     pub usBeaconPeriod: u16,
4893     pub ullTimestamp: u64,
4894     pub ullHostTimestamp: u64,
4895     pub usCapabilityInformation: u16,
4896     pub ulChCenterFrequency: u32,
4897     pub wlanRateSet: WLAN_RATE_SET,
4898     pub ulIeOffset: u32,
4899     pub ulIeSize: u32,
4900 }
4901 #[cfg(feature = "Win32_Foundation")]
4902 impl ::core::marker::Copy for WLAN_BSS_ENTRY {}
4903 #[cfg(feature = "Win32_Foundation")]
4904 impl ::core::clone::Clone for WLAN_BSS_ENTRY {
clone(&self) -> Self4905     fn clone(&self) -> Self {
4906         *self
4907     }
4908 }
4909 #[repr(C)]
4910 #[cfg(feature = "Win32_Foundation")]
4911 pub struct WLAN_BSS_LIST {
4912     pub dwTotalSize: u32,
4913     pub dwNumberOfItems: u32,
4914     pub wlanBssEntries: [WLAN_BSS_ENTRY; 1],
4915 }
4916 #[cfg(feature = "Win32_Foundation")]
4917 impl ::core::marker::Copy for WLAN_BSS_LIST {}
4918 #[cfg(feature = "Win32_Foundation")]
4919 impl ::core::clone::Clone for WLAN_BSS_LIST {
clone(&self) -> Self4920     fn clone(&self) -> Self {
4921         *self
4922     }
4923 }
4924 pub const WLAN_CONNECTION_ADHOC_JOIN_ONLY: u32 = 2u32;
4925 #[repr(C)]
4926 #[cfg(feature = "Win32_Foundation")]
4927 pub struct WLAN_CONNECTION_ATTRIBUTES {
4928     pub isState: WLAN_INTERFACE_STATE,
4929     pub wlanConnectionMode: WLAN_CONNECTION_MODE,
4930     pub strProfileName: [u16; 256],
4931     pub wlanAssociationAttributes: WLAN_ASSOCIATION_ATTRIBUTES,
4932     pub wlanSecurityAttributes: WLAN_SECURITY_ATTRIBUTES,
4933 }
4934 #[cfg(feature = "Win32_Foundation")]
4935 impl ::core::marker::Copy for WLAN_CONNECTION_ATTRIBUTES {}
4936 #[cfg(feature = "Win32_Foundation")]
4937 impl ::core::clone::Clone for WLAN_CONNECTION_ATTRIBUTES {
clone(&self) -> Self4938     fn clone(&self) -> Self {
4939         *self
4940     }
4941 }
4942 pub const WLAN_CONNECTION_EAPOL_PASSTHROUGH: u32 = 8u32;
4943 pub const WLAN_CONNECTION_HIDDEN_NETWORK: u32 = 1u32;
4944 pub const WLAN_CONNECTION_IGNORE_PRIVACY_BIT: u32 = 4u32;
4945 pub type WLAN_CONNECTION_MODE = i32;
4946 pub const wlan_connection_mode_profile: WLAN_CONNECTION_MODE = 0i32;
4947 pub const wlan_connection_mode_temporary_profile: WLAN_CONNECTION_MODE = 1i32;
4948 pub const wlan_connection_mode_discovery_secure: WLAN_CONNECTION_MODE = 2i32;
4949 pub const wlan_connection_mode_discovery_unsecure: WLAN_CONNECTION_MODE = 3i32;
4950 pub const wlan_connection_mode_auto: WLAN_CONNECTION_MODE = 4i32;
4951 pub const wlan_connection_mode_invalid: WLAN_CONNECTION_MODE = 5i32;
4952 #[repr(C)]
4953 #[cfg(feature = "Win32_Foundation")]
4954 pub struct WLAN_CONNECTION_NOTIFICATION_DATA {
4955     pub wlanConnectionMode: WLAN_CONNECTION_MODE,
4956     pub strProfileName: [u16; 256],
4957     pub dot11Ssid: DOT11_SSID,
4958     pub dot11BssType: DOT11_BSS_TYPE,
4959     pub bSecurityEnabled: super::super::Foundation::BOOL,
4960     pub wlanReasonCode: u32,
4961     pub dwFlags: WLAN_CONNECTION_NOTIFICATION_FLAGS,
4962     pub strProfileXml: [u16; 1],
4963 }
4964 #[cfg(feature = "Win32_Foundation")]
4965 impl ::core::marker::Copy for WLAN_CONNECTION_NOTIFICATION_DATA {}
4966 #[cfg(feature = "Win32_Foundation")]
4967 impl ::core::clone::Clone for WLAN_CONNECTION_NOTIFICATION_DATA {
clone(&self) -> Self4968     fn clone(&self) -> Self {
4969         *self
4970     }
4971 }
4972 pub type WLAN_CONNECTION_NOTIFICATION_FLAGS = u32;
4973 pub const WLAN_CONNECTION_NOTIFICATION_ADHOC_NETWORK_FORMED: WLAN_CONNECTION_NOTIFICATION_FLAGS = 1u32;
4974 pub const WLAN_CONNECTION_NOTIFICATION_CONSOLE_USER_PROFILE: WLAN_CONNECTION_NOTIFICATION_FLAGS = 4u32;
4975 #[repr(C)]
4976 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4977 pub struct WLAN_CONNECTION_PARAMETERS {
4978     pub wlanConnectionMode: WLAN_CONNECTION_MODE,
4979     pub strProfile: super::super::Foundation::PWSTR,
4980     pub pDot11Ssid: *mut DOT11_SSID,
4981     pub pDesiredBssidList: *mut DOT11_BSSID_LIST,
4982     pub dot11BssType: DOT11_BSS_TYPE,
4983     pub dwFlags: u32,
4984 }
4985 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4986 impl ::core::marker::Copy for WLAN_CONNECTION_PARAMETERS {}
4987 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4988 impl ::core::clone::Clone for WLAN_CONNECTION_PARAMETERS {
clone(&self) -> Self4989     fn clone(&self) -> Self {
4990         *self
4991     }
4992 }
4993 #[repr(C)]
4994 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
4995 pub struct WLAN_CONNECTION_PARAMETERS_V2 {
4996     pub wlanConnectionMode: WLAN_CONNECTION_MODE,
4997     pub strProfile: super::super::Foundation::PWSTR,
4998     pub pDot11Ssid: *mut DOT11_SSID,
4999     pub pDot11Hessid: *mut u8,
5000     pub pDesiredBssidList: *mut DOT11_BSSID_LIST,
5001     pub dot11BssType: DOT11_BSS_TYPE,
5002     pub dwFlags: u32,
5003     pub pDot11AccessNetworkOptions: *mut DOT11_ACCESSNETWORKOPTIONS,
5004 }
5005 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
5006 impl ::core::marker::Copy for WLAN_CONNECTION_PARAMETERS_V2 {}
5007 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_NetworkManagement_Ndis"))]
5008 impl ::core::clone::Clone for WLAN_CONNECTION_PARAMETERS_V2 {
clone(&self) -> Self5009     fn clone(&self) -> Self {
5010         *self
5011     }
5012 }
5013 pub const WLAN_CONNECTION_PERSIST_DISCOVERY_PROFILE: u32 = 16u32;
5014 pub const WLAN_CONNECTION_PERSIST_DISCOVERY_PROFILE_CONNECTION_MODE_AUTO: u32 = 32u32;
5015 pub const WLAN_CONNECTION_PERSIST_DISCOVERY_PROFILE_OVERWRITE_EXISTING: u32 = 64u32;
5016 #[repr(C)]
5017 pub struct WLAN_COUNTRY_OR_REGION_STRING_LIST {
5018     pub dwNumberOfItems: u32,
5019     pub pCountryOrRegionStringList: [u8; 3],
5020 }
5021 impl ::core::marker::Copy for WLAN_COUNTRY_OR_REGION_STRING_LIST {}
5022 impl ::core::clone::Clone for WLAN_COUNTRY_OR_REGION_STRING_LIST {
clone(&self) -> Self5023     fn clone(&self) -> Self {
5024         *self
5025     }
5026 }
5027 #[repr(C)]
5028 pub struct WLAN_DEVICE_SERVICE_GUID_LIST {
5029     pub dwNumberOfItems: u32,
5030     pub dwIndex: u32,
5031     pub DeviceService: [::windows_sys::core::GUID; 1],
5032 }
5033 impl ::core::marker::Copy for WLAN_DEVICE_SERVICE_GUID_LIST {}
5034 impl ::core::clone::Clone for WLAN_DEVICE_SERVICE_GUID_LIST {
clone(&self) -> Self5035     fn clone(&self) -> Self {
5036         *self
5037     }
5038 }
5039 #[repr(C)]
5040 pub struct WLAN_DEVICE_SERVICE_NOTIFICATION_DATA {
5041     pub DeviceService: ::windows_sys::core::GUID,
5042     pub dwOpCode: u32,
5043     pub dwDataSize: u32,
5044     pub DataBlob: [u8; 1],
5045 }
5046 impl ::core::marker::Copy for WLAN_DEVICE_SERVICE_NOTIFICATION_DATA {}
5047 impl ::core::clone::Clone for WLAN_DEVICE_SERVICE_NOTIFICATION_DATA {
clone(&self) -> Self5048     fn clone(&self) -> Self {
5049         *self
5050     }
5051 }
5052 pub type WLAN_FILTER_LIST_TYPE = i32;
5053 pub const wlan_filter_list_type_gp_permit: WLAN_FILTER_LIST_TYPE = 0i32;
5054 pub const wlan_filter_list_type_gp_deny: WLAN_FILTER_LIST_TYPE = 1i32;
5055 pub const wlan_filter_list_type_user_permit: WLAN_FILTER_LIST_TYPE = 2i32;
5056 pub const wlan_filter_list_type_user_deny: WLAN_FILTER_LIST_TYPE = 3i32;
5057 #[repr(C)]
5058 pub struct WLAN_HOSTED_NETWORK_CONNECTION_SETTINGS {
5059     pub hostedNetworkSSID: DOT11_SSID,
5060     pub dwMaxNumberOfPeers: u32,
5061 }
5062 impl ::core::marker::Copy for WLAN_HOSTED_NETWORK_CONNECTION_SETTINGS {}
5063 impl ::core::clone::Clone for WLAN_HOSTED_NETWORK_CONNECTION_SETTINGS {
clone(&self) -> Self5064     fn clone(&self) -> Self {
5065         *self
5066     }
5067 }
5068 #[repr(C)]
5069 pub struct WLAN_HOSTED_NETWORK_DATA_PEER_STATE_CHANGE {
5070     pub OldState: WLAN_HOSTED_NETWORK_PEER_STATE,
5071     pub NewState: WLAN_HOSTED_NETWORK_PEER_STATE,
5072     pub PeerStateChangeReason: WLAN_HOSTED_NETWORK_REASON,
5073 }
5074 impl ::core::marker::Copy for WLAN_HOSTED_NETWORK_DATA_PEER_STATE_CHANGE {}
5075 impl ::core::clone::Clone for WLAN_HOSTED_NETWORK_DATA_PEER_STATE_CHANGE {
clone(&self) -> Self5076     fn clone(&self) -> Self {
5077         *self
5078     }
5079 }
5080 pub type WLAN_HOSTED_NETWORK_NOTIFICATION_CODE = i32;
5081 pub const wlan_hosted_network_state_change: WLAN_HOSTED_NETWORK_NOTIFICATION_CODE = 4096i32;
5082 pub const wlan_hosted_network_peer_state_change: WLAN_HOSTED_NETWORK_NOTIFICATION_CODE = 4097i32;
5083 pub const wlan_hosted_network_radio_state_change: WLAN_HOSTED_NETWORK_NOTIFICATION_CODE = 4098i32;
5084 pub type WLAN_HOSTED_NETWORK_OPCODE = i32;
5085 pub const wlan_hosted_network_opcode_connection_settings: WLAN_HOSTED_NETWORK_OPCODE = 0i32;
5086 pub const wlan_hosted_network_opcode_security_settings: WLAN_HOSTED_NETWORK_OPCODE = 1i32;
5087 pub const wlan_hosted_network_opcode_station_profile: WLAN_HOSTED_NETWORK_OPCODE = 2i32;
5088 pub const wlan_hosted_network_opcode_enable: WLAN_HOSTED_NETWORK_OPCODE = 3i32;
5089 pub type WLAN_HOSTED_NETWORK_PEER_AUTH_STATE = i32;
5090 pub const wlan_hosted_network_peer_state_invalid: WLAN_HOSTED_NETWORK_PEER_AUTH_STATE = 0i32;
5091 pub const wlan_hosted_network_peer_state_authenticated: WLAN_HOSTED_NETWORK_PEER_AUTH_STATE = 1i32;
5092 #[repr(C)]
5093 pub struct WLAN_HOSTED_NETWORK_PEER_STATE {
5094     pub PeerMacAddress: [u8; 6],
5095     pub PeerAuthState: WLAN_HOSTED_NETWORK_PEER_AUTH_STATE,
5096 }
5097 impl ::core::marker::Copy for WLAN_HOSTED_NETWORK_PEER_STATE {}
5098 impl ::core::clone::Clone for WLAN_HOSTED_NETWORK_PEER_STATE {
clone(&self) -> Self5099     fn clone(&self) -> Self {
5100         *self
5101     }
5102 }
5103 #[repr(C)]
5104 pub struct WLAN_HOSTED_NETWORK_RADIO_STATE {
5105     pub dot11SoftwareRadioState: DOT11_RADIO_STATE,
5106     pub dot11HardwareRadioState: DOT11_RADIO_STATE,
5107 }
5108 impl ::core::marker::Copy for WLAN_HOSTED_NETWORK_RADIO_STATE {}
5109 impl ::core::clone::Clone for WLAN_HOSTED_NETWORK_RADIO_STATE {
clone(&self) -> Self5110     fn clone(&self) -> Self {
5111         *self
5112     }
5113 }
5114 pub type WLAN_HOSTED_NETWORK_REASON = i32;
5115 pub const wlan_hosted_network_reason_success: WLAN_HOSTED_NETWORK_REASON = 0i32;
5116 pub const wlan_hosted_network_reason_unspecified: WLAN_HOSTED_NETWORK_REASON = 1i32;
5117 pub const wlan_hosted_network_reason_bad_parameters: WLAN_HOSTED_NETWORK_REASON = 2i32;
5118 pub const wlan_hosted_network_reason_service_shutting_down: WLAN_HOSTED_NETWORK_REASON = 3i32;
5119 pub const wlan_hosted_network_reason_insufficient_resources: WLAN_HOSTED_NETWORK_REASON = 4i32;
5120 pub const wlan_hosted_network_reason_elevation_required: WLAN_HOSTED_NETWORK_REASON = 5i32;
5121 pub const wlan_hosted_network_reason_read_only: WLAN_HOSTED_NETWORK_REASON = 6i32;
5122 pub const wlan_hosted_network_reason_persistence_failed: WLAN_HOSTED_NETWORK_REASON = 7i32;
5123 pub const wlan_hosted_network_reason_crypt_error: WLAN_HOSTED_NETWORK_REASON = 8i32;
5124 pub const wlan_hosted_network_reason_impersonation: WLAN_HOSTED_NETWORK_REASON = 9i32;
5125 pub const wlan_hosted_network_reason_stop_before_start: WLAN_HOSTED_NETWORK_REASON = 10i32;
5126 pub const wlan_hosted_network_reason_interface_available: WLAN_HOSTED_NETWORK_REASON = 11i32;
5127 pub const wlan_hosted_network_reason_interface_unavailable: WLAN_HOSTED_NETWORK_REASON = 12i32;
5128 pub const wlan_hosted_network_reason_miniport_stopped: WLAN_HOSTED_NETWORK_REASON = 13i32;
5129 pub const wlan_hosted_network_reason_miniport_started: WLAN_HOSTED_NETWORK_REASON = 14i32;
5130 pub const wlan_hosted_network_reason_incompatible_connection_started: WLAN_HOSTED_NETWORK_REASON = 15i32;
5131 pub const wlan_hosted_network_reason_incompatible_connection_stopped: WLAN_HOSTED_NETWORK_REASON = 16i32;
5132 pub const wlan_hosted_network_reason_user_action: WLAN_HOSTED_NETWORK_REASON = 17i32;
5133 pub const wlan_hosted_network_reason_client_abort: WLAN_HOSTED_NETWORK_REASON = 18i32;
5134 pub const wlan_hosted_network_reason_ap_start_failed: WLAN_HOSTED_NETWORK_REASON = 19i32;
5135 pub const wlan_hosted_network_reason_peer_arrived: WLAN_HOSTED_NETWORK_REASON = 20i32;
5136 pub const wlan_hosted_network_reason_peer_departed: WLAN_HOSTED_NETWORK_REASON = 21i32;
5137 pub const wlan_hosted_network_reason_peer_timeout: WLAN_HOSTED_NETWORK_REASON = 22i32;
5138 pub const wlan_hosted_network_reason_gp_denied: WLAN_HOSTED_NETWORK_REASON = 23i32;
5139 pub const wlan_hosted_network_reason_service_unavailable: WLAN_HOSTED_NETWORK_REASON = 24i32;
5140 pub const wlan_hosted_network_reason_device_change: WLAN_HOSTED_NETWORK_REASON = 25i32;
5141 pub const wlan_hosted_network_reason_properties_change: WLAN_HOSTED_NETWORK_REASON = 26i32;
5142 pub const wlan_hosted_network_reason_virtual_station_blocking_use: WLAN_HOSTED_NETWORK_REASON = 27i32;
5143 pub const wlan_hosted_network_reason_service_available_on_virtual_station: WLAN_HOSTED_NETWORK_REASON = 28i32;
5144 #[repr(C)]
5145 pub struct WLAN_HOSTED_NETWORK_SECURITY_SETTINGS {
5146     pub dot11AuthAlgo: DOT11_AUTH_ALGORITHM,
5147     pub dot11CipherAlgo: DOT11_CIPHER_ALGORITHM,
5148 }
5149 impl ::core::marker::Copy for WLAN_HOSTED_NETWORK_SECURITY_SETTINGS {}
5150 impl ::core::clone::Clone for WLAN_HOSTED_NETWORK_SECURITY_SETTINGS {
clone(&self) -> Self5151     fn clone(&self) -> Self {
5152         *self
5153     }
5154 }
5155 pub type WLAN_HOSTED_NETWORK_STATE = i32;
5156 pub const wlan_hosted_network_unavailable: WLAN_HOSTED_NETWORK_STATE = 0i32;
5157 pub const wlan_hosted_network_idle: WLAN_HOSTED_NETWORK_STATE = 1i32;
5158 pub const wlan_hosted_network_active: WLAN_HOSTED_NETWORK_STATE = 2i32;
5159 #[repr(C)]
5160 pub struct WLAN_HOSTED_NETWORK_STATE_CHANGE {
5161     pub OldState: WLAN_HOSTED_NETWORK_STATE,
5162     pub NewState: WLAN_HOSTED_NETWORK_STATE,
5163     pub StateChangeReason: WLAN_HOSTED_NETWORK_REASON,
5164 }
5165 impl ::core::marker::Copy for WLAN_HOSTED_NETWORK_STATE_CHANGE {}
5166 impl ::core::clone::Clone for WLAN_HOSTED_NETWORK_STATE_CHANGE {
clone(&self) -> Self5167     fn clone(&self) -> Self {
5168         *self
5169     }
5170 }
5171 #[repr(C)]
5172 pub struct WLAN_HOSTED_NETWORK_STATUS {
5173     pub HostedNetworkState: WLAN_HOSTED_NETWORK_STATE,
5174     pub IPDeviceID: ::windows_sys::core::GUID,
5175     pub wlanHostedNetworkBSSID: [u8; 6],
5176     pub dot11PhyType: DOT11_PHY_TYPE,
5177     pub ulChannelFrequency: u32,
5178     pub dwNumberOfPeers: u32,
5179     pub PeerList: [WLAN_HOSTED_NETWORK_PEER_STATE; 1],
5180 }
5181 impl ::core::marker::Copy for WLAN_HOSTED_NETWORK_STATUS {}
5182 impl ::core::clone::Clone for WLAN_HOSTED_NETWORK_STATUS {
clone(&self) -> Self5183     fn clone(&self) -> Self {
5184         *self
5185     }
5186 }
5187 pub type WLAN_IHV_CONTROL_TYPE = i32;
5188 pub const wlan_ihv_control_type_service: WLAN_IHV_CONTROL_TYPE = 0i32;
5189 pub const wlan_ihv_control_type_driver: WLAN_IHV_CONTROL_TYPE = 1i32;
5190 #[repr(C)]
5191 #[cfg(feature = "Win32_Foundation")]
5192 pub struct WLAN_INTERFACE_CAPABILITY {
5193     pub interfaceType: WLAN_INTERFACE_TYPE,
5194     pub bDot11DSupported: super::super::Foundation::BOOL,
5195     pub dwMaxDesiredSsidListSize: u32,
5196     pub dwMaxDesiredBssidListSize: u32,
5197     pub dwNumberOfSupportedPhys: u32,
5198     pub dot11PhyTypes: [DOT11_PHY_TYPE; 64],
5199 }
5200 #[cfg(feature = "Win32_Foundation")]
5201 impl ::core::marker::Copy for WLAN_INTERFACE_CAPABILITY {}
5202 #[cfg(feature = "Win32_Foundation")]
5203 impl ::core::clone::Clone for WLAN_INTERFACE_CAPABILITY {
clone(&self) -> Self5204     fn clone(&self) -> Self {
5205         *self
5206     }
5207 }
5208 #[repr(C)]
5209 pub struct WLAN_INTERFACE_INFO {
5210     pub InterfaceGuid: ::windows_sys::core::GUID,
5211     pub strInterfaceDescription: [u16; 256],
5212     pub isState: WLAN_INTERFACE_STATE,
5213 }
5214 impl ::core::marker::Copy for WLAN_INTERFACE_INFO {}
5215 impl ::core::clone::Clone for WLAN_INTERFACE_INFO {
clone(&self) -> Self5216     fn clone(&self) -> Self {
5217         *self
5218     }
5219 }
5220 #[repr(C)]
5221 pub struct WLAN_INTERFACE_INFO_LIST {
5222     pub dwNumberOfItems: u32,
5223     pub dwIndex: u32,
5224     pub InterfaceInfo: [WLAN_INTERFACE_INFO; 1],
5225 }
5226 impl ::core::marker::Copy for WLAN_INTERFACE_INFO_LIST {}
5227 impl ::core::clone::Clone for WLAN_INTERFACE_INFO_LIST {
clone(&self) -> Self5228     fn clone(&self) -> Self {
5229         *self
5230     }
5231 }
5232 pub type WLAN_INTERFACE_STATE = i32;
5233 pub const wlan_interface_state_not_ready: WLAN_INTERFACE_STATE = 0i32;
5234 pub const wlan_interface_state_connected: WLAN_INTERFACE_STATE = 1i32;
5235 pub const wlan_interface_state_ad_hoc_network_formed: WLAN_INTERFACE_STATE = 2i32;
5236 pub const wlan_interface_state_disconnecting: WLAN_INTERFACE_STATE = 3i32;
5237 pub const wlan_interface_state_disconnected: WLAN_INTERFACE_STATE = 4i32;
5238 pub const wlan_interface_state_associating: WLAN_INTERFACE_STATE = 5i32;
5239 pub const wlan_interface_state_discovering: WLAN_INTERFACE_STATE = 6i32;
5240 pub const wlan_interface_state_authenticating: WLAN_INTERFACE_STATE = 7i32;
5241 pub type WLAN_INTERFACE_TYPE = i32;
5242 pub const wlan_interface_type_emulated_802_11: WLAN_INTERFACE_TYPE = 0i32;
5243 pub const wlan_interface_type_native_802_11: WLAN_INTERFACE_TYPE = 1i32;
5244 pub const wlan_interface_type_invalid: WLAN_INTERFACE_TYPE = 2i32;
5245 pub type WLAN_INTF_OPCODE = i32;
5246 pub const wlan_intf_opcode_autoconf_start: WLAN_INTF_OPCODE = 0i32;
5247 pub const wlan_intf_opcode_autoconf_enabled: WLAN_INTF_OPCODE = 1i32;
5248 pub const wlan_intf_opcode_background_scan_enabled: WLAN_INTF_OPCODE = 2i32;
5249 pub const wlan_intf_opcode_media_streaming_mode: WLAN_INTF_OPCODE = 3i32;
5250 pub const wlan_intf_opcode_radio_state: WLAN_INTF_OPCODE = 4i32;
5251 pub const wlan_intf_opcode_bss_type: WLAN_INTF_OPCODE = 5i32;
5252 pub const wlan_intf_opcode_interface_state: WLAN_INTF_OPCODE = 6i32;
5253 pub const wlan_intf_opcode_current_connection: WLAN_INTF_OPCODE = 7i32;
5254 pub const wlan_intf_opcode_channel_number: WLAN_INTF_OPCODE = 8i32;
5255 pub const wlan_intf_opcode_supported_infrastructure_auth_cipher_pairs: WLAN_INTF_OPCODE = 9i32;
5256 pub const wlan_intf_opcode_supported_adhoc_auth_cipher_pairs: WLAN_INTF_OPCODE = 10i32;
5257 pub const wlan_intf_opcode_supported_country_or_region_string_list: WLAN_INTF_OPCODE = 11i32;
5258 pub const wlan_intf_opcode_current_operation_mode: WLAN_INTF_OPCODE = 12i32;
5259 pub const wlan_intf_opcode_supported_safe_mode: WLAN_INTF_OPCODE = 13i32;
5260 pub const wlan_intf_opcode_certified_safe_mode: WLAN_INTF_OPCODE = 14i32;
5261 pub const wlan_intf_opcode_hosted_network_capable: WLAN_INTF_OPCODE = 15i32;
5262 pub const wlan_intf_opcode_management_frame_protection_capable: WLAN_INTF_OPCODE = 16i32;
5263 pub const wlan_intf_opcode_secondary_sta_interfaces: WLAN_INTF_OPCODE = 17i32;
5264 pub const wlan_intf_opcode_secondary_sta_synchronized_connections: WLAN_INTF_OPCODE = 18i32;
5265 pub const wlan_intf_opcode_autoconf_end: WLAN_INTF_OPCODE = 268435455i32;
5266 pub const wlan_intf_opcode_msm_start: WLAN_INTF_OPCODE = 268435712i32;
5267 pub const wlan_intf_opcode_statistics: WLAN_INTF_OPCODE = 268435713i32;
5268 pub const wlan_intf_opcode_rssi: WLAN_INTF_OPCODE = 268435714i32;
5269 pub const wlan_intf_opcode_msm_end: WLAN_INTF_OPCODE = 536870911i32;
5270 pub const wlan_intf_opcode_security_start: WLAN_INTF_OPCODE = 536936448i32;
5271 pub const wlan_intf_opcode_security_end: WLAN_INTF_OPCODE = 805306367i32;
5272 pub const wlan_intf_opcode_ihv_start: WLAN_INTF_OPCODE = 805306368i32;
5273 pub const wlan_intf_opcode_ihv_end: WLAN_INTF_OPCODE = 1073741823i32;
5274 #[repr(C)]
5275 pub struct WLAN_MAC_FRAME_STATISTICS {
5276     pub ullTransmittedFrameCount: u64,
5277     pub ullReceivedFrameCount: u64,
5278     pub ullWEPExcludedCount: u64,
5279     pub ullTKIPLocalMICFailures: u64,
5280     pub ullTKIPReplays: u64,
5281     pub ullTKIPICVErrorCount: u64,
5282     pub ullCCMPReplays: u64,
5283     pub ullCCMPDecryptErrors: u64,
5284     pub ullWEPUndecryptableCount: u64,
5285     pub ullWEPICVErrorCount: u64,
5286     pub ullDecryptSuccessCount: u64,
5287     pub ullDecryptFailureCount: u64,
5288 }
5289 impl ::core::marker::Copy for WLAN_MAC_FRAME_STATISTICS {}
5290 impl ::core::clone::Clone for WLAN_MAC_FRAME_STATISTICS {
clone(&self) -> Self5291     fn clone(&self) -> Self {
5292         *self
5293     }
5294 }
5295 pub const WLAN_MAX_NAME_LENGTH: u32 = 256u32;
5296 pub const WLAN_MAX_PHY_INDEX: u32 = 64u32;
5297 pub const WLAN_MAX_PHY_TYPE_NUMBER: u32 = 8u32;
5298 #[repr(C)]
5299 #[cfg(feature = "Win32_Foundation")]
5300 pub struct WLAN_MSM_NOTIFICATION_DATA {
5301     pub wlanConnectionMode: WLAN_CONNECTION_MODE,
5302     pub strProfileName: [u16; 256],
5303     pub dot11Ssid: DOT11_SSID,
5304     pub dot11BssType: DOT11_BSS_TYPE,
5305     pub dot11MacAddr: [u8; 6],
5306     pub bSecurityEnabled: super::super::Foundation::BOOL,
5307     pub bFirstPeer: super::super::Foundation::BOOL,
5308     pub bLastPeer: super::super::Foundation::BOOL,
5309     pub wlanReasonCode: u32,
5310 }
5311 #[cfg(feature = "Win32_Foundation")]
5312 impl ::core::marker::Copy for WLAN_MSM_NOTIFICATION_DATA {}
5313 #[cfg(feature = "Win32_Foundation")]
5314 impl ::core::clone::Clone for WLAN_MSM_NOTIFICATION_DATA {
clone(&self) -> Self5315     fn clone(&self) -> Self {
5316         *self
5317     }
5318 }
5319 pub type WLAN_NOTIFICATION_ACM = i32;
5320 pub const wlan_notification_acm_start: WLAN_NOTIFICATION_ACM = 0i32;
5321 pub const wlan_notification_acm_autoconf_enabled: WLAN_NOTIFICATION_ACM = 1i32;
5322 pub const wlan_notification_acm_autoconf_disabled: WLAN_NOTIFICATION_ACM = 2i32;
5323 pub const wlan_notification_acm_background_scan_enabled: WLAN_NOTIFICATION_ACM = 3i32;
5324 pub const wlan_notification_acm_background_scan_disabled: WLAN_NOTIFICATION_ACM = 4i32;
5325 pub const wlan_notification_acm_bss_type_change: WLAN_NOTIFICATION_ACM = 5i32;
5326 pub const wlan_notification_acm_power_setting_change: WLAN_NOTIFICATION_ACM = 6i32;
5327 pub const wlan_notification_acm_scan_complete: WLAN_NOTIFICATION_ACM = 7i32;
5328 pub const wlan_notification_acm_scan_fail: WLAN_NOTIFICATION_ACM = 8i32;
5329 pub const wlan_notification_acm_connection_start: WLAN_NOTIFICATION_ACM = 9i32;
5330 pub const wlan_notification_acm_connection_complete: WLAN_NOTIFICATION_ACM = 10i32;
5331 pub const wlan_notification_acm_connection_attempt_fail: WLAN_NOTIFICATION_ACM = 11i32;
5332 pub const wlan_notification_acm_filter_list_change: WLAN_NOTIFICATION_ACM = 12i32;
5333 pub const wlan_notification_acm_interface_arrival: WLAN_NOTIFICATION_ACM = 13i32;
5334 pub const wlan_notification_acm_interface_removal: WLAN_NOTIFICATION_ACM = 14i32;
5335 pub const wlan_notification_acm_profile_change: WLAN_NOTIFICATION_ACM = 15i32;
5336 pub const wlan_notification_acm_profile_name_change: WLAN_NOTIFICATION_ACM = 16i32;
5337 pub const wlan_notification_acm_profiles_exhausted: WLAN_NOTIFICATION_ACM = 17i32;
5338 pub const wlan_notification_acm_network_not_available: WLAN_NOTIFICATION_ACM = 18i32;
5339 pub const wlan_notification_acm_network_available: WLAN_NOTIFICATION_ACM = 19i32;
5340 pub const wlan_notification_acm_disconnecting: WLAN_NOTIFICATION_ACM = 20i32;
5341 pub const wlan_notification_acm_disconnected: WLAN_NOTIFICATION_ACM = 21i32;
5342 pub const wlan_notification_acm_adhoc_network_state_change: WLAN_NOTIFICATION_ACM = 22i32;
5343 pub const wlan_notification_acm_profile_unblocked: WLAN_NOTIFICATION_ACM = 23i32;
5344 pub const wlan_notification_acm_screen_power_change: WLAN_NOTIFICATION_ACM = 24i32;
5345 pub const wlan_notification_acm_profile_blocked: WLAN_NOTIFICATION_ACM = 25i32;
5346 pub const wlan_notification_acm_scan_list_refresh: WLAN_NOTIFICATION_ACM = 26i32;
5347 pub const wlan_notification_acm_operational_state_change: WLAN_NOTIFICATION_ACM = 27i32;
5348 pub const wlan_notification_acm_end: WLAN_NOTIFICATION_ACM = 28i32;
5349 pub type WLAN_NOTIFICATION_CALLBACK = unsafe extern "system" fn(param0: *mut L2_NOTIFICATION_DATA, param1: *mut ::core::ffi::c_void);
5350 pub type WLAN_NOTIFICATION_MSM = i32;
5351 pub const wlan_notification_msm_start: WLAN_NOTIFICATION_MSM = 0i32;
5352 pub const wlan_notification_msm_associating: WLAN_NOTIFICATION_MSM = 1i32;
5353 pub const wlan_notification_msm_associated: WLAN_NOTIFICATION_MSM = 2i32;
5354 pub const wlan_notification_msm_authenticating: WLAN_NOTIFICATION_MSM = 3i32;
5355 pub const wlan_notification_msm_connected: WLAN_NOTIFICATION_MSM = 4i32;
5356 pub const wlan_notification_msm_roaming_start: WLAN_NOTIFICATION_MSM = 5i32;
5357 pub const wlan_notification_msm_roaming_end: WLAN_NOTIFICATION_MSM = 6i32;
5358 pub const wlan_notification_msm_radio_state_change: WLAN_NOTIFICATION_MSM = 7i32;
5359 pub const wlan_notification_msm_signal_quality_change: WLAN_NOTIFICATION_MSM = 8i32;
5360 pub const wlan_notification_msm_disassociating: WLAN_NOTIFICATION_MSM = 9i32;
5361 pub const wlan_notification_msm_disconnected: WLAN_NOTIFICATION_MSM = 10i32;
5362 pub const wlan_notification_msm_peer_join: WLAN_NOTIFICATION_MSM = 11i32;
5363 pub const wlan_notification_msm_peer_leave: WLAN_NOTIFICATION_MSM = 12i32;
5364 pub const wlan_notification_msm_adapter_removal: WLAN_NOTIFICATION_MSM = 13i32;
5365 pub const wlan_notification_msm_adapter_operation_mode_change: WLAN_NOTIFICATION_MSM = 14i32;
5366 pub const wlan_notification_msm_link_degraded: WLAN_NOTIFICATION_MSM = 15i32;
5367 pub const wlan_notification_msm_link_improved: WLAN_NOTIFICATION_MSM = 16i32;
5368 pub const wlan_notification_msm_end: WLAN_NOTIFICATION_MSM = 17i32;
5369 pub type WLAN_NOTIFICATION_SECURITY = i32;
5370 pub const wlan_notification_security_start: WLAN_NOTIFICATION_SECURITY = 0i32;
5371 pub const wlan_notification_security_end: WLAN_NOTIFICATION_SECURITY = 1i32;
5372 pub const WLAN_NOTIFICATION_SOURCE_ACM: u32 = 8u32;
5373 pub const WLAN_NOTIFICATION_SOURCE_ALL: u32 = 65535u32;
5374 pub const WLAN_NOTIFICATION_SOURCE_DEVICE_SERVICE: u32 = 2048u32;
5375 pub const WLAN_NOTIFICATION_SOURCE_HNWK: u32 = 128u32;
5376 pub const WLAN_NOTIFICATION_SOURCE_IHV: u32 = 64u32;
5377 pub const WLAN_NOTIFICATION_SOURCE_MSM: u32 = 16u32;
5378 pub const WLAN_NOTIFICATION_SOURCE_NONE: u32 = 0u32;
5379 pub const WLAN_NOTIFICATION_SOURCE_ONEX: u32 = 4u32;
5380 pub const WLAN_NOTIFICATION_SOURCE_SECURITY: u32 = 32u32;
5381 pub type WLAN_OPCODE_VALUE_TYPE = i32;
5382 pub const wlan_opcode_value_type_query_only: WLAN_OPCODE_VALUE_TYPE = 0i32;
5383 pub const wlan_opcode_value_type_set_by_group_policy: WLAN_OPCODE_VALUE_TYPE = 1i32;
5384 pub const wlan_opcode_value_type_set_by_user: WLAN_OPCODE_VALUE_TYPE = 2i32;
5385 pub const wlan_opcode_value_type_invalid: WLAN_OPCODE_VALUE_TYPE = 3i32;
5386 pub type WLAN_OPERATIONAL_STATE = i32;
5387 pub const wlan_operational_state_unknown: WLAN_OPERATIONAL_STATE = 0i32;
5388 pub const wlan_operational_state_off: WLAN_OPERATIONAL_STATE = 1i32;
5389 pub const wlan_operational_state_on: WLAN_OPERATIONAL_STATE = 2i32;
5390 pub const wlan_operational_state_going_off: WLAN_OPERATIONAL_STATE = 3i32;
5391 pub const wlan_operational_state_going_on: WLAN_OPERATIONAL_STATE = 4i32;
5392 #[repr(C)]
5393 pub struct WLAN_PHY_FRAME_STATISTICS {
5394     pub ullTransmittedFrameCount: u64,
5395     pub ullMulticastTransmittedFrameCount: u64,
5396     pub ullFailedCount: u64,
5397     pub ullRetryCount: u64,
5398     pub ullMultipleRetryCount: u64,
5399     pub ullMaxTXLifetimeExceededCount: u64,
5400     pub ullTransmittedFragmentCount: u64,
5401     pub ullRTSSuccessCount: u64,
5402     pub ullRTSFailureCount: u64,
5403     pub ullACKFailureCount: u64,
5404     pub ullReceivedFrameCount: u64,
5405     pub ullMulticastReceivedFrameCount: u64,
5406     pub ullPromiscuousReceivedFrameCount: u64,
5407     pub ullMaxRXLifetimeExceededCount: u64,
5408     pub ullFrameDuplicateCount: u64,
5409     pub ullReceivedFragmentCount: u64,
5410     pub ullPromiscuousReceivedFragmentCount: u64,
5411     pub ullFCSErrorCount: u64,
5412 }
5413 impl ::core::marker::Copy for WLAN_PHY_FRAME_STATISTICS {}
5414 impl ::core::clone::Clone for WLAN_PHY_FRAME_STATISTICS {
clone(&self) -> Self5415     fn clone(&self) -> Self {
5416         *self
5417     }
5418 }
5419 #[repr(C)]
5420 pub struct WLAN_PHY_RADIO_STATE {
5421     pub dwPhyIndex: u32,
5422     pub dot11SoftwareRadioState: DOT11_RADIO_STATE,
5423     pub dot11HardwareRadioState: DOT11_RADIO_STATE,
5424 }
5425 impl ::core::marker::Copy for WLAN_PHY_RADIO_STATE {}
5426 impl ::core::clone::Clone for WLAN_PHY_RADIO_STATE {
clone(&self) -> Self5427     fn clone(&self) -> Self {
5428         *self
5429     }
5430 }
5431 pub type WLAN_POWER_SETTING = i32;
5432 pub const wlan_power_setting_no_saving: WLAN_POWER_SETTING = 0i32;
5433 pub const wlan_power_setting_low_saving: WLAN_POWER_SETTING = 1i32;
5434 pub const wlan_power_setting_medium_saving: WLAN_POWER_SETTING = 2i32;
5435 pub const wlan_power_setting_maximum_saving: WLAN_POWER_SETTING = 3i32;
5436 pub const wlan_power_setting_invalid: WLAN_POWER_SETTING = 4i32;
5437 pub const WLAN_PROFILE_CONNECTION_MODE_AUTO: u32 = 131072u32;
5438 pub const WLAN_PROFILE_CONNECTION_MODE_SET_BY_CLIENT: u32 = 65536u32;
5439 pub const WLAN_PROFILE_GET_PLAINTEXT_KEY: u32 = 4u32;
5440 pub const WLAN_PROFILE_GROUP_POLICY: u32 = 1u32;
5441 #[repr(C)]
5442 pub struct WLAN_PROFILE_INFO {
5443     pub strProfileName: [u16; 256],
5444     pub dwFlags: u32,
5445 }
5446 impl ::core::marker::Copy for WLAN_PROFILE_INFO {}
5447 impl ::core::clone::Clone for WLAN_PROFILE_INFO {
clone(&self) -> Self5448     fn clone(&self) -> Self {
5449         *self
5450     }
5451 }
5452 #[repr(C)]
5453 pub struct WLAN_PROFILE_INFO_LIST {
5454     pub dwNumberOfItems: u32,
5455     pub dwIndex: u32,
5456     pub ProfileInfo: [WLAN_PROFILE_INFO; 1],
5457 }
5458 impl ::core::marker::Copy for WLAN_PROFILE_INFO_LIST {}
5459 impl ::core::clone::Clone for WLAN_PROFILE_INFO_LIST {
clone(&self) -> Self5460     fn clone(&self) -> Self {
5461         *self
5462     }
5463 }
5464 pub const WLAN_PROFILE_USER: u32 = 2u32;
5465 #[repr(C)]
5466 pub struct WLAN_RADIO_STATE {
5467     pub dwNumberOfPhys: u32,
5468     pub PhyRadioState: [WLAN_PHY_RADIO_STATE; 64],
5469 }
5470 impl ::core::marker::Copy for WLAN_RADIO_STATE {}
5471 impl ::core::clone::Clone for WLAN_RADIO_STATE {
clone(&self) -> Self5472     fn clone(&self) -> Self {
5473         *self
5474     }
5475 }
5476 #[repr(C)]
5477 pub struct WLAN_RATE_SET {
5478     pub uRateSetLength: u32,
5479     pub usRateSet: [u16; 126],
5480 }
5481 impl ::core::marker::Copy for WLAN_RATE_SET {}
5482 impl ::core::clone::Clone for WLAN_RATE_SET {
clone(&self) -> Self5483     fn clone(&self) -> Self {
5484         *self
5485     }
5486 }
5487 #[repr(C)]
5488 pub struct WLAN_RAW_DATA {
5489     pub dwDataSize: u32,
5490     pub DataBlob: [u8; 1],
5491 }
5492 impl ::core::marker::Copy for WLAN_RAW_DATA {}
5493 impl ::core::clone::Clone for WLAN_RAW_DATA {
clone(&self) -> Self5494     fn clone(&self) -> Self {
5495         *self
5496     }
5497 }
5498 #[repr(C)]
5499 pub struct WLAN_RAW_DATA_LIST {
5500     pub dwTotalSize: u32,
5501     pub dwNumberOfItems: u32,
5502     pub DataList: [WLAN_RAW_DATA_LIST_0; 1],
5503 }
5504 impl ::core::marker::Copy for WLAN_RAW_DATA_LIST {}
5505 impl ::core::clone::Clone for WLAN_RAW_DATA_LIST {
clone(&self) -> Self5506     fn clone(&self) -> Self {
5507         *self
5508     }
5509 }
5510 #[repr(C)]
5511 pub struct WLAN_RAW_DATA_LIST_0 {
5512     pub dwDataOffset: u32,
5513     pub dwDataSize: u32,
5514 }
5515 impl ::core::marker::Copy for WLAN_RAW_DATA_LIST_0 {}
5516 impl ::core::clone::Clone for WLAN_RAW_DATA_LIST_0 {
clone(&self) -> Self5517     fn clone(&self) -> Self {
5518         *self
5519     }
5520 }
5521 pub const WLAN_REASON_CODE_AC_BASE: u32 = 131072u32;
5522 pub const WLAN_REASON_CODE_AC_CONNECT_BASE: u32 = 163840u32;
5523 pub const WLAN_REASON_CODE_AC_END: u32 = 196607u32;
5524 pub const WLAN_REASON_CODE_ADHOC_SECURITY_FAILURE: u32 = 229386u32;
5525 pub const WLAN_REASON_CODE_AP_PROFILE_NOT_ALLOWED: u32 = 163856u32;
5526 pub const WLAN_REASON_CODE_AP_PROFILE_NOT_ALLOWED_FOR_CLIENT: u32 = 163855u32;
5527 pub const WLAN_REASON_CODE_AP_STARTING_FAILURE: u32 = 229395u32;
5528 pub const WLAN_REASON_CODE_ASSOCIATION_FAILURE: u32 = 229378u32;
5529 pub const WLAN_REASON_CODE_ASSOCIATION_TIMEOUT: u32 = 229379u32;
5530 pub const WLAN_REASON_CODE_AUTO_AP_PROFILE_NOT_ALLOWED: u32 = 524313u32;
5531 pub const WLAN_REASON_CODE_AUTO_CONNECTION_NOT_ALLOWED: u32 = 524314u32;
5532 pub const WLAN_REASON_CODE_AUTO_SWITCH_SET_FOR_ADHOC: u32 = 524304u32;
5533 pub const WLAN_REASON_CODE_AUTO_SWITCH_SET_FOR_MANUAL_CONNECTION: u32 = 524305u32;
5534 pub const WLAN_REASON_CODE_BAD_MAX_NUMBER_OF_CLIENTS_FOR_AP: u32 = 524310u32;
5535 pub const WLAN_REASON_CODE_BASE: u32 = 131072u32;
5536 pub const WLAN_REASON_CODE_BSS_TYPE_NOT_ALLOWED: u32 = 163845u32;
5537 pub const WLAN_REASON_CODE_BSS_TYPE_UNMATCH: u32 = 196611u32;
5538 pub const WLAN_REASON_CODE_CONFLICT_SECURITY: u32 = 524299u32;
5539 pub const WLAN_REASON_CODE_CONNECT_CALL_FAIL: u32 = 163849u32;
5540 pub const WLAN_REASON_CODE_DATARATE_UNMATCH: u32 = 196613u32;
5541 pub const WLAN_REASON_CODE_DISCONNECT_TIMEOUT: u32 = 229391u32;
5542 pub const WLAN_REASON_CODE_DRIVER_DISCONNECTED: u32 = 229387u32;
5543 pub const WLAN_REASON_CODE_DRIVER_OPERATION_FAILURE: u32 = 229388u32;
5544 pub const WLAN_REASON_CODE_GP_DENIED: u32 = 163843u32;
5545 pub const WLAN_REASON_CODE_HOTSPOT2_PROFILE_DENIED: u32 = 163857u32;
5546 pub const WLAN_REASON_CODE_HOTSPOT2_PROFILE_NOT_ALLOWED: u32 = 524315u32;
5547 pub const WLAN_REASON_CODE_IHV_CONNECTIVITY_NOT_SUPPORTED: u32 = 524309u32;
5548 pub const WLAN_REASON_CODE_IHV_NOT_AVAILABLE: u32 = 229389u32;
5549 pub const WLAN_REASON_CODE_IHV_NOT_RESPONDING: u32 = 229390u32;
5550 pub const WLAN_REASON_CODE_IHV_OUI_MISMATCH: u32 = 524296u32;
5551 pub const WLAN_REASON_CODE_IHV_OUI_MISSING: u32 = 524297u32;
5552 pub const WLAN_REASON_CODE_IHV_SECURITY_NOT_SUPPORTED: u32 = 524295u32;
5553 pub const WLAN_REASON_CODE_IHV_SECURITY_ONEX_MISSING: u32 = 524306u32;
5554 pub const WLAN_REASON_CODE_IHV_SETTINGS_MISSING: u32 = 524298u32;
5555 pub const WLAN_REASON_CODE_INTERNAL_FAILURE: u32 = 229392u32;
5556 pub const WLAN_REASON_CODE_INVALID_ADHOC_CONNECTION_MODE: u32 = 524302u32;
5557 pub const WLAN_REASON_CODE_INVALID_BSS_TYPE: u32 = 524301u32;
5558 pub const WLAN_REASON_CODE_INVALID_CHANNEL: u32 = 524311u32;
5559 pub const WLAN_REASON_CODE_INVALID_PHY_TYPE: u32 = 524293u32;
5560 pub const WLAN_REASON_CODE_INVALID_PROFILE_NAME: u32 = 524291u32;
5561 pub const WLAN_REASON_CODE_INVALID_PROFILE_SCHEMA: u32 = 524289u32;
5562 pub const WLAN_REASON_CODE_INVALID_PROFILE_TYPE: u32 = 524292u32;
5563 pub const WLAN_REASON_CODE_IN_BLOCKED_LIST: u32 = 163847u32;
5564 pub const WLAN_REASON_CODE_IN_FAILED_LIST: u32 = 163846u32;
5565 pub const WLAN_REASON_CODE_KEY_MISMATCH: u32 = 163853u32;
5566 pub const WLAN_REASON_CODE_MSMSEC_AUTH_START_TIMEOUT: u32 = 294914u32;
5567 pub const WLAN_REASON_CODE_MSMSEC_AUTH_SUCCESS_TIMEOUT: u32 = 294915u32;
5568 pub const WLAN_REASON_CODE_MSMSEC_AUTH_WCN_COMPLETED: u32 = 294937u32;
5569 pub const WLAN_REASON_CODE_MSMSEC_BASE: u32 = 262144u32;
5570 pub const WLAN_REASON_CODE_MSMSEC_CANCELLED: u32 = 294929u32;
5571 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_DISCOVERY: u32 = 262165u32;
5572 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_MFP_NW_NIC: u32 = 262181u32;
5573 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_NETWORK: u32 = 262162u32;
5574 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_NIC: u32 = 262163u32;
5575 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE: u32 = 262164u32;
5576 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE_AUTH: u32 = 262174u32;
5577 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE_CIPHER: u32 = 262175u32;
5578 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE_SAFE_MODE_NIC: u32 = 262177u32;
5579 pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE_SAFE_MODE_NW: u32 = 262178u32;
5580 pub const WLAN_REASON_CODE_MSMSEC_CONNECT_BASE: u32 = 294912u32;
5581 pub const WLAN_REASON_CODE_MSMSEC_DOWNGRADE_DETECTED: u32 = 294931u32;
5582 pub const WLAN_REASON_CODE_MSMSEC_END: u32 = 327679u32;
5583 pub const WLAN_REASON_CODE_MSMSEC_FORCED_FAILURE: u32 = 294933u32;
5584 pub const WLAN_REASON_CODE_MSMSEC_G1_MISSING_GRP_KEY: u32 = 294925u32;
5585 pub const WLAN_REASON_CODE_MSMSEC_G1_MISSING_KEY_DATA: u32 = 294924u32;
5586 pub const WLAN_REASON_CODE_MSMSEC_G1_MISSING_MGMT_GRP_KEY: u32 = 294939u32;
5587 pub const WLAN_REASON_CODE_MSMSEC_KEY_FORMAT: u32 = 294930u32;
5588 pub const WLAN_REASON_CODE_MSMSEC_KEY_START_TIMEOUT: u32 = 294916u32;
5589 pub const WLAN_REASON_CODE_MSMSEC_KEY_SUCCESS_TIMEOUT: u32 = 294917u32;
5590 pub const WLAN_REASON_CODE_MSMSEC_M2_MISSING_IE: u32 = 294936u32;
5591 pub const WLAN_REASON_CODE_MSMSEC_M2_MISSING_KEY_DATA: u32 = 294935u32;
5592 pub const WLAN_REASON_CODE_MSMSEC_M3_MISSING_GRP_KEY: u32 = 294920u32;
5593 pub const WLAN_REASON_CODE_MSMSEC_M3_MISSING_IE: u32 = 294919u32;
5594 pub const WLAN_REASON_CODE_MSMSEC_M3_MISSING_KEY_DATA: u32 = 294918u32;
5595 pub const WLAN_REASON_CODE_MSMSEC_M3_MISSING_MGMT_GRP_KEY: u32 = 294938u32;
5596 pub const WLAN_REASON_CODE_MSMSEC_M3_TOO_MANY_RSNIE: u32 = 294934u32;
5597 pub const WLAN_REASON_CODE_MSMSEC_MAX: u32 = 327679u32;
5598 pub const WLAN_REASON_CODE_MSMSEC_MIN: u32 = 262144u32;
5599 pub const WLAN_REASON_CODE_MSMSEC_MIXED_CELL: u32 = 262169u32;
5600 pub const WLAN_REASON_CODE_MSMSEC_NIC_FAILURE: u32 = 294928u32;
5601 pub const WLAN_REASON_CODE_MSMSEC_NO_AUTHENTICATOR: u32 = 294927u32;
5602 pub const WLAN_REASON_CODE_MSMSEC_NO_PAIRWISE_KEY: u32 = 294923u32;
5603 pub const WLAN_REASON_CODE_MSMSEC_PEER_INDICATED_INSECURE: u32 = 294926u32;
5604 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_AUTH_TIMERS_INVALID: u32 = 262170u32;
5605 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_DUPLICATE_AUTH_CIPHER: u32 = 262151u32;
5606 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_AUTH_CIPHER: u32 = 262153u32;
5607 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_GKEY_INTV: u32 = 262171u32;
5608 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_KEY_INDEX: u32 = 262145u32;
5609 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PMKCACHE_MODE: u32 = 262156u32;
5610 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PMKCACHE_SIZE: u32 = 262157u32;
5611 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PMKCACHE_TTL: u32 = 262158u32;
5612 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PREAUTH_MODE: u32 = 262159u32;
5613 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PREAUTH_THROTTLE: u32 = 262160u32;
5614 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_KEYMATERIAL_CHAR: u32 = 262167u32;
5615 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_KEY_LENGTH: u32 = 262147u32;
5616 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_KEY_UNMAPPED_CHAR: u32 = 262173u32;
5617 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_NO_AUTH_CIPHER_SPECIFIED: u32 = 262149u32;
5618 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_ONEX_DISABLED: u32 = 262154u32;
5619 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_ONEX_ENABLED: u32 = 262155u32;
5620 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_PASSPHRASE_CHAR: u32 = 262166u32;
5621 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_PREAUTH_ONLY_ENABLED: u32 = 262161u32;
5622 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_PSK_LENGTH: u32 = 262148u32;
5623 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_PSK_PRESENT: u32 = 262146u32;
5624 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_RAWDATA_INVALID: u32 = 262152u32;
5625 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_SAFE_MODE: u32 = 262176u32;
5626 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_TOO_MANY_AUTH_CIPHER_SPECIFIED: u32 = 262150u32;
5627 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_UNSUPPORTED_AUTH: u32 = 262179u32;
5628 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_UNSUPPORTED_CIPHER: u32 = 262180u32;
5629 pub const WLAN_REASON_CODE_MSMSEC_PROFILE_WRONG_KEYTYPE: u32 = 262168u32;
5630 pub const WLAN_REASON_CODE_MSMSEC_PR_IE_MATCHING: u32 = 294921u32;
5631 pub const WLAN_REASON_CODE_MSMSEC_PSK_MISMATCH_SUSPECTED: u32 = 294932u32;
5632 pub const WLAN_REASON_CODE_MSMSEC_SEC_IE_MATCHING: u32 = 294922u32;
5633 pub const WLAN_REASON_CODE_MSMSEC_TRANSITION_NETWORK: u32 = 262172u32;
5634 pub const WLAN_REASON_CODE_MSMSEC_UI_REQUEST_FAILURE: u32 = 294913u32;
5635 pub const WLAN_REASON_CODE_MSM_BASE: u32 = 196608u32;
5636 pub const WLAN_REASON_CODE_MSM_CONNECT_BASE: u32 = 229376u32;
5637 pub const WLAN_REASON_CODE_MSM_END: u32 = 262143u32;
5638 pub const WLAN_REASON_CODE_MSM_SECURITY_MISSING: u32 = 524294u32;
5639 pub const WLAN_REASON_CODE_NETWORK_NOT_AVAILABLE: u32 = 163851u32;
5640 pub const WLAN_REASON_CODE_NETWORK_NOT_COMPATIBLE: u32 = 131073u32;
5641 pub const WLAN_REASON_CODE_NON_BROADCAST_SET_FOR_ADHOC: u32 = 524303u32;
5642 pub const WLAN_REASON_CODE_NOT_VISIBLE: u32 = 163842u32;
5643 pub const WLAN_REASON_CODE_NO_AUTO_CONNECTION: u32 = 163841u32;
5644 pub const WLAN_REASON_CODE_NO_VISIBLE_AP: u32 = 229396u32;
5645 pub const WLAN_REASON_CODE_OPERATION_MODE_NOT_SUPPORTED: u32 = 524312u32;
5646 pub const WLAN_REASON_CODE_PHY_TYPE_UNMATCH: u32 = 196612u32;
5647 pub const WLAN_REASON_CODE_PRE_SECURITY_FAILURE: u32 = 229380u32;
5648 pub const WLAN_REASON_CODE_PROFILE_BASE: u32 = 524288u32;
5649 pub const WLAN_REASON_CODE_PROFILE_CHANGED_OR_DELETED: u32 = 163852u32;
5650 pub const WLAN_REASON_CODE_PROFILE_CONNECT_BASE: u32 = 557056u32;
5651 pub const WLAN_REASON_CODE_PROFILE_END: u32 = 589823u32;
5652 pub const WLAN_REASON_CODE_PROFILE_MISSING: u32 = 524290u32;
5653 pub const WLAN_REASON_CODE_PROFILE_NOT_COMPATIBLE: u32 = 131074u32;
5654 pub const WLAN_REASON_CODE_PROFILE_SSID_INVALID: u32 = 524307u32;
5655 pub const WLAN_REASON_CODE_RANGE_SIZE: u32 = 65536u32;
5656 pub const WLAN_REASON_CODE_RESERVED_BASE: u32 = 720896u32;
5657 pub const WLAN_REASON_CODE_RESERVED_END: u32 = 786431u32;
5658 pub const WLAN_REASON_CODE_ROAMING_FAILURE: u32 = 229384u32;
5659 pub const WLAN_REASON_CODE_ROAMING_SECURITY_FAILURE: u32 = 229385u32;
5660 pub const WLAN_REASON_CODE_SCAN_CALL_FAIL: u32 = 163850u32;
5661 pub const WLAN_REASON_CODE_SECURITY_FAILURE: u32 = 229382u32;
5662 pub const WLAN_REASON_CODE_SECURITY_MISSING: u32 = 524300u32;
5663 pub const WLAN_REASON_CODE_SECURITY_TIMEOUT: u32 = 229383u32;
5664 pub const WLAN_REASON_CODE_SSID_LIST_TOO_LONG: u32 = 163848u32;
5665 pub const WLAN_REASON_CODE_START_SECURITY_FAILURE: u32 = 229381u32;
5666 pub const WLAN_REASON_CODE_SUCCESS: u32 = 0u32;
5667 pub const WLAN_REASON_CODE_TOO_MANY_SECURITY_ATTEMPTS: u32 = 229394u32;
5668 pub const WLAN_REASON_CODE_TOO_MANY_SSID: u32 = 524308u32;
5669 pub const WLAN_REASON_CODE_UI_REQUEST_TIMEOUT: u32 = 229393u32;
5670 pub const WLAN_REASON_CODE_UNKNOWN: u32 = 65537u32;
5671 pub const WLAN_REASON_CODE_UNSUPPORTED_SECURITY_SET: u32 = 196610u32;
5672 pub const WLAN_REASON_CODE_UNSUPPORTED_SECURITY_SET_BY_OS: u32 = 196609u32;
5673 pub const WLAN_REASON_CODE_USER_CANCELLED: u32 = 229377u32;
5674 pub const WLAN_REASON_CODE_USER_DENIED: u32 = 163844u32;
5675 pub const WLAN_REASON_CODE_USER_NOT_RESPOND: u32 = 163854u32;
5676 pub type WLAN_SECURABLE_OBJECT = i32;
5677 pub const wlan_secure_permit_list: WLAN_SECURABLE_OBJECT = 0i32;
5678 pub const wlan_secure_deny_list: WLAN_SECURABLE_OBJECT = 1i32;
5679 pub const wlan_secure_ac_enabled: WLAN_SECURABLE_OBJECT = 2i32;
5680 pub const wlan_secure_bc_scan_enabled: WLAN_SECURABLE_OBJECT = 3i32;
5681 pub const wlan_secure_bss_type: WLAN_SECURABLE_OBJECT = 4i32;
5682 pub const wlan_secure_show_denied: WLAN_SECURABLE_OBJECT = 5i32;
5683 pub const wlan_secure_interface_properties: WLAN_SECURABLE_OBJECT = 6i32;
5684 pub const wlan_secure_ihv_control: WLAN_SECURABLE_OBJECT = 7i32;
5685 pub const wlan_secure_all_user_profiles_order: WLAN_SECURABLE_OBJECT = 8i32;
5686 pub const wlan_secure_add_new_all_user_profiles: WLAN_SECURABLE_OBJECT = 9i32;
5687 pub const wlan_secure_add_new_per_user_profiles: WLAN_SECURABLE_OBJECT = 10i32;
5688 pub const wlan_secure_media_streaming_mode_enabled: WLAN_SECURABLE_OBJECT = 11i32;
5689 pub const wlan_secure_current_operation_mode: WLAN_SECURABLE_OBJECT = 12i32;
5690 pub const wlan_secure_get_plaintext_key: WLAN_SECURABLE_OBJECT = 13i32;
5691 pub const wlan_secure_hosted_network_elevated_access: WLAN_SECURABLE_OBJECT = 14i32;
5692 pub const wlan_secure_virtual_station_extensibility: WLAN_SECURABLE_OBJECT = 15i32;
5693 pub const wlan_secure_wfd_elevated_access: WLAN_SECURABLE_OBJECT = 16i32;
5694 pub const WLAN_SECURABLE_OBJECT_COUNT: WLAN_SECURABLE_OBJECT = 17i32;
5695 #[repr(C)]
5696 #[cfg(feature = "Win32_Foundation")]
5697 pub struct WLAN_SECURITY_ATTRIBUTES {
5698     pub bSecurityEnabled: super::super::Foundation::BOOL,
5699     pub bOneXEnabled: super::super::Foundation::BOOL,
5700     pub dot11AuthAlgorithm: DOT11_AUTH_ALGORITHM,
5701     pub dot11CipherAlgorithm: DOT11_CIPHER_ALGORITHM,
5702 }
5703 #[cfg(feature = "Win32_Foundation")]
5704 impl ::core::marker::Copy for WLAN_SECURITY_ATTRIBUTES {}
5705 #[cfg(feature = "Win32_Foundation")]
5706 impl ::core::clone::Clone for WLAN_SECURITY_ATTRIBUTES {
clone(&self) -> Self5707     fn clone(&self) -> Self {
5708         *self
5709     }
5710 }
5711 pub type WLAN_SET_EAPHOST_FLAGS = u32;
5712 pub const WLAN_SET_EAPHOST_DATA_ALL_USERS: WLAN_SET_EAPHOST_FLAGS = 1u32;
5713 #[repr(C)]
5714 pub struct WLAN_STATISTICS {
5715     pub ullFourWayHandshakeFailures: u64,
5716     pub ullTKIPCounterMeasuresInvoked: u64,
5717     pub ullReserved: u64,
5718     pub MacUcastCounters: WLAN_MAC_FRAME_STATISTICS,
5719     pub MacMcastCounters: WLAN_MAC_FRAME_STATISTICS,
5720     pub dwNumberOfPhys: u32,
5721     pub PhyCounters: [WLAN_PHY_FRAME_STATISTICS; 1],
5722 }
5723 impl ::core::marker::Copy for WLAN_STATISTICS {}
5724 impl ::core::clone::Clone for WLAN_STATISTICS {
clone(&self) -> Self5725     fn clone(&self) -> Self {
5726         *self
5727     }
5728 }
5729 pub const WLAN_UI_API_INITIAL_VERSION: u32 = 1u32;
5730 pub const WLAN_UI_API_VERSION: u32 = 1u32;
5731 pub type WL_DISPLAY_PAGES = i32;
5732 pub const WLConnectionPage: WL_DISPLAY_PAGES = 0i32;
5733 pub const WLSecurityPage: WL_DISPLAY_PAGES = 1i32;
5734 pub const WLAdvPage: WL_DISPLAY_PAGES = 2i32;
5735 #[repr(C)]
5736 pub struct _DOT11_WME_AC_PARAMTERS_LIST {
5737     pub uNumOfEntries: u32,
5738     pub uTotalNumOfEntries: u32,
5739     pub dot11WMEACParameters: [DOT11_WME_AC_PARAMETERS; 1],
5740 }
5741 impl ::core::marker::Copy for _DOT11_WME_AC_PARAMTERS_LIST {}
5742 impl ::core::clone::Clone for _DOT11_WME_AC_PARAMTERS_LIST {
clone(&self) -> Self5743     fn clone(&self) -> Self {
5744         *self
5745     }
5746 }
5747