blob: 0309f3b63fe0159bd64888de75c6eddf8ca7711b [file] [log] [blame]
/*
* 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.hostapd@1.3;
import @1.2::HostapdStatus;
import @1.2::IHostapd.IfaceParams;
import @1.2::IHostapd.NetworkParams;
import @1.2::IHostapd;
import IHostapdCallback;
/**
* Top-level object for managing SoftAPs.
*/
interface IHostapd extends @1.2::IHostapd {
/**
* Parameters to use for setting up the access point network.
*/
struct NetworkParams {
/**
* Baseline information as defined in HAL 1.2.
*/
@1.2::IHostapd.NetworkParams V1_2;
/**
* Enable the interworking service and set access network type to
* CHARGEABLE_PUBLIC_NETWORK when set to true.
*/
bool isMetered;
};
/**
* Adds a new access point for hostapd to control.
*
* This should trigger the setup of an access point with the specified
* interface and network params.
*
* @param ifaceParams AccessPoint Params for the access point.
* @param nwParams Network Params for the access point.
* @return status Status of the operation.
* Possible status codes:
* |HostapdStatusCode.SUCCESS|,
* |HostapdStatusCode.FAILURE_ARGS_INVALID|,
* |HostapdStatusCode.FAILURE_UNKNOWN|,
* |HostapdStatusCode.FAILURE_IFACE_EXISTS|
*/
addAccessPoint_1_3(@1.2::IHostapd.IfaceParams ifaceParams, NetworkParams nwParams)
generates (HostapdStatus status);
/**
* Register for callbacks from the hostapd service.
*
* These callbacks are invoked for global events that are not specific
* to any interface or network. Registration of multiple callback
* objects is supported. These objects must be deleted when the corresponding
* client process is dead.
*
* @param callback An instance of the |IHostapdCallback| HIDL interface
* object.
* @return status Status of the operation.
* Possible status codes:
* |HostapdStatusCode.SUCCESS|,
* |HostapdStatusCode.FAILURE_UNKNOWN|
*/
registerCallback_1_3(IHostapdCallback callback) generates (HostapdStatus status);
};