| 1 | /** | 
 
 
 
 
 | 2 | * This file has no copyright assigned and is placed in the Public Domain. | 
 
 
 
 
 | 3 | * This file is part of the mingw-w64 runtime package. | 
 
 
 
 
 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
 
 
 
 
 | 5 | */ | 
 
 
 
 
 | 6 | #ifndef _INC_WLANAPI | 
 
 
 
 
 | 7 | #define _INC_WLANAPI | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | #include <l2cmn.h> | 
 
 
 
 
 | 10 | #include <windot11.h> | 
 
 
 
 
 | 11 | #include <eaptypes.h> | 
 
 
 
 
 | 12 |  | 
 
 
 
 
 | 13 | #ifdef __cplusplus | 
 
 
 
 
 | 14 | extern "C" { | 
 
 
 
 
 | 15 | #endif | 
 
 
 
 
 | 16 |  | 
 
 
 
 
 | 17 | #define WLAN_NOTIFICATION_SOURCE_NONE      L2_NOTIFICATION_SOURCE_NONE | 
 
 
 
 
 | 18 | #define WLAN_NOTIFICATION_SOURCE_ALL       L2_NOTIFICATION_SOURCE_ALL | 
 
 
 
 
 | 19 | #define WLAN_NOTIFICATION_SOURCE_ACM       L2_NOTIFICATION_SOURCE_WLAN_ACM | 
 
 
 
 
 | 20 | #define WLAN_NOTIFICATION_SOURCE_MSM       L2_NOTIFICATION_SOURCE_WLAN_MSM | 
 
 
 
 
 | 21 | #define WLAN_NOTIFICATION_SOURCE_SECURITY  L2_NOTIFICATION_SOURCE_WLAN_SECURITY | 
 
 
 
 
 | 22 | #define WLAN_NOTIFICATION_SOURCE_IHV       L2_NOTIFICATION_SOURCE_WLAN_IHV | 
 
 
 
 
 | 23 | #define WLAN_NOTIFICATION_SOURCE_HNWK      L2_NOTIFICATION_SOURCE_WLAN_HNWK | 
 
 
 
 
 | 24 | #define WLAN_NOTIFICATION_SOURCE_ONEX      L2_NOTIFICATION_SOURCE_ONEX | 
 
 
 
 
 | 25 |  | 
 
 
 
 
 | 26 | typedef DWORD WLAN_REASON_CODE, *PWLAN_REASON_CODE; | 
 
 
 
 
 | 27 | typedef ULONG WLAN_SIGNAL_QUALITY, *PWLAN_SIGNAL_QUALITY; | 
 
 
 
 
 | 28 |  | 
 
 
 
 
 | 29 | typedef struct _DOT11_NETWORK { | 
 
 
 
 
 | 30 | DOT11_SSID     dot11Ssid; | 
 
 
 
 
 | 31 | DOT11_BSS_TYPE dot11BssType; | 
 
 
 
 
 | 32 | } DOT11_NETWORK, *PDOT11_NETWORK; | 
 
 
 
 
 | 33 |  | 
 
 
 
 
 | 34 | typedef enum _DOT11_RADIO_STATE { | 
 
 
 
 
 | 35 | dot11_radio_state_unknown, | 
 
 
 
 
 | 36 | dot11_radio_state_on, | 
 
 
 
 
 | 37 | dot11_radio_state_off | 
 
 
 
 
 | 38 | } DOT11_RADIO_STATE, *PDOT11_RADIO_STATE; | 
 
 
 
 
 | 39 |  | 
 
 
 
 
 | 40 | typedef enum _WLAN_NOTIFICATION_ACM { | 
 
 
 
 
 | 41 | wlan_notification_acm_start = 0, | 
 
 
 
 
 | 42 | wlan_notification_acm_autoconf_enabled, | 
 
 
 
 
 | 43 | wlan_notification_acm_autoconf_disabled, | 
 
 
 
 
 | 44 | wlan_notification_acm_background_scan_enabled, | 
 
 
 
 
 | 45 | wlan_notification_acm_background_scan_disabled, | 
 
 
 
 
 | 46 | wlan_notification_acm_bss_type_change, | 
 
 
 
 
 | 47 | wlan_notification_acm_power_setting_change, | 
 
 
 
 
 | 48 | wlan_notification_acm_scan_complete, | 
 
 
 
 
 | 49 | wlan_notification_acm_scan_fail, | 
 
 
 
 
 | 50 | wlan_notification_acm_connection_start, | 
 
 
 
 
 | 51 | wlan_notification_acm_connection_complete, | 
 
 
 
 
 | 52 | wlan_notification_acm_connection_attempt_fail, | 
 
 
 
 
 | 53 | wlan_notification_acm_filter_list_change, | 
 
 
 
 
 | 54 | wlan_notification_acm_interface_arrival, | 
 
 
 
 
 | 55 | wlan_notification_acm_interface_removal, | 
 
 
 
 
 | 56 | wlan_notification_acm_profile_change, | 
 
 
 
 
 | 57 | wlan_notification_acm_profile_name_change, | 
 
 
 
 
 | 58 | wlan_notification_acm_profiles_exhausted, | 
 
 
 
 
 | 59 | wlan_notification_acm_network_not_available, | 
 
 
 
 
 | 60 | wlan_notification_acm_network_available, | 
 
 
 
 
 | 61 | wlan_notification_acm_disconnecting, | 
 
 
 
 
 | 62 | wlan_notification_acm_disconnected, | 
 
 
 
 
 | 63 | wlan_notification_acm_adhoc_network_state_change, | 
 
 
 
 
 | 64 | wlan_notification_acm_end | 
 
 
 
 
 | 65 | } WLAN_NOTIFICATION_ACM, *PWLAN_NOTIFICATION_ACM; | 
 
 
 
 
 | 66 |  | 
 
 
 
 
 | 67 | typedef enum _WLAN_INTERFACE_STATE { | 
 
 
 
 
 | 68 | wlan_interface_state_not_ready               = 0, | 
 
 
 
 
 | 69 | wlan_interface_state_connected               = 1, | 
 
 
 
 
 | 70 | wlan_interface_state_ad_hoc_network_formed   = 2, | 
 
 
 
 
 | 71 | wlan_interface_state_disconnecting           = 3, | 
 
 
 
 
 | 72 | wlan_interface_state_disconnected            = 4, | 
 
 
 
 
 | 73 | wlan_interface_state_associating             = 5, | 
 
 
 
 
 | 74 | wlan_interface_state_discovering             = 6, | 
 
 
 
 
 | 75 | wlan_interface_state_authenticating          = 7 | 
 
 
 
 
 | 76 | } WLAN_INTERFACE_STATE, *PWLAN_INTERFACE_STATE; | 
 
 
 
 
 | 77 |  | 
 
 
 
 
 | 78 | typedef enum _WLAN_CONNECTION_MODE { | 
 
 
 
 
 | 79 | wlan_connection_mode_profile, | 
 
 
 
 
 | 80 | wlan_connection_mode_temporary_profile, | 
 
 
 
 
 | 81 | wlan_connection_mode_discovery_secure, | 
 
 
 
 
 | 82 | wlan_connection_mode_discovery_unsecure, | 
 
 
 
 
 | 83 | wlan_connection_mode_auto, | 
 
 
 
 
 | 84 | wlan_connection_mode_invalid | 
 
 
 
 
 | 85 | } WLAN_CONNECTION_MODE, *PWLAN_CONNECTION_MODE; | 
 
 
 
 
 | 86 |  | 
 
 
 
 
 | 87 | typedef enum _WLAN_INTERFACE_TYPE { | 
 
 
 
 
 | 88 | wlan_interface_type_emulated_802_11   = 0, | 
 
 
 
 
 | 89 | wlan_interface_type_native_802_11, | 
 
 
 
 
 | 90 | wlan_interface_type_invalid | 
 
 
 
 
 | 91 | } WLAN_INTERFACE_TYPE, *PWLAN_INTERFACE_TYPE; | 
 
 
 
 
 | 92 |  | 
 
 
 
 
 | 93 | typedef enum _WLAN_INTF_OPCODE { | 
 
 
 
 
 | 94 | wlan_intf_opcode_autoconf_start                               = 0x000000000, | 
 
 
 
 
 | 95 | wlan_intf_opcode_autoconf_enabled, | 
 
 
 
 
 | 96 | wlan_intf_opcode_background_scan_enabled, | 
 
 
 
 
 | 97 | wlan_intf_opcode_media_streaming_mode, | 
 
 
 
 
 | 98 | wlan_intf_opcode_radio_state, | 
 
 
 
 
 | 99 | wlan_intf_opcode_bss_type, | 
 
 
 
 
 | 100 | wlan_intf_opcode_interface_state, | 
 
 
 
 
 | 101 | wlan_intf_opcode_current_connection, | 
 
 
 
 
 | 102 | wlan_intf_opcode_channel_number, | 
 
 
 
 
 | 103 | wlan_intf_opcode_supported_infrastructure_auth_cipher_pairs, | 
 
 
 
 
 | 104 | wlan_intf_opcode_supported_adhoc_auth_cipher_pairs, | 
 
 
 
 
 | 105 | wlan_intf_opcode_supported_country_or_region_string_list, | 
 
 
 
 
 | 106 | wlan_intf_opcode_current_operation_mode, | 
 
 
 
 
 | 107 | wlan_intf_opcode_supported_safe_mode, | 
 
 
 
 
 | 108 | wlan_intf_opcode_certified_safe_mode, | 
 
 
 
 
 | 109 | wlan_intf_opcode_hosted_network_capable, | 
 
 
 
 
 | 110 | wlan_intf_opcode_autoconf_end                                 = 0x0fffffff, | 
 
 
 
 
 | 111 | wlan_intf_opcode_msm_start                                    = 0x10000100, | 
 
 
 
 
 | 112 | wlan_intf_opcode_statistics, | 
 
 
 
 
 | 113 | wlan_intf_opcode_rssi, | 
 
 
 
 
 | 114 | wlan_intf_opcode_msm_end                                      = 0x1fffffff, | 
 
 
 
 
 | 115 | wlan_intf_opcode_security_start                               = 0x20010000, | 
 
 
 
 
 | 116 | wlan_intf_opcode_security_end                                 = 0x2fffffff, | 
 
 
 
 
 | 117 | wlan_intf_opcode_ihv_start                                    = 0x30000000, | 
 
 
 
 
 | 118 | wlan_intf_opcode_ihv_end                                      = 0x3fffffff | 
 
 
 
 
 | 119 | } WLAN_INTF_OPCODE, *PWLAN_INTF_OPCODE; | 
 
 
 
 
 | 120 |  | 
 
 
 
 
 | 121 | typedef enum _WLAN_OPCODE_VALUE_TYPE { | 
 
 
 
 
 | 122 | wlan_opcode_value_type_query_only            = 0, | 
 
 
 
 
 | 123 | wlan_opcode_value_type_set_by_group_policy   = 1, | 
 
 
 
 
 | 124 | wlan_opcode_value_type_set_by_user           = 2, | 
 
 
 
 
 | 125 | wlan_opcode_value_type_invalid               = 3 | 
 
 
 
 
 | 126 | } WLAN_OPCODE_VALUE_TYPE, *PWLAN_OPCODE_VALUE_TYPE; | 
 
 
 
 
 | 127 |  | 
 
 
 
 
 | 128 | typedef enum _WLAN_POWER_SETTING { | 
 
 
 
 
 | 129 | wlan_power_setting_no_saving, | 
 
 
 
 
 | 130 | wlan_power_setting_low_saving, | 
 
 
 
 
 | 131 | wlan_power_setting_medium_saving, | 
 
 
 
 
 | 132 | wlan_power_setting_maximum_saving, | 
 
 
 
 
 | 133 | wlan_power_setting_invalid | 
 
 
 
 
 | 134 | } WLAN_POWER_SETTING, *PWLAN_POWER_SETTING; | 
 
 
 
 
 | 135 |  | 
 
 
 
 
 | 136 | typedef struct _WLAN_ASSOCIATION_ATTRIBUTES { | 
 
 
 
 
 | 137 | DOT11_SSID          dot11Ssid; | 
 
 
 
 
 | 138 | DOT11_BSS_TYPE      dot11BssType; | 
 
 
 
 
 | 139 | DOT11_MAC_ADDRESS   dot11Bssid; | 
 
 
 
 
 | 140 | DOT11_PHY_TYPE      dot11PhyType; | 
 
 
 
 
 | 141 | ULONG               uDot11PhyIndex; | 
 
 
 
 
 | 142 | WLAN_SIGNAL_QUALITY wlanSignalQuality; | 
 
 
 
 
 | 143 | ULONG               ulRxRate; | 
 
 
 
 
 | 144 | ULONG               ulTxRate; | 
 
 
 
 
 | 145 | } WLAN_ASSOCIATION_ATTRIBUTES, *PWLAN_ASSOCIATION_ATTRIBUTES; | 
 
 
 
 
 | 146 |  | 
 
 
 
 
 | 147 | typedef struct _WLAN_AUTH_CIPHER_PAIR_LIST { | 
 
 
 
 
 | 148 | DWORD                  dwNumberOfItems; | 
 
 
 
 
 | 149 | DOT11_AUTH_CIPHER_PAIR pAuthCipherPairList; | 
 
 
 
 
 | 150 | } WLAN_AUTH_CIPHER_PAIR_LIST, *PWLAN_AUTH_CIPHER_PAIR_LIST; | 
 
 
 
 
 | 151 |  | 
 
 
 
 
 | 152 | typedef struct _WLAN_NOTIFICATION_DATA { | 
 
 
 
 
 | 153 | DWORD NotificationSource; | 
 
 
 
 
 | 154 | DWORD NotificationCode; | 
 
 
 
 
 | 155 | GUID  InterfaceGuid; | 
 
 
 
 
 | 156 | DWORD dwDataSize; | 
 
 
 
 
 | 157 | PVOID pData; | 
 
 
 
 
 | 158 | } WLAN_NOTIFICATION_DATA, *PWLAN_NOTIFICATION_DATA; | 
 
 
 
 
 | 159 |  | 
 
 
 
 
 | 160 | #define WLAN_MAX_PHY_TYPE_NUMBER 8 | 
 
 
 
 
 | 161 |  | 
 
 
 
 
 | 162 | typedef struct _WLAN_AVAILABLE_NETWORK { | 
 
 
 
 
 | 163 | WCHAR                  strProfileName[256]; | 
 
 
 
 
 | 164 | DOT11_SSID             dot11Ssid; | 
 
 
 
 
 | 165 | DOT11_BSS_TYPE         dot11BssType; | 
 
 
 
 
 | 166 | ULONG                  uNumberOfBssids; | 
 
 
 
 
 | 167 | WINBOOL                bNetworkConnectable; | 
 
 
 
 
 | 168 | WLAN_REASON_CODE       wlanNotConnectableReason; | 
 
 
 
 
 | 169 | ULONG                  uNumberOfPhyTypes; | 
 
 
 
 
 | 170 | DOT11_PHY_TYPE         dot11PhyTypes[WLAN_MAX_PHY_TYPE_NUMBER]; | 
 
 
 
 
 | 171 | WINBOOL                bMorePhyTypes; | 
 
 
 
 
 | 172 | WLAN_SIGNAL_QUALITY    wlanSignalQuality; | 
 
 
 
 
 | 173 | WINBOOL                bSecurityEnabled; | 
 
 
 
 
 | 174 | DOT11_AUTH_ALGORITHM   dot11DefaultAuthAlgorithm; | 
 
 
 
 
 | 175 | DOT11_CIPHER_ALGORITHM dot11DefaultCipherAlgorithm; | 
 
 
 
 
 | 176 | DWORD                  dwFlags; | 
 
 
 
 
 | 177 | DWORD                  dwReserved; | 
 
 
 
 
 | 178 | } WLAN_AVAILABLE_NETWORK, *PWLAN_AVAILABLE_NETWORK; | 
 
 
 
 
 | 179 |  | 
 
 
 
 
 | 180 | typedef struct _WLAN_AVAILABLE_NETWORK_LIST { | 
 
 
 
 
 | 181 | DWORD                  dwNumberOfItems; | 
 
 
 
 
 | 182 | DWORD                  dwIndex; | 
 
 
 
 
 | 183 | WLAN_AVAILABLE_NETWORK Network[1]; | 
 
 
 
 
 | 184 | } WLAN_AVAILABLE_NETWORK_LIST, *PWLAN_AVAILABLE_NETWORK_LIST; | 
 
 
 
 
 | 185 |  | 
 
 
 
 
 | 186 | typedef struct _WLAN_SECURITY_ATTRIBUTES { | 
 
 
 
 
 | 187 | WINBOOL                bSecurityEnabled; | 
 
 
 
 
 | 188 | WINBOOL                bOneXEnabled; | 
 
 
 
 
 | 189 | DOT11_AUTH_ALGORITHM   dot11AuthAlgorithm; | 
 
 
 
 
 | 190 | DOT11_CIPHER_ALGORITHM dot11CipherAlgorithm; | 
 
 
 
 
 | 191 | } WLAN_SECURITY_ATTRIBUTES, *PWLAN_SECURITY_ATTRIBUTES; | 
 
 
 
 
 | 192 |  | 
 
 
 
 
 | 193 | typedef struct _WLAN_CONNECTION_ATTRIBUTES { | 
 
 
 
 
 | 194 | WLAN_INTERFACE_STATE        isState; | 
 
 
 
 
 | 195 | WLAN_CONNECTION_MODE        wlanConnectionMode; | 
 
 
 
 
 | 196 | WCHAR                       strProfileName[256]; | 
 
 
 
 
 | 197 | WLAN_ASSOCIATION_ATTRIBUTES wlanAssociationAttributes; | 
 
 
 
 
 | 198 | WLAN_SECURITY_ATTRIBUTES    wlanSecurityAttributes; | 
 
 
 
 
 | 199 | } WLAN_CONNECTION_ATTRIBUTES, *PWLAN_CONNECTION_ATTRIBUTES; | 
 
 
 
 
 | 200 |  | 
 
 
 
 
 | 201 | /* Assuming stdcall */ | 
 
 
 
 
 | 202 | typedef VOID (CALLBACK *WLAN_NOTIFICATION_CALLBACK)( | 
 
 
 
 
 | 203 | PWLAN_NOTIFICATION_DATA , | 
 
 
 
 
 | 204 | PVOID | 
 
 
 
 
 | 205 | ); | 
 
 
 
 
 | 206 |  | 
 
 
 
 
 | 207 | #define WLAN_MAX_NAME_LENGTH 256 | 
 
 
 
 
 | 208 |  | 
 
 
 
 
 | 209 | typedef struct _WLAN_CONNECTION_NOTIFICATION_DATA { | 
 
 
 
 
 | 210 | WLAN_CONNECTION_MODE wlanConnectionMode; | 
 
 
 
 
 | 211 | WCHAR                strProfileName[WLAN_MAX_NAME_LENGTH]; | 
 
 
 
 
 | 212 | DOT11_SSID           dot11Ssid; | 
 
 
 
 
 | 213 | DOT11_BSS_TYPE       dot11BssType; | 
 
 
 
 
 | 214 | BOOL                 bSecurityEnabled; | 
 
 
 
 
 | 215 | WLAN_REASON_CODE     wlanReasonCode; | 
 
 
 
 
 | 216 | DWORD                dwFlags; | 
 
 
 
 
 | 217 | WCHAR                strProfileXml[1]; | 
 
 
 
 
 | 218 | } WLAN_CONNECTION_NOTIFICATION_DATA, *PWLAN_CONNECTION_NOTIFICATION_DATA; | 
 
 
 
 
 | 219 |  | 
 
 
 
 
 | 220 | #define WLAN_CONNECTION_HIDDEN_NETWORK 0x00000001 | 
 
 
 
 
 | 221 | #define WLAN_CONNECTION_ADHOC_JOIN_ONLY 0x00000002 | 
 
 
 
 
 | 222 | #define WLAN_CONNECTION_IGNORE_PRIVACY_BIT 0x00000004 | 
 
 
 
 
 | 223 | #define WLAN_CONNECTION_EAPOL_PASSTHROUGH 0x00000008 | 
 
 
 
 
 | 224 |  | 
 
 
 
 
 | 225 | typedef struct _WLAN_CONNECTION_PARAMETERS { | 
 
 
 
 
 | 226 | WLAN_CONNECTION_MODE wlanConnectionMode; | 
 
 
 
 
 | 227 | LPCWSTR              strProfile; | 
 
 
 
 
 | 228 | PDOT11_SSID          pDot11Ssid; | 
 
 
 
 
 | 229 | PDOT11_BSSID_LIST    pDesiredBssidList; | 
 
 
 
 
 | 230 | DOT11_BSS_TYPE       dot11BssType; | 
 
 
 
 
 | 231 | DWORD                dwFlags; | 
 
 
 
 
 | 232 | } WLAN_CONNECTION_PARAMETERS, *PWLAN_CONNECTION_PARAMETERS; | 
 
 
 
 
 | 233 |  | 
 
 
 
 
 | 234 | typedef struct _WLAN_INTERFACE_INFO { | 
 
 
 
 
 | 235 | GUID                 InterfaceGuid; | 
 
 
 
 
 | 236 | WCHAR                strInterfaceDescription[256]; | 
 
 
 
 
 | 237 | WLAN_INTERFACE_STATE isState; | 
 
 
 
 
 | 238 | } WLAN_INTERFACE_INFO, *PWLAN_INTERFACE_INFO; | 
 
 
 
 
 | 239 |  | 
 
 
 
 
 | 240 | typedef struct _WLAN_INTERFACE_INFO_LIST { | 
 
 
 
 
 | 241 | DWORD               dwNumberOfItems; | 
 
 
 
 
 | 242 | DWORD               dwIndex; | 
 
 
 
 
 | 243 | WLAN_INTERFACE_INFO InterfaceInfo[]; | 
 
 
 
 
 | 244 | } WLAN_INTERFACE_INFO_LIST, *PWLAN_INTERFACE_INFO_LIST; | 
 
 
 
 
 | 245 |  | 
 
 
 
 
 | 246 | typedef struct _WLAN_PROFILE_INFO { | 
 
 
 
 
 | 247 | WCHAR strProfileName[256]; | 
 
 
 
 
 | 248 | DWORD dwFlags; | 
 
 
 
 
 | 249 | } WLAN_PROFILE_INFO, *PWLAN_PROFILE_INFO; | 
 
 
 
 
 | 250 |  | 
 
 
 
 
 | 251 | typedef struct _WLAN_PROFILE_INFO_LIST { | 
 
 
 
 
 | 252 | DWORD             dwNumberOfItems; | 
 
 
 
 
 | 253 | DWORD             dwIndex; | 
 
 
 
 
 | 254 | WLAN_PROFILE_INFO ProfileInfo[1]; | 
 
 
 
 
 | 255 | } WLAN_PROFILE_INFO_LIST, *PWLAN_PROFILE_INFO_LIST; | 
 
 
 
 
 | 256 |  | 
 
 
 
 
 | 257 | PVOID WINAPI WlanAllocateMemory( | 
 
 
 
 
 | 258 | DWORD dwMemorySize | 
 
 
 
 
 | 259 | ); | 
 
 
 
 
 | 260 |  | 
 
 
 
 
 | 261 | DWORD WINAPI WlanCloseHandle( | 
 
 
 
 
 | 262 | HANDLE hClientHandle, | 
 
 
 
 
 | 263 | PVOID pReserved | 
 
 
 
 
 | 264 | ); | 
 
 
 
 
 | 265 |  | 
 
 
 
 
 | 266 | DWORD WINAPI WlanConnect( | 
 
 
 
 
 | 267 | HANDLE hClientHandle, | 
 
 
 
 
 | 268 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 269 | const PWLAN_CONNECTION_PARAMETERS pConnectionParameters, | 
 
 
 
 
 | 270 | PVOID pReserved | 
 
 
 
 
 | 271 | ); | 
 
 
 
 
 | 272 |  | 
 
 
 
 
 | 273 | DWORD WINAPI WlanDeleteProfile( | 
 
 
 
 
 | 274 | HANDLE hClientHandle, | 
 
 
 
 
 | 275 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 276 | LPCWSTR strProfileName, | 
 
 
 
 
 | 277 | PVOID pReserved | 
 
 
 
 
 | 278 | ); | 
 
 
 
 
 | 279 |  | 
 
 
 
 
 | 280 | DWORD WINAPI WlanDisconnect( | 
 
 
 
 
 | 281 | HANDLE hClientHandle, | 
 
 
 
 
 | 282 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 283 | PVOID pReserved | 
 
 
 
 
 | 284 | ); | 
 
 
 
 
 | 285 |  | 
 
 
 
 
 | 286 | DWORD WINAPI WlanEnumInterfaces( | 
 
 
 
 
 | 287 | HANDLE hClientHandle, | 
 
 
 
 
 | 288 | PVOID pReserved, | 
 
 
 
 
 | 289 | PWLAN_INTERFACE_INFO_LIST *ppInterfaceList | 
 
 
 
 
 | 290 | ); | 
 
 
 
 
 | 291 |  | 
 
 
 
 
 | 292 | VOID WINAPI WlanFreeMemory( | 
 
 
 
 
 | 293 | PVOID pMemory | 
 
 
 
 
 | 294 | ); | 
 
 
 
 
 | 295 |  | 
 
 
 
 
 | 296 | DWORD WINAPI WlanGetAvailableNetworkList( | 
 
 
 
 
 | 297 | HANDLE hClientHandle, | 
 
 
 
 
 | 298 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 299 | DWORD dwFlags, | 
 
 
 
 
 | 300 | PVOID pReserved, | 
 
 
 
 
 | 301 | PWLAN_AVAILABLE_NETWORK_LIST *ppAvailableNetworkList | 
 
 
 
 
 | 302 | ); | 
 
 
 
 
 | 303 |  | 
 
 
 
 
 | 304 | DWORD WINAPI WlanGetProfile( | 
 
 
 
 
 | 305 | HANDLE hClientHandle, | 
 
 
 
 
 | 306 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 307 | LPCWSTR strProfileName, | 
 
 
 
 
 | 308 | PVOID pReserved, | 
 
 
 
 
 | 309 | LPWSTR *pstrProfileXml, | 
 
 
 
 
 | 310 | DWORD *pdwFlags, | 
 
 
 
 
 | 311 | PDWORD pdwGrantedAccess | 
 
 
 
 
 | 312 | ); | 
 
 
 
 
 | 313 |  | 
 
 
 
 
 | 314 | DWORD WINAPI WlanGetProfileList( | 
 
 
 
 
 | 315 | HANDLE hClientHandle, | 
 
 
 
 
 | 316 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 317 | PVOID pReserved, | 
 
 
 
 
 | 318 | PWLAN_PROFILE_INFO_LIST *ppProfileList | 
 
 
 
 
 | 319 | ); | 
 
 
 
 
 | 320 |  | 
 
 
 
 
 | 321 | DWORD WINAPI WlanOpenHandle( | 
 
 
 
 
 | 322 | DWORD dwClientVersion, | 
 
 
 
 
 | 323 | PVOID pReserved, | 
 
 
 
 
 | 324 | PDWORD pdwNegotiatedVersion, | 
 
 
 
 
 | 325 | PHANDLE phClientHandle | 
 
 
 
 
 | 326 | ); | 
 
 
 
 
 | 327 |  | 
 
 
 
 
 | 328 | DWORD WINAPI WlanQueryInterface( | 
 
 
 
 
 | 329 | HANDLE hClientHandle, | 
 
 
 
 
 | 330 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 331 | WLAN_INTF_OPCODE OpCode, | 
 
 
 
 
 | 332 | PVOID pReserved, | 
 
 
 
 
 | 333 | PDWORD pdwDataSize, | 
 
 
 
 
 | 334 | PVOID *ppData, | 
 
 
 
 
 | 335 | PWLAN_OPCODE_VALUE_TYPE pWlanOpcodeValueType | 
 
 
 
 
 | 336 | ); | 
 
 
 
 
 | 337 |  | 
 
 
 
 
 | 338 | DWORD WINAPI WlanReasonCodeToString( | 
 
 
 
 
 | 339 | DWORD dwReasonCode, | 
 
 
 
 
 | 340 | DWORD dwBufferSize, | 
 
 
 
 
 | 341 | PWCHAR pStringBuffer, | 
 
 
 
 
 | 342 | PVOID pReserved | 
 
 
 
 
 | 343 | ); | 
 
 
 
 
 | 344 |  | 
 
 
 
 
 | 345 | DWORD WINAPI WlanRegisterNotification( | 
 
 
 
 
 | 346 | HANDLE hClientHandle, | 
 
 
 
 
 | 347 | DWORD dwNotifSource, | 
 
 
 
 
 | 348 | WINBOOL bIgnoreDuplicate, | 
 
 
 
 
 | 349 | WLAN_NOTIFICATION_CALLBACK  funcCallback, | 
 
 
 
 
 | 350 | PVOID pCallbackContext, | 
 
 
 
 
 | 351 | PVOID pReserved, | 
 
 
 
 
 | 352 | PDWORD pdwPrevNotifSource | 
 
 
 
 
 | 353 | ); | 
 
 
 
 
 | 354 |  | 
 
 
 
 
 | 355 | DWORD WINAPI WlanSetInterface( | 
 
 
 
 
 | 356 | HANDLE hClientHandle, | 
 
 
 
 
 | 357 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 358 | WLAN_INTF_OPCODE OpCode, | 
 
 
 
 
 | 359 | DWORD dwDataSize, | 
 
 
 
 
 | 360 | const PVOID pData, | 
 
 
 
 
 | 361 | PVOID pReserved | 
 
 
 
 
 | 362 | ); | 
 
 
 
 
 | 363 |  | 
 
 
 
 
 | 364 | DWORD WINAPI WlanSetProfile( | 
 
 
 
 
 | 365 | HANDLE hClientHandle, | 
 
 
 
 
 | 366 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 367 | DWORD dwFlags, | 
 
 
 
 
 | 368 | LPCWSTR strProfileXml, | 
 
 
 
 
 | 369 | LPCWSTR strAllUserProfileSecurity, | 
 
 
 
 
 | 370 | WINBOOL bOverwrite, | 
 
 
 
 
 | 371 | PVOID pReserved, | 
 
 
 
 
 | 372 | DWORD *pdwReasonCode | 
 
 
 
 
 | 373 | ); | 
 
 
 
 
 | 374 |  | 
 
 
 
 
 | 375 | DWORD WINAPI WlanSetProfileEapXmlUserData( | 
 
 
 
 
 | 376 | HANDLE hClientHandle, | 
 
 
 
 
 | 377 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 378 | LPCWSTR strProfileName, | 
 
 
 
 
 | 379 | DWORD dwFlags, | 
 
 
 
 
 | 380 | LPCWSTR strEapXmlUserData, | 
 
 
 
 
 | 381 | PVOID pReserved | 
 
 
 
 
 | 382 | ); | 
 
 
 
 
 | 383 |  | 
 
 
 
 
 | 384 | DWORD WINAPI WlanSetProfileList( | 
 
 
 
 
 | 385 | HANDLE hClientHandle, | 
 
 
 
 
 | 386 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 387 | DWORD dwItems, | 
 
 
 
 
 | 388 | LPCWSTR *strProfileNames, | 
 
 
 
 
 | 389 | PVOID pReserved | 
 
 
 
 
 | 390 | ); | 
 
 
 
 
 | 391 |  | 
 
 
 
 
 | 392 | DWORD WINAPI WlanSetProfilePosition( | 
 
 
 
 
 | 393 | HANDLE hClientHandle, | 
 
 
 
 
 | 394 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 395 | LPCWSTR strProfileName, | 
 
 
 
 
 | 396 | DWORD dwPosition, | 
 
 
 
 
 | 397 | PVOID pReserved | 
 
 
 
 
 | 398 | ); | 
 
 
 
 
 | 399 |  | 
 
 
 
 
 | 400 | typedef enum _WLAN_AUTOCONF_OPCODE { | 
 
 
 
 
 | 401 | wlan_autoconf_opcode_start                                       = 0, | 
 
 
 
 
 | 402 | wlan_autoconf_opcode_show_denied_networks                        = 1, | 
 
 
 
 
 | 403 | wlan_autoconf_opcode_power_setting                               = 2, | 
 
 
 
 
 | 404 | wlan_autoconf_opcode_only_use_gp_profiles_for_allowed_networks   = 3, | 
 
 
 
 
 | 405 | wlan_autoconf_opcode_allow_explicit_creds                        = 4, | 
 
 
 
 
 | 406 | wlan_autoconf_opcode_block_period                                = 5, | 
 
 
 
 
 | 407 | wlan_autoconf_opcode_allow_virtual_station_extensibility         = 6, | 
 
 
 
 
 | 408 | wlan_autoconf_opcode_end                                         = 7 | 
 
 
 
 
 | 409 | } WLAN_AUTOCONF_OPCODE, *PWLAN_AUTOCONF_OPCODE; | 
 
 
 
 
 | 410 |  | 
 
 
 
 
 | 411 | typedef enum _WL_DISPLAY_PAGES { | 
 
 
 
 
 | 412 | WLConnectionPage, | 
 
 
 
 
 | 413 | WLSecurityPage | 
 
 
 
 
 | 414 | } WL_DISPLAY_PAGES, *PWL_DISPLAY_PAGES; | 
 
 
 
 
 | 415 |  | 
 
 
 
 
 | 416 | typedef enum _WLAN_ADHOC_NETWORK_STATE { | 
 
 
 
 
 | 417 | wlan_adhoc_network_state_formed      = 0, | 
 
 
 
 
 | 418 | wlan_adhoc_network_state_connected   = 1 | 
 
 
 
 
 | 419 | } WLAN_ADHOC_NETWORK_STATE; | 
 
 
 
 
 | 420 |  | 
 
 
 
 
 | 421 | typedef enum _WLAN_IHV_CONTROL_TYPE { | 
 
 
 
 
 | 422 | wlan_ihv_control_type_service, | 
 
 
 
 
 | 423 | wlan_ihv_control_type_driver | 
 
 
 
 
 | 424 | } WLAN_IHV_CONTROL_TYPE, *PWLAN_IHV_CONTROL_TYPE; | 
 
 
 
 
 | 425 |  | 
 
 
 
 
 | 426 | typedef enum _WLAN_FILTER_LIST_TYPE { | 
 
 
 
 
 | 427 | wlan_filter_list_type_gp_permit, | 
 
 
 
 
 | 428 | wlan_filter_list_type_gp_deny, | 
 
 
 
 
 | 429 | wlan_filter_list_type_user_permit, | 
 
 
 
 
 | 430 | wlan_filter_list_type_user_deny | 
 
 
 
 
 | 431 | } WLAN_FILTER_LIST_TYPE, *PWLAN_FILTER_LIST_TYPE; | 
 
 
 
 
 | 432 |  | 
 
 
 
 
 | 433 | typedef enum _WLAN_SECURABLE_OBJECT { | 
 
 
 
 
 | 434 | wlan_secure_permit_list                      = 0, | 
 
 
 
 
 | 435 | wlan_secure_deny_list                        = 1, | 
 
 
 
 
 | 436 | wlan_secure_ac_enabled                       = 2, | 
 
 
 
 
 | 437 | wlan_secure_bc_scan_enabled                  = 3, | 
 
 
 
 
 | 438 | wlan_secure_bss_type                         = 4, | 
 
 
 
 
 | 439 | wlan_secure_show_denied                      = 5, | 
 
 
 
 
 | 440 | wlan_secure_interface_properties             = 6, | 
 
 
 
 
 | 441 | wlan_secure_ihv_control                      = 7, | 
 
 
 
 
 | 442 | wlan_secure_all_user_profiles_order          = 8, | 
 
 
 
 
 | 443 | wlan_secure_add_new_all_user_profiles        = 9, | 
 
 
 
 
 | 444 | wlan_secure_add_new_per_user_profiles        = 10, | 
 
 
 
 
 | 445 | wlan_secure_media_streaming_mode_enabled     = 11, | 
 
 
 
 
 | 446 | wlan_secure_current_operation_mode           = 12, | 
 
 
 
 
 | 447 | wlan_secure_get_plaintext_key                = 13, | 
 
 
 
 
 | 448 | wlan_secure_hosted_network_elevated_access   = 14 | 
 
 
 
 
 | 449 | } WLAN_SECURABLE_OBJECT, *PWLAN_SECURABLE_OBJECT; | 
 
 
 
 
 | 450 |  | 
 
 
 
 
 | 451 | typedef struct _DOT11_NETWORK_LIST { | 
 
 
 
 
 | 452 | DWORD         dwNumberOfItems; | 
 
 
 
 
 | 453 | DWORD         dwIndex; | 
 
 
 
 
 | 454 | DOT11_NETWORK Network[1]; | 
 
 
 
 
 | 455 | } DOT11_NETWORK_LIST, *PDOT11_NETWORK_LIST; | 
 
 
 
 
 | 456 |  | 
 
 
 
 
 | 457 | #define DOT11_RATE_SET_MAX_LENGTH 126 | 
 
 
 
 
 | 458 |  | 
 
 
 
 
 | 459 | typedef struct _WLAN_RATE_SET { | 
 
 
 
 
 | 460 | ULONG  uRateSetLength; | 
 
 
 
 
 | 461 | USHORT usRateSet[DOT11_RATE_SET_MAX_LENGTH]; | 
 
 
 
 
 | 462 | } WLAN_RATE_SET, *PWLAN_RATE_SET; | 
 
 
 
 
 | 463 |  | 
 
 
 
 
 | 464 | typedef struct _WLAN_BSS_ENTRY { | 
 
 
 
 
 | 465 | DOT11_SSID        dot11Ssid; | 
 
 
 
 
 | 466 | ULONG             uPhyId; | 
 
 
 
 
 | 467 | DOT11_MAC_ADDRESS dot11Bssid; | 
 
 
 
 
 | 468 | DOT11_BSS_TYPE    dot11BssType; | 
 
 
 
 
 | 469 | DOT11_PHY_TYPE    dot11BssPhyType; | 
 
 
 
 
 | 470 | LONG              lRssi; | 
 
 
 
 
 | 471 | ULONG             uLinkQuality; | 
 
 
 
 
 | 472 | BOOLEAN           bInRegDomain; | 
 
 
 
 
 | 473 | USHORT            usBeaconPeriod; | 
 
 
 
 
 | 474 | ULONGLONG         ullTimestamp; | 
 
 
 
 
 | 475 | ULONGLONG         ullHostTimestamp; | 
 
 
 
 
 | 476 | USHORT            usCapabilityInformation; | 
 
 
 
 
 | 477 | ULONG             ulChCenterFrequency; | 
 
 
 
 
 | 478 | WLAN_RATE_SET     wlanRateSet; | 
 
 
 
 
 | 479 | ULONG             ulIeOffset; | 
 
 
 
 
 | 480 | ULONG             ulIeSize; | 
 
 
 
 
 | 481 | } WLAN_BSS_ENTRY, *PWLAN_BSS_ENTRY; | 
 
 
 
 
 | 482 |  | 
 
 
 
 
 | 483 | typedef struct _WLAN_BSS_LIST { | 
 
 
 
 
 | 484 | DWORD          dwTotalSize; | 
 
 
 
 
 | 485 | DWORD          dwNumberOfItems; | 
 
 
 
 
 | 486 | WLAN_BSS_ENTRY wlanBssEntries[1]; | 
 
 
 
 
 | 487 | } WLAN_BSS_LIST, *PWLAN_BSS_LIST; | 
 
 
 
 
 | 488 |  | 
 
 
 
 
 | 489 | typedef struct _WLAN_COUNTRY_OR_REGION_STRING_LIST { | 
 
 
 
 
 | 490 | DWORD                          dwNumberOfItems; | 
 
 
 
 
 | 491 | DOT11_COUNTRY_OR_REGION_STRING pCountryOrRegionStringList[1]; | 
 
 
 
 
 | 492 | } WLAN_COUNTRY_OR_REGION_STRING_LIST, *PWLAN_COUNTRY_OR_REGION_STRING_LIST; | 
 
 
 
 
 | 493 |  | 
 
 
 
 
 | 494 | #define WLAN_MAX_PHY_INDEX 64 | 
 
 
 
 
 | 495 |  | 
 
 
 
 
 | 496 | typedef struct _WLAN_INTERFACE_CAPABILITY { | 
 
 
 
 
 | 497 | WLAN_INTERFACE_TYPE interfaceType; | 
 
 
 
 
 | 498 | WINBOOL             bDot11DSupported; | 
 
 
 
 
 | 499 | DWORD               dwMaxDesiredSsidListSize; | 
 
 
 
 
 | 500 | DWORD               dwMaxDesiredBssidListSize; | 
 
 
 
 
 | 501 | DWORD               dwNumberOfSupportedPhys; | 
 
 
 
 
 | 502 | DOT11_PHY_TYPE      dot11PhyTypes[WLAN_MAX_PHY_INDEX]; | 
 
 
 
 
 | 503 | } WLAN_INTERFACE_CAPABILITY, *PWLAN_INTERFACE_CAPABILITY; | 
 
 
 
 
 | 504 |  | 
 
 
 
 
 | 505 | typedef struct _WLAN_MAC_FRAME_STATISTICS { | 
 
 
 
 
 | 506 | ULONGLONG ullTransmittedFrameCount; | 
 
 
 
 
 | 507 | ULONGLONG ullReceivedFrameCount; | 
 
 
 
 
 | 508 | ULONGLONG ullWEPExcludedCount; | 
 
 
 
 
 | 509 | ULONGLONG ullTKIPLocalMICFailures; | 
 
 
 
 
 | 510 | ULONGLONG ullTKIPReplays; | 
 
 
 
 
 | 511 | ULONGLONG ullTKIPICVErrorCount; | 
 
 
 
 
 | 512 | ULONGLONG ullCCMPReplays; | 
 
 
 
 
 | 513 | ULONGLONG ullCCMPDecryptErrors; | 
 
 
 
 
 | 514 | ULONGLONG ullWEPUndecryptableCount; | 
 
 
 
 
 | 515 | ULONGLONG ullWEPICVErrorCount; | 
 
 
 
 
 | 516 | ULONGLONG ullDecryptSuccessCount; | 
 
 
 
 
 | 517 | ULONGLONG ullDecryptFailureCount; | 
 
 
 
 
 | 518 | } WLAN_MAC_FRAME_STATISTICS, *PWLAN_MAC_FRAME_STATISTICS; | 
 
 
 
 
 | 519 |  | 
 
 
 
 
 | 520 | typedef struct _WLAN_MSM_NOTIFICATION_DATA { | 
 
 
 
 
 | 521 | WLAN_CONNECTION_MODE wlanConnectionMode; | 
 
 
 
 
 | 522 | WCHAR                strProfileName[WLAN_MAX_NAME_LENGTH]; | 
 
 
 
 
 | 523 | DOT11_SSID           dot11Ssid; | 
 
 
 
 
 | 524 | DOT11_BSS_TYPE       dot11BssType; | 
 
 
 
 
 | 525 | DOT11_MAC_ADDRESS    dot11MacAddr; | 
 
 
 
 
 | 526 | BOOL                 bSecurityEnabled; | 
 
 
 
 
 | 527 | BOOL                 bFirstPeer; | 
 
 
 
 
 | 528 | BOOL                 bLastPeer; | 
 
 
 
 
 | 529 | WLAN_REASON_CODE     wlanReasonCode; | 
 
 
 
 
 | 530 | } WLAN_MSM_NOTIFICATION_DATA, *PWLAN_MSM_NOTIFICATION_DATA; | 
 
 
 
 
 | 531 |  | 
 
 
 
 
 | 532 | typedef struct _WLAN_PHY_FRAME_STATISTICS { | 
 
 
 
 
 | 533 | ULONGLONG ullTransmittedFrameCount; | 
 
 
 
 
 | 534 | ULONGLONG ullMulticastTransmittedFrameCount; | 
 
 
 
 
 | 535 | ULONGLONG ullFailedCount; | 
 
 
 
 
 | 536 | ULONGLONG ullRetryCount; | 
 
 
 
 
 | 537 | ULONGLONG ullMultipleRetryCount; | 
 
 
 
 
 | 538 | ULONGLONG ullMaxTXLifetimeExceededCount; | 
 
 
 
 
 | 539 | ULONGLONG ullTransmittedFragmentCount; | 
 
 
 
 
 | 540 | ULONGLONG ullRTSSuccessCount; | 
 
 
 
 
 | 541 | ULONGLONG ullRTSFailureCount; | 
 
 
 
 
 | 542 | ULONGLONG ullACKFailureCount; | 
 
 
 
 
 | 543 | ULONGLONG ullReceivedFrameCount; | 
 
 
 
 
 | 544 | ULONGLONG ullMulticastReceivedFrameCount; | 
 
 
 
 
 | 545 | ULONGLONG ullPromiscuousReceivedFrameCount; | 
 
 
 
 
 | 546 | ULONGLONG ullMaxRXLifetimeExceededCount; | 
 
 
 
 
 | 547 | ULONGLONG ullFrameDuplicateCount; | 
 
 
 
 
 | 548 | ULONGLONG ullReceivedFragmentCount; | 
 
 
 
 
 | 549 | ULONGLONG ullPromiscuousReceivedFragmentCount; | 
 
 
 
 
 | 550 | ULONGLONG ullFCSErrorCount; | 
 
 
 
 
 | 551 | } WLAN_PHY_FRAME_STATISTICS, *PWLAN_PHY_FRAME_STATISTICS; | 
 
 
 
 
 | 552 |  | 
 
 
 
 
 | 553 | typedef struct _WLAN_PHY_RADIO_STATE { | 
 
 
 
 
 | 554 | DWORD             dwPhyIndex; | 
 
 
 
 
 | 555 | DOT11_RADIO_STATE dot11SoftwareRadioState; | 
 
 
 
 
 | 556 | DOT11_RADIO_STATE dot11HardwareRadioState; | 
 
 
 
 
 | 557 | } WLAN_PHY_RADIO_STATE, *PWLAN_PHY_RADIO_STATE; | 
 
 
 
 
 | 558 |  | 
 
 
 
 
 | 559 | typedef struct _WLAN_RADIO_STATE { | 
 
 
 
 
 | 560 | DWORD                dwNumberOfPhys; | 
 
 
 
 
 | 561 | WLAN_PHY_RADIO_STATE PhyRadioState[64]; | 
 
 
 
 
 | 562 | } WLAN_RADIO_STATE, *PWLAN_RADIO_STATE; | 
 
 
 
 
 | 563 |  | 
 
 
 
 
 | 564 | #define DOT11_PSD_IE_MAX_DATA_SIZE 240 | 
 
 
 
 
 | 565 | #define DOT11_PSD_IE_MAX_ENTRY_NUMBER 5 | 
 
 
 
 
 | 566 |  | 
 
 
 
 
 | 567 | typedef struct _WLAN_RAW_DATA { | 
 
 
 
 
 | 568 | DWORD dwDataSize; | 
 
 
 
 
 | 569 | BYTE  DataBlob[1]; | 
 
 
 
 
 | 570 | } WLAN_RAW_DATA, *PWLAN_RAW_DATA; | 
 
 
 
 
 | 571 |  | 
 
 
 
 
 | 572 | typedef struct _WLAN_RAW_DATA_LIST { | 
 
 
 
 
 | 573 | DWORD dwTotalSize; | 
 
 
 
 
 | 574 | DWORD dwNumberOfItems; | 
 
 
 
 
 | 575 | struct { | 
 
 
 
 
 | 576 | DWORD dwDataOffset; | 
 
 
 
 
 | 577 | DWORD dwDataSize; | 
 
 
 
 
 | 578 | } DataList[1]; | 
 
 
 
 
 | 579 | } WLAN_RAW_DATA_LIST, *PWLAN_RAW_DATA_LIST; | 
 
 
 
 
 | 580 |  | 
 
 
 
 
 | 581 | typedef struct _WLAN_STATISTICS { | 
 
 
 
 
 | 582 | ULONGLONG                 ullFourWayHandshakeFailures; | 
 
 
 
 
 | 583 | ULONGLONG                 ullTKIPCounterMeasuresInvoked; | 
 
 
 
 
 | 584 | ULONGLONG                 ullReserved; | 
 
 
 
 
 | 585 | WLAN_MAC_FRAME_STATISTICS MacUcastCounters; | 
 
 
 
 
 | 586 | WLAN_MAC_FRAME_STATISTICS MacMcastCounters; | 
 
 
 
 
 | 587 | DWORD                     dwNumberOfPhys; | 
 
 
 
 
 | 588 | WLAN_PHY_FRAME_STATISTICS PhyCounters[1]; | 
 
 
 
 
 | 589 | } WLAN_STATISTICS, *PWLAN_STATISTICS; | 
 
 
 
 
 | 590 |  | 
 
 
 
 
 | 591 | DWORD WINAPI WlanExtractPsdIEDataList( | 
 
 
 
 
 | 592 | HANDLE hClientHandle, | 
 
 
 
 
 | 593 | DWORD dwIeDataSize, | 
 
 
 
 
 | 594 | const PBYTE pRawIeData, | 
 
 
 
 
 | 595 | LPCWSTR strFormat, | 
 
 
 
 
 | 596 | PVOID pReserved, | 
 
 
 
 
 | 597 | PWLAN_RAW_DATA_LIST *ppPsdIEDataList | 
 
 
 
 
 | 598 | ); | 
 
 
 
 
 | 599 |  | 
 
 
 
 
 | 600 | DWORD WINAPI WlanGetFilterList( | 
 
 
 
 
 | 601 | HANDLE hClientHandle, | 
 
 
 
 
 | 602 | WLAN_FILTER_LIST_TYPE wlanFilterListType, | 
 
 
 
 
 | 603 | PVOID pReserved, | 
 
 
 
 
 | 604 | PDOT11_NETWORK_LIST *ppNetworkList | 
 
 
 
 
 | 605 | ); | 
 
 
 
 
 | 606 |  | 
 
 
 
 
 | 607 | DWORD WINAPI WlanGetInterfaceCapability( | 
 
 
 
 
 | 608 | HANDLE hClientHandle, | 
 
 
 
 
 | 609 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 610 | PVOID pReserved, | 
 
 
 
 
 | 611 | PWLAN_INTERFACE_CAPABILITY *ppCapability | 
 
 
 
 
 | 612 | ); | 
 
 
 
 
 | 613 |  | 
 
 
 
 
 | 614 | DWORD WINAPI WlanGetNetworkBssList( | 
 
 
 
 
 | 615 | HANDLE hClientHandle, | 
 
 
 
 
 | 616 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 617 | const  PDOT11_SSID pDot11Ssid, | 
 
 
 
 
 | 618 | DOT11_BSS_TYPE dot11BssType, | 
 
 
 
 
 | 619 | WINBOOL bSecurityEnabled, | 
 
 
 
 
 | 620 | PVOID pReserved, | 
 
 
 
 
 | 621 | PWLAN_BSS_LIST *ppWlanBssList | 
 
 
 
 
 | 622 | ); | 
 
 
 
 
 | 623 |  | 
 
 
 
 
 | 624 | DWORD WINAPI WlanGetProfileCustomUserData( | 
 
 
 
 
 | 625 | HANDLE hClientHandle, | 
 
 
 
 
 | 626 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 627 | LPCWSTR strProfileName, | 
 
 
 
 
 | 628 | PVOID pReserved, | 
 
 
 
 
 | 629 | DWORD *pdwDataSize, | 
 
 
 
 
 | 630 | PBYTE *ppData | 
 
 
 
 
 | 631 | ); | 
 
 
 
 
 | 632 |  | 
 
 
 
 
 | 633 | DWORD WINAPI WlanGetSecuritySettings( | 
 
 
 
 
 | 634 | HANDLE hClientHandle, | 
 
 
 
 
 | 635 | WLAN_SECURABLE_OBJECT SecurableObject, | 
 
 
 
 
 | 636 | PWLAN_OPCODE_VALUE_TYPE pValueType, | 
 
 
 
 
 | 637 | LPWSTR *pstrCurrentSDDL, | 
 
 
 
 
 | 638 | PDWORD pdwGrantedAccess | 
 
 
 
 
 | 639 | ); | 
 
 
 
 
 | 640 |  | 
 
 
 
 
 | 641 | DWORD WINAPI WlanIhvControl( | 
 
 
 
 
 | 642 | HANDLE hClientHandle, | 
 
 
 
 
 | 643 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 644 | WLAN_IHV_CONTROL_TYPE Type, | 
 
 
 
 
 | 645 | DWORD dwInBufferSize, | 
 
 
 
 
 | 646 | PVOID pInBuffer, | 
 
 
 
 
 | 647 | DWORD dwOutBufferSize, | 
 
 
 
 
 | 648 | PVOID pOutBuffer, | 
 
 
 
 
 | 649 | PDWORD pdwBytesReturned | 
 
 
 
 
 | 650 | ); | 
 
 
 
 
 | 651 |  | 
 
 
 
 
 | 652 | DWORD WINAPI WlanQueryAutoConfigParameter( | 
 
 
 
 
 | 653 | HANDLE hClientHandle, | 
 
 
 
 
 | 654 | WLAN_AUTOCONF_OPCODE OpCode, | 
 
 
 
 
 | 655 | PVOID pReserved, | 
 
 
 
 
 | 656 | PDWORD pdwDataSize, | 
 
 
 
 
 | 657 | PVOID ppData, | 
 
 
 
 
 | 658 | PWLAN_OPCODE_VALUE_TYPE pWlanOpcodeValueType | 
 
 
 
 
 | 659 | ); | 
 
 
 
 
 | 660 |  | 
 
 
 
 
 | 661 | DWORD WINAPI WlanRenameProfile( | 
 
 
 
 
 | 662 | HANDLE hClientHandle, | 
 
 
 
 
 | 663 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 664 | LPCWSTR strOldProfileName, | 
 
 
 
 
 | 665 | LPCWSTR strNewProfileName, | 
 
 
 
 
 | 666 | PVOID pReserved | 
 
 
 
 
 | 667 | ); | 
 
 
 
 
 | 668 |  | 
 
 
 
 
 | 669 | #define WLAN_PROFILE_USER 0x00000002 | 
 
 
 
 
 | 670 | #define WLAN_PROFILE_CONNECTION_MODE_SET_BY_CLIENT 0x00010000 | 
 
 
 
 
 | 671 | #define WLAN_PROFILE_CONNECTION_MODE_AUTO 0x00020000 | 
 
 
 
 
 | 672 |  | 
 
 
 
 
 | 673 | DWORD WINAPI WlanSaveTemporaryProfile( | 
 
 
 
 
 | 674 | HANDLE hClientHandle, | 
 
 
 
 
 | 675 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 676 | LPCWSTR strProfileName, | 
 
 
 
 
 | 677 | LPCWSTR strAllUserProfileSecurity, | 
 
 
 
 
 | 678 | DWORD dwFlags, | 
 
 
 
 
 | 679 | WINBOOL bOverWrite, | 
 
 
 
 
 | 680 | PVOID pReserved | 
 
 
 
 
 | 681 | ); | 
 
 
 
 
 | 682 |  | 
 
 
 
 
 | 683 | DWORD WINAPI WlanScan( | 
 
 
 
 
 | 684 | HANDLE hClientHandle, | 
 
 
 
 
 | 685 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 686 | const PDOT11_SSID pDot11Ssid, | 
 
 
 
 
 | 687 | const PWLAN_RAW_DATA pIeData, | 
 
 
 
 
 | 688 | PVOID pReserved | 
 
 
 
 
 | 689 | ); | 
 
 
 
 
 | 690 |  | 
 
 
 
 
 | 691 | DWORD WINAPI WlanSetAutoConfigParameter( | 
 
 
 
 
 | 692 | HANDLE hClientHandle, | 
 
 
 
 
 | 693 | WLAN_AUTOCONF_OPCODE OpCode, | 
 
 
 
 
 | 694 | DWORD dwDataSize, | 
 
 
 
 
 | 695 | const PVOID pData, | 
 
 
 
 
 | 696 | PVOID pReserved | 
 
 
 
 
 | 697 | ); | 
 
 
 
 
 | 698 |  | 
 
 
 
 
 | 699 | DWORD WINAPI WlanSetFilterList( | 
 
 
 
 
 | 700 | HANDLE hClientHandle, | 
 
 
 
 
 | 701 | WLAN_FILTER_LIST_TYPE wlanFilterListType, | 
 
 
 
 
 | 702 | const PDOT11_NETWORK_LIST pNetworkList, | 
 
 
 
 
 | 703 | PVOID pReserved | 
 
 
 
 
 | 704 | ); | 
 
 
 
 
 | 705 |  | 
 
 
 
 
 | 706 | DWORD WINAPI WlanSetProfileCustomUserData( | 
 
 
 
 
 | 707 | HANDLE hClientHandle, | 
 
 
 
 
 | 708 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 709 | LPCWSTR strProfileName, | 
 
 
 
 
 | 710 | DWORD dwDataSize, | 
 
 
 
 
 | 711 | const PBYTE pData, | 
 
 
 
 
 | 712 | PVOID pReserved | 
 
 
 
 
 | 713 | ); | 
 
 
 
 
 | 714 |  | 
 
 
 
 
 | 715 | DWORD WlanSetProfileEapUserData( | 
 
 
 
 
 | 716 | HANDLE hClientHandle, | 
 
 
 
 
 | 717 | const GUID *pInterfaceGuid, | 
 
 
 
 
 | 718 | LPCWSTR strProfileName, | 
 
 
 
 
 | 719 | EAP_METHOD_TYPE eapType, | 
 
 
 
 
 | 720 | DWORD dwFlags, | 
 
 
 
 
 | 721 | DWORD dwEapUserDataSize, | 
 
 
 
 
 | 722 | const LPBYTE pbEapUserData, | 
 
 
 
 
 | 723 | PVOID pReserved | 
 
 
 
 
 | 724 | ); | 
 
 
 
 
 | 725 |  | 
 
 
 
 
 | 726 | DWORD WINAPI WlanSetPsdIEDataList( | 
 
 
 
 
 | 727 | HANDLE hClientHandle, | 
 
 
 
 
 | 728 | LPCWSTR strFormat, | 
 
 
 
 
 | 729 | const PWLAN_RAW_DATA_LIST pPsdIEDataList, | 
 
 
 
 
 | 730 | PVOID pReserved | 
 
 
 
 
 | 731 | ); | 
 
 
 
 
 | 732 |  | 
 
 
 
 
 | 733 | DWORD WINAPI WlanSetSecuritySettings( | 
 
 
 
 
 | 734 | HANDLE hClientHandle, | 
 
 
 
 
 | 735 | WLAN_SECURABLE_OBJECT SecurableObject, | 
 
 
 
 
 | 736 | LPCWSTR strModifiedSDDL | 
 
 
 
 
 | 737 | ); | 
 
 
 
 
 | 738 |  | 
 
 
 
 
 | 739 | DWORD WINAPI WlanUIEditProfile( | 
 
 
 
 
 | 740 | DWORD dwClientVersion, | 
 
 
 
 
 | 741 | LPCWSTR wstrProfileName, | 
 
 
 
 
 | 742 | GUID *pInterfaceGuid, | 
 
 
 
 
 | 743 | HWND hWnd, | 
 
 
 
 
 | 744 | WL_DISPLAY_PAGES wlStartPage, | 
 
 
 
 
 | 745 | PVOID pReserved, | 
 
 
 
 
 | 746 | PWLAN_REASON_CODE *pWlanReasonCode | 
 
 
 
 
 | 747 | ); | 
 
 
 
 
 | 748 |  | 
 
 
 
 
 | 749 | #ifdef __cplusplus | 
 
 
 
 
 | 750 | } | 
 
 
 
 
 | 751 | #endif | 
 
 
 
 
 | 752 |  | 
 
 
 
 
 | 753 | #endif /*_INC_WLANAPI*/ |