• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2021 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_WIFI_IDL_STRUCT_H
17 #define OHOS_WIFI_IDL_STRUCT_H
18 
19 #include <string>
20 #include <vector>
21 
22 namespace OHOS {
23 namespace Wifi {
24 struct WifiApConnectionNofify {
25     int type;
26     std::string mac;
27 
WifiApConnectionNofifyWifiApConnectionNofify28     WifiApConnectionNofify() : type(0)
29     {}
30 
~WifiApConnectionNofifyWifiApConnectionNofify31     ~WifiApConnectionNofify()
32     {}
33 };
34 
35 constexpr int MAX_WEPKEYS_SIZE = 4;
36 constexpr int AUTH_ALGORITHM_MAX = 8;
37 struct WifiIdlDeviceConfig {
38     int networkId;
39     int priority;
40     int scanSsid;
41     int authAlgorithms; /* WifiDeviceConfig.allowedAuthAlgorithms */
42     int wepKeyIdx;
43     std::string wepKeys[MAX_WEPKEYS_SIZE]; /* max set 4 wepkeys */
44     std::string ssid;
45     std::string psk;
46     std::string keyMgmt;
47     std::string eap;
48     std::string identity;
49     std::string password;
50     std::string bssid;
51 
WifiIdlDeviceConfigWifiIdlDeviceConfig52     WifiIdlDeviceConfig() : networkId(-1), priority(-1), scanSsid(-1), authAlgorithms(-1), wepKeyIdx(-1)
53     {}
54 
~WifiIdlDeviceConfigWifiIdlDeviceConfig55     ~WifiIdlDeviceConfig()
56     {}
57 };
58 
59 struct WifiIdlGetDeviceConfig {
60     int networkId;
61     std::string param;
62     std::string value;
63 
WifiIdlGetDeviceConfigWifiIdlGetDeviceConfig64     WifiIdlGetDeviceConfig() : networkId(-1)
65     {}
66 
~WifiIdlGetDeviceConfigWifiIdlGetDeviceConfig67     ~WifiIdlGetDeviceConfig()
68     {}
69 };
70 
71 struct WifiIdlWpsConfig {
72     int anyFlag;
73     int multiAp;
74     std::string bssid;
75     std::string pinCode;
76 
WifiIdlWpsConfigWifiIdlWpsConfig77     WifiIdlWpsConfig() : anyFlag(-1), multiAp(-1)
78     {}
79 
~WifiIdlWpsConfigWifiIdlWpsConfig80     ~WifiIdlWpsConfig()
81     {}
82 };
83 
84 struct WifiWpaSignalInfo {
85     int signal;
86     int txrate;
87     int rxrate;
88     int noise;
89     int frequency;
90 
WifiWpaSignalInfoWifiWpaSignalInfo91     WifiWpaSignalInfo() : signal(0), txrate(0), rxrate(0), noise(0), frequency(0)
92     {}
93 
~WifiWpaSignalInfoWifiWpaSignalInfo94     ~WifiWpaSignalInfo()
95     {}
96 };
97 
98 struct WifiIdlRoamCapability {
99     int maxBlocklistSize;
100     int maxTrustlistSize;
101 
WifiIdlRoamCapabilityWifiIdlRoamCapability102     WifiIdlRoamCapability() : maxBlocklistSize(0), maxTrustlistSize(0)
103     {}
104 
~WifiIdlRoamCapabilityWifiIdlRoamCapability105     ~WifiIdlRoamCapability()
106     {}
107 };
108 
109 struct WifiIdlRoamConfig {
110     std::vector<std::string> blocklistBssids;
111     std::vector<std::string> trustlistBssids;
112 };
113 
114 struct WifiWpaNetworkInfo {
115     int id;
116     std::string ssid;
117     std::string bssid;
118     std::string flag;
119 
WifiWpaNetworkInfoWifiWpaNetworkInfo120     WifiWpaNetworkInfo() : id(0)
121     {}
122 
~WifiWpaNetworkInfoWifiWpaNetworkInfo123     ~WifiWpaNetworkInfo()
124     {}
125 };
126 
127 struct IdlP2pDeviceFound {
128     std::string srcAddress;
129     std::string p2pDeviceAddress;
130     std::string primaryDeviceType;
131     std::string deviceName;
132     int configMethods;
133     int deviceCapabilities;
134     int groupCapabilities;
135     std::vector<char> wfdDeviceInfo;
136 
IdlP2pDeviceFoundIdlP2pDeviceFound137     IdlP2pDeviceFound() : configMethods(0), deviceCapabilities(0), groupCapabilities(0)
138     {}
139 
~IdlP2pDeviceFoundIdlP2pDeviceFound140     ~IdlP2pDeviceFound()
141     {}
142 };
143 
144 struct IdlP2pInvitationInfo {
145     int type; /* 0:Recived, 1:Accepted */
146     int persistentNetworkId;
147     int operatingFrequency;
148     std::string srcAddress;
149     std::string goDeviceAddress;
150     std::string bssid;
151 
IdlP2pInvitationInfoIdlP2pInvitationInfo152     IdlP2pInvitationInfo() : type(0), persistentNetworkId(0), operatingFrequency(0)
153     {}
154 
~IdlP2pInvitationInfoIdlP2pInvitationInfo155     ~IdlP2pInvitationInfo()
156     {}
157 };
158 
159 struct IdlP2pGroupInfo {
160     int isGo;
161     int isPersistent;
162     int frequency;
163     std::string groupName;
164     std::string ssid;
165     std::string psk;
166     std::string passphrase;
167     std::string goDeviceAddress;
168 
IdlP2pGroupInfoIdlP2pGroupInfo169     IdlP2pGroupInfo() : isGo(0), isPersistent(0), frequency(0)
170     {}
171 
~IdlP2pGroupInfoIdlP2pGroupInfo172     ~IdlP2pGroupInfo()
173     {}
174 };
175 
176 struct IdlP2pServDiscReqInfo {
177     int freq;
178     int dialogToken;
179     int updateIndic;
180     std::string mac;
181     std::vector<unsigned char> tlvList;
182 
IdlP2pServDiscReqInfoIdlP2pServDiscReqInfo183     IdlP2pServDiscReqInfo() : freq(0), dialogToken(0), updateIndic(0)
184     {}
185 
~IdlP2pServDiscReqInfoIdlP2pServDiscReqInfo186     ~IdlP2pServDiscReqInfo()
187     {}
188 };
189 
190 struct IdlP2pGroupConfig {
191     std::string ssid;
192     std::string bssid;
193     std::string psk;
194     std::string proto;
195     std::string keyMgmt;
196     std::string pairwise;
197     std::string authAlg;
198     int mode;
199     int disabled;
200 
IdlP2pGroupConfigIdlP2pGroupConfig201     IdlP2pGroupConfig()
202         : bssid("00:00:00:00:00:00"),
203           proto("RSN"),
204           keyMgmt("WPA-PSK"),
205           pairwise("CCMP"),
206           authAlg("OPEN"),
207           mode(0),
208           disabled(0)
209     {}
210 
~IdlP2pGroupConfigIdlP2pGroupConfig211     ~IdlP2pGroupConfig()
212     {}
213 };
214 }  // namespace Wifi
215 }  // namespace OHOS
216 #endif