| /* |
| * Copyright 2019 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.3; |
| |
| import @1.0::SupplicantStatus; |
| import @1.2::ISupplicantStaIface; |
| import ISupplicantStaNetwork; |
| import ISupplicantStaIfaceCallback; |
| import @1.0::MacAddress; |
| |
| /** |
| * Interface exposed by the supplicant for each station mode network |
| * interface (e.g wlan0) it controls. |
| */ |
| interface ISupplicantStaIface extends @1.2::ISupplicantStaIface { |
| /** |
| * Register for callbacks from this interface. |
| * |
| * These callbacks are invoked for events that are specific to this interface. |
| * Registration of multiple callback objects is supported. These objects must |
| * be automatically deleted when the corresponding client process is dead or |
| * if this interface is removed. |
| * |
| * @param callback An instance of the |ISupplicantStaIfaceCallback| HIDL |
| * interface object. |
| * @return status Status of the operation. |
| * Possible status codes: |
| * |SupplicantStatusCode.SUCCESS|, |
| * |SupplicantStatusCode.FAILURE_UNKNOWN|, |
| * |SupplicantStatusCode.FAILURE_IFACE_INVALID| |
| */ |
| registerCallback_1_3(ISupplicantStaIfaceCallback callback) |
| generates (SupplicantStatus status); |
| |
| /** |
| * Get Connection capabilities |
| * |
| * @return status Status of the operation, and connection capabilities. |
| * Possible status codes: |
| * |SupplicantStatusCode.SUCCESS|, |
| * |SupplicantStatusCode.FAILURE_UNKNOWN|, |
| */ |
| getConnectionCapabilities() |
| generates (SupplicantStatus status, ConnectionCapabilities capabilities); |
| |
| /** |
| * Get wpa driver capabilities. |
| * |
| * @return status Status of the operation, and a bitmap of wpa driver features. |
| * Possible status codes: |
| * |SupplicantStatusCode.SUCCESS|, |
| * |SupplicantStatusCode.FAILURE_UNKNOWN|, |
| */ |
| getWpaDriverCapabilities() generates (SupplicantStatus status, |
| bitfield<WpaDriverCapabilitiesMask> driverCapabilitiesMask); |
| |
| /** |
| * Set Wi-Fi Alliance Agile Multiband (MBO) cellular data status. |
| * |
| * @param available true means cellular data available, false otherwise. |
| * @return status Status of the operation. |
| * Possible status codes: |
| * |SupplicantStatusCode.SUCCESS|, |
| * |SupplicantStatusCode.FAILURE_UNKNOWN| |
| */ |
| setMboCellularDataStatus(bool available) generates (SupplicantStatus status); |
| |
| /** |
| * Get Key management capabilities of the device |
| * |
| * @return status Status of the operation, and a bitmap of key management mask. |
| * Possible status codes: |
| * |SupplicantStatusCode.SUCCESS|, |
| * |SupplicantStatusCode.FAILURE_ARGS_INVALID|, |
| * |SupplicantStatusCode.FAILURE_NETWORK_INVALID|, |
| * |SupplicantStatusCode.FAILURE_UNKNOWN| |
| */ |
| getKeyMgmtCapabilities_1_3() |
| generates (SupplicantStatus status, bitfield<KeyMgmtMask> keyMgmtMask); |
| |
| /** |
| * Flush fast initial link setup (IEEE 802.11ai FILS) HLP packets. |
| * Use this to flush all the higher layer protocol (HLP) packets added in |
| * wpa_supplicant to send in FILS (Re)Association Request frame |
| * (Eg: DHCP discover packet). |
| * |
| * @return status Status of the operation. |
| * Possible status codes: |
| * |SupplicantStatusCode.SUCCESS|, |
| * |SupplicantStatusCode.FAILURE_UNKNOWN|, |
| * |SupplicantStatusCode.FAILURE_IFACE_INVALID|, |
| * |SupplicantStatusCode.FAILURE_IFACE_DISABLED| |
| */ |
| filsHlpFlushRequest() generates (SupplicantStatus status); |
| |
| /** |
| * Add fast initial link setup (IEEE 802.11ai FILS) HLP packets. |
| * Use this to add higher layer protocol (HLP) packet in FILS (Re)Association Request frame |
| * (Eg: DHCP discover packet). |
| * |
| * @param dst_mac MAC address of the destination |
| * @param pkt The contents of the HLP packet starting from ethertype |
| * @return status Status of the operation. |
| * Possible status codes: |
| * |SupplicantStatusCode.SUCCESS|, |
| * |SupplicantStatusCode.FAILURE_UNKNOWN|, |
| * |SupplicantStatusCode.FAILURE_IFACE_INVALID|, |
| * |SupplicantStatusCode.FAILURE_IFACE_DISABLED| |
| */ |
| filsHlpAddRequest(MacAddress dst_mac, vec<uint8_t> pkt) generates (SupplicantStatus status); |
| }; |