1 /* 2 * Copyright (C) 2021-2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef OHOS_STA_DEFINE_H 17 #define OHOS_STA_DEFINE_H 18 19 #include <functional> 20 #include <string> 21 22 namespace OHOS { 23 namespace Wifi { 24 #define FRIEND_GTEST(test_typename) friend class test_typename##Test 25 26 #define WIFI_SVR_CMD_STA_ENABLE_STA 0x2001 27 #define WIFI_SVR_CMD_STA_DISABLE_STA 0x2002 28 #define WIFI_SVR_CMD_STA_OPERATIONAL_MODE 0x2003 29 #define WIFI_SVR_CMD_STA_CONNECT_NETWORK 0x2004 30 #define WIFI_SVR_CMD_STA_CONNECT_SAVED_NETWORK 0x2005 31 #define WIFI_SVR_CMD_STA_RECONNECT_NETWORK 0x2006 32 #define WIFI_SVR_CMD_STA_REASSOCIATE_NETWORK 0x2007 33 #define WIFI_SVR_CMD_STA_DISCONNECT 0x2008 34 #define WIFI_SVR_CMD_STA_STARTWPS 0x2009 35 #define WIFI_SVR_CMD_STA_CANCELWPS 0x200A 36 #define WIFI_SVR_COM_STA_START_ROAM 0x200B 37 #define WIFI_SVR_COM_STA_ENABLE_HILINK 0x200C 38 #define WIFI_SVR_COM_STA_HILINK_DELIVER_MAC 0x200D 39 #define WIFI_SVR_COM_STA_HILINK_TRIGGER_WPS 0x200E 40 #define WIFI_SVR_COM_STA_NETWORK_REMOVED 0x200F 41 42 #define WIFI_SVR_CMD_STA_ERROR 0x3001 43 #define WIFI_SVR_CMD_STA_SUP_CONNECTION_EVENT 0x3002 44 #define WIFI_SVR_CMD_STA_SUP_DISCONNECTION_EVENT 0x3003 45 #define WIFI_SVR_CMD_STA_NETWORK_CONNECTION_EVENT 0x3004 46 #define WIFI_SVR_CMD_STA_NETWORK_DISCONNECTION_EVENT 0x3005 47 #define WIFI_SVR_CMD_STA_WPS_START_EVENT 0x3006 48 #define WIFI_SVR_CMD_STA_WPS_CANCEL_EVENT 0x3007 49 #define WIFI_SVR_CMD_STA_WPS_FAILED_EVENT 0x3008 50 #define WIFI_SVR_CMD_STA_WPS_OVERLAP_EVENT 0x3009 51 #define WIFI_SVR_CMD_STA_WPS_TIMEOUT_EVNET 0x300A 52 #define WIFI_SVR_CMD_STA_WPS_WEP_PROHIBITED 0x300B 53 #define WIFI_SVR_CMD_STA_WPS_TKIP_ONLY_PROHIBITED 0x300C 54 #define WIFI_SVR_CMD_STA_WPS_AUTH_FAILURE 0x300D 55 #define WIFI_SVR_CMD_STA_WPS_OVERLAP_ERROR 0x300E 56 #define WIFI_SVR_CMD_STA_SUP_REQUEST_IDENTITY 0x300F 57 #define WIFI_SVR_CMD_STA_SUP_REQUEST_SIM_AUTH 0x3010 58 #define WIFI_SVR_CMD_STA_AUTHENTICATION_FAILURE_EVENT 0x3011 59 #define WIFI_SVR_CMD_STA_REASON_TKIP_ONLY_PROHIBITED 0x3012 60 #define WIFI_SVR_CMD_STA_REASON_WEP_PROHIBITED 0x3013 61 #define WIFI_SVR_CMD_STA_CONFIG_AUTH_FAILURE 0x3014 62 #define WIFI_SVR_CMD_STA_CONFIG_MULTIPLE_PBC_DETECTED 0x3015 63 #define WIFI_SVR_CMD_STA_WPA_STATE_CHANGE_EVENT 0x3016 64 #define WIFI_SVR_CMD_STA_WPA_PASSWD_WRONG_EVENT 0x3017 65 #define WIFI_SVR_CMD_STA_WPA_FULL_CONNECT_EVENT 0x3018 66 #define WIFI_SVR_CMD_STA_WPA_ASSOC_REJECT_EVENT 0x3019 67 #define WIFI_SVR_CMD_STA_BSSID_CHANGED_EVENT 0x301A 68 #define WIFI_SVR_CMD_STA_DHCP_RESULT_NOTIFY_EVENT 0x301B 69 #define WIFI_SVR_CMD_STA_NET_DETECTION_NOTIFY_EVENT 0x301C 70 #define WIFI_SVR_CMD_STA_WPA_EAP_SIM_AUTH_EVENT 0x301D 71 #define WIFI_SVR_CMD_STA_WPA_EAP_UMTS_AUTH_EVENT 0x301E 72 #define WIFI_SVR_CMD_STA_REPORT_DISCONNECT_REASON_EVENT 0x301F 73 #define WIFI_SVR_CMD_STA_PORTAL_BROWSE_NOTIFY_EVENT 0x3020 74 #define WIFI_SVR_CMD_STA_LINK_SWITCH_EVENT 0x3021 75 #define WIFI_SVR_CMD_STA_CSA_CHANNEL_SWITCH_EVENT 0x3022 76 #define WIFI_SVR_CMD_STA_MLO_WORK_STATE_EVENT 0x3023 77 #define WIFI_SVR_CMD_STA_FOREGROUND_APP_CHANGED_EVENT 0x3024 78 #define WIFI_SVR_CMD_STA_WPA_EAP_CUSTOM_AUTH_EVENT 0x3025 79 80 #define WPA_BLOCK_LIST_CLEAR_EVENT 0x4001 81 #define WIFI_SVR_CMD_UPDATE_COUNTRY_CODE 0x4002 82 #define WIFI_SCREEN_STATE_CHANGED_NOTIFY_EVENT 0x4003 83 #define WIFI_AUDIO_STATE_CHANGED_NOTIFY_EVENT 0x4004 84 85 #define WIFI_SVR_CMD_STA_FOLD_STATUS_NOTIFY_EVENT 0x5001 86 #define BSSID_LEN 17 87 #define KEY_LEN 128 88 #define SSID_LEN 32 89 #define VALUE_LIMIT_MIN_RSSI (-100) 90 #define VALUE_LIMIT_MAX_RSSI (-55) 91 #define AUDIO_ON (1) 92 #define AUDIO_OFF (0) 93 94 enum SelectedType { 95 NETWORK_SELECTED_BY_UNKNOWN = -1, 96 NETWORK_SELECTED_BY_AUTO = 0, 97 NETWORK_SELECTED_BY_USER = 1, 98 NETWORK_SELECTED_BY_RETRY = 2, 99 NETWORK_SELECTED_BY_WIFIPRO = 3, 100 NETWORK_SELECTED_BY_SELFCURE = 4, 101 NETWORK_SELECTED_BY_ROAM = 5, 102 NETWORK_SELECTED_BY_REASSOC 103 }; 104 105 #define WIFI_SIM_GSM_AUTH_MIN_PARAM_COUNT 3 106 #define WIFI_SIM_GSM_AUTH_MAX_PARAM_COUNT 4 107 #define WIFI_SIM_UMTS_AUTH_PARAM_COUNT 3 108 109 #define WIFI_MLO_STATE_PARAM_COUNT 3 110 111 inline const int NETWORK_24G_BAND = 1; 112 inline const int NETWORK_5G_BAND = 2; 113 inline const int MAX_RETRY_COUNT = 3; 114 #define BAND_2_G 1 115 #define BAND_5_G 2 116 117 typedef enum EnumStaArpState { 118 ARP_STATE_WORKING, 119 ARP_STATE_UNREACHABLE, 120 } StaArpState; 121 122 enum NetworkFailReason { 123 DNS_STATE_WORKING, 124 DNS_STATE_UNREACHABLE, 125 IP_STATE_CONFLICT, 126 }; 127 128 typedef enum EnumNetWorkState { 129 NETWORK_NOTWORKING, 130 NETWORK_IS_WORKING, 131 NETWORK_IS_PORTAL, 132 NETWORK_DEFAULT_STATE, 133 }SystemNetWorkState; 134 135 typedef enum EnumStaNetState { 136 NETWORK_STATE_UNKNOWN, 137 NETWORK_STATE_WORKING, 138 NETWORK_CHECK_PORTAL, 139 NETWORK_STATE_NOINTERNET, 140 NETWORK_STATE_BUTT, 141 } StaNetState; 142 143 using ArpStateHandler = std::function<void(StaArpState arpState)>; 144 } // namespace Wifi 145 } // namespace OHOS 146 #endif /* OHOS_STA_DEFINE_H */ 147