| /* |
| * Copyright 2020 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| package android.hardware.wifi.supplicant@1.4; |
| |
| import @1.0::SupplicantStatusCode; |
| import @1.3::ConnectionCapabilities; |
| import @1.3::DppFailureCode; |
| import @1.3::WpaDriverCapabilitiesMask; |
| |
| /** |
| * Detailed network mode for legacy network |
| */ |
| enum LegacyMode : uint32_t { |
| UNKNOWN = 0, |
| /** |
| * For 802.11a |
| */ |
| A_MODE = 1, |
| /** |
| * For 802.11b |
| */ |
| B_MODE = 2, |
| /** |
| * For 802.11g |
| */ |
| G_MODE = 3, |
| }; |
| |
| /** |
| * DppFailureCode: Error codes for DPP (Easy Connect) |
| */ |
| enum DppFailureCode : @1.3::DppFailureCode { |
| /** |
| * Failure to generate a DPP URI. |
| */ |
| URI_GENERATION, |
| }; |
| |
| /** |
| * DppCurve: Elliptic curve cryptography type used to generate DPP |
| * public/private key pair. |
| */ |
| enum DppCurve : uint32_t { |
| PRIME256V1, |
| SECP384R1, |
| SECP521R1, |
| BRAINPOOLP256R1, |
| BRAINPOOLP384R1, |
| BRAINPOOLP512R1, |
| }; |
| |
| /** |
| * Connection Capabilities supported by current network and device |
| */ |
| struct ConnectionCapabilities { |
| /** |
| * Baseline information as defined in HAL 1.3. |
| */ |
| @1.3::ConnectionCapabilities V1_3; |
| |
| /** |
| * detailed network mode for legacy network |
| */ |
| LegacyMode legacyMode; |
| }; |
| |
| /** |
| * Enum values indicating the status of any supplicant operation. |
| */ |
| enum SupplicantStatusCode : @1.0::SupplicantStatusCode { |
| FAILURE_UNSUPPORTED, |
| }; |
| |
| /** |
| * Generic structure to return the status of any supplicant operation. |
| */ |
| struct SupplicantStatus { |
| SupplicantStatusCode code; |
| |
| /** |
| * A vendor specific error message to provide more information beyond the |
| * status code. |
| * This will be used for debbuging purposes only. |
| */ |
| string debugMessage; |
| }; |
| |
| /** |
| * WPA Driver capability. |
| */ |
| enum WpaDriverCapabilitiesMask : @1.3::WpaDriverCapabilitiesMask { |
| /** |
| * WPA3 SAE Public-Key. |
| */ |
| SAE_PK = 1 << 2, |
| }; |
| |
| /** |
| * DPP bootstrap info generated for responder mode operation |
| */ |
| struct DppResponderBootstrapInfo { |
| /** |
| * Generated bootstrap identifier |
| */ |
| uint32_t bootstrapId; |
| |
| /** |
| * The Wi-Fi channel that the DPP responder is listening on. |
| */ |
| uint32_t listenChannel; |
| |
| /** |
| * Bootstrapping URI per DPP specification, "section 5.2 Bootstrapping |
| * information", may contain listen channel, MAC address, public key, or other information. |
| */ |
| string uri; |
| }; |