From 282a0b35b8cad48ddaa246af597e2f1d94b01a4a Mon Sep 17 00:00:00 2001 From: Roshan Pius Date: Thu, 8 Dec 2016 11:08:14 -0800 Subject: [PATCH] supplicant(interface): Minor fixes in P2P iface Fixing couple of issues found in the interface during implementation. 1. WpsProvisionMethod::KEYPAD is not used in wpa_supplicant core. It is only used inside Android framework. So, remove them. 2. Added |setDisallowedFrequencies| method. 3. Changed the pin type to string from vector of bytes because that is used by Android framework and wpa_supplicant. Bug: 31497295 Test: Compiles Change-Id: I69db530e23c2d3af907c3a5c824cf8291cf12c35 --- wifi/supplicant/1.0/ISupplicantP2pIface.hal | 44 ++++++++++++++++++++++------- 1 file changed, 34 insertions(+), 10 deletions(-) diff --git a/wifi/supplicant/1.0/ISupplicantP2pIface.hal b/wifi/supplicant/1.0/ISupplicantP2pIface.hal index 48a4f5b4..0cdac2dc 100644 --- a/wifi/supplicant/1.0/ISupplicantP2pIface.hal +++ b/wifi/supplicant/1.0/ISupplicantP2pIface.hal @@ -37,11 +37,7 @@ interface ISupplicantP2pIface extends ISupplicantIface { /** * Keypad pin method configuration - pin is entered on device. */ - KEYPAD, - /** - * Label pin method configuration - pin is labelled on device. - */ - LABEL + KEYPAD }; enum GroupCapabilityMask : uint32_t { @@ -55,6 +51,15 @@ interface ISupplicantP2pIface extends ISupplicantIface { }; /** + * Use to specify a range of frequencies. + * For example: 2412-2432,2462,5000-6000, etc. + */ + struct FreqRange { + uint32_t min; + uint32_t max; + }; + + /** * Register for callbacks from this interface. * * These callbacks are invoked for events that are specific to this interface. @@ -97,7 +102,7 @@ interface ISupplicantP2pIface extends ISupplicantIface { * |SupplicantStatusCode.FAILURE_UNKNOWN|, * |SupplicantStatusCode.FAILURE_IFACE_INVALID| */ - setSsidPostfix(string postfix) generates (SupplicantStatus status); + setSsidPostfix(vec postfix) generates (SupplicantStatus status); /** * Set the Maximum idle time in seconds for P2P groups. @@ -106,6 +111,7 @@ interface ISupplicantP2pIface extends ISupplicantIface { * associated stations in the group. As a P2P client, this means no * group owner seen in scan results. * + * @param groupIfName Group interface name to use. * @param timeoutInSec Timeout value in seconds. * @return status Status of the operation. * Possible status codes: @@ -113,11 +119,13 @@ interface ISupplicantP2pIface extends ISupplicantIface { * |SupplicantStatusCode.FAILURE_UNKNOWN|, * |SupplicantStatusCode.FAILURE_IFACE_INVALID| */ - setGroupIdle(uint32_t timeoutInSec) generates (SupplicantStatus status); + setGroupIdle(string groupIfName, uint32_t timeoutInSec) + generates (SupplicantStatus status); /** * Turn on/off power save mode for the interface. * + * @param groupIfName Group interface name to use. * @param enable Indicate if power save is to be turned on/off. * @return status Status of the operation. * Possible status codes: @@ -126,7 +134,8 @@ interface ISupplicantP2pIface extends ISupplicantIface { * |SupplicantStatusCode.FAILURE_IFACE_INVALID|, * |SupplicantStatusCode.FAILURE_IFACE_DISABLED| */ - setPowerSave(bool enable) generates (SupplicantStatus status); + setPowerSave(string groupIfName, bool enable) + generates (SupplicantStatus status); /** * Initiate a P2P service discovery with an optional timeout. @@ -192,11 +201,11 @@ interface ISupplicantP2pIface extends ISupplicantIface { */ connect(MacAddress peerAddress, WpsProvisionMethod provisionMethod, - vec preSelectedPin, + string preSelectedPin, bool joinExistingGroup, bool persistent, uint32_t goIntent) - generates (SupplicantStatus status, vec generatedPin); + generates (SupplicantStatus status, string generatedPin); /** * Cancel an ongoing P2P group formation and joining-a-group related @@ -358,6 +367,21 @@ interface ISupplicantP2pIface extends ISupplicantIface { generates (SupplicantStatus status); /** + * Set P2P disallowed frequency ranges. + * + * Specify ranges of frequencies that are disallowed for any p2p operations. + + * @param ranges List of ranges which needs to be disallowed. + * @return status Status of the operation. + * Possible status codes: + * |SupplicantStatusCode.SUCCESS|, + * |SupplicantStatusCode.FAILURE_UNKNOWN|, + * |SupplicantStatusCode.FAILURE_IFACE_INVALID| + */ + setDisallowedFrequencies(vec ranges) + generates (SupplicantStatus status); + + /** * Gets the operational SSID of the device. * * @param peerAddress MAC address of the peer. -- 2.11.0