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
diff --git a/wifi/supplicant/1.0/ISupplicantP2pIface.hal b/wifi/supplicant/1.0/ISupplicantP2pIface.hal
index 48a4f5b..0cdac2d 100644
--- a/wifi/supplicant/1.0/ISupplicantP2pIface.hal
+++ b/wifi/supplicant/1.0/ISupplicantP2pIface.hal
@@ -37,11 +37,7 @@
/**
* 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 @@
};
/**
+ * 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 @@
* |SupplicantStatusCode.FAILURE_UNKNOWN|,
* |SupplicantStatusCode.FAILURE_IFACE_INVALID|
*/
- setSsidPostfix(string postfix) generates (SupplicantStatus status);
+ setSsidPostfix(vec<uint8_t> postfix) generates (SupplicantStatus status);
/**
* Set the Maximum idle time in seconds for P2P groups.
@@ -106,6 +111,7 @@
* 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 @@
* |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 @@
* |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 @@
*/
connect(MacAddress peerAddress,
WpsProvisionMethod provisionMethod,
- vec<uint8_t> preSelectedPin,
+ string preSelectedPin,
bool joinExistingGroup,
bool persistent,
uint32_t goIntent)
- generates (SupplicantStatus status, vec<uint8_t> generatedPin);
+ generates (SupplicantStatus status, string generatedPin);
/**
* Cancel an ongoing P2P group formation and joining-a-group related
@@ -358,6 +367,21 @@
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<FreqRange> ranges)
+ generates (SupplicantStatus status);
+
+ /**
* Gets the operational SSID of the device.
*
* @param peerAddress MAC address of the peer.