wifi: add new status code for unsupported cases
Bug: 160642415
Test: atest VtsHalWifiSupplicantV1_4TargetTest \
VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: I6eac4646df4a3e595f5dd0c359660420b71d444c
diff --git a/wifi/supplicant/1.4/ISupplicantP2pIface.hal b/wifi/supplicant/1.4/ISupplicantP2pIface.hal
index 7c41d1c..65c761d 100644
--- a/wifi/supplicant/1.4/ISupplicantP2pIface.hal
+++ b/wifi/supplicant/1.4/ISupplicantP2pIface.hal
@@ -17,7 +17,6 @@
package android.hardware.wifi.supplicant@1.4;
import @1.2::ISupplicantP2pIface;
-import @1.0::SupplicantStatus;
/**
* Interface exposed by the supplicant for each P2P mode network
diff --git a/wifi/supplicant/1.4/ISupplicantStaIface.hal b/wifi/supplicant/1.4/ISupplicantStaIface.hal
index 68fd01d..096d8d5 100644
--- a/wifi/supplicant/1.4/ISupplicantStaIface.hal
+++ b/wifi/supplicant/1.4/ISupplicantStaIface.hal
@@ -16,7 +16,6 @@
package android.hardware.wifi.supplicant@1.4;
-import @1.0::SupplicantStatus;
import ISupplicantStaIfaceCallback;
import @1.3::ISupplicantStaIface;
diff --git a/wifi/supplicant/1.4/ISupplicantStaNetwork.hal b/wifi/supplicant/1.4/ISupplicantStaNetwork.hal
index 0cc62c0..4295879 100644
--- a/wifi/supplicant/1.4/ISupplicantStaNetwork.hal
+++ b/wifi/supplicant/1.4/ISupplicantStaNetwork.hal
@@ -18,7 +18,6 @@
import @1.3::ISupplicantStaNetwork;
import @1.4::ISupplicantStaNetworkCallback;
-import @1.0::SupplicantStatus;
/**
* Interface exposed by the supplicant for each station mode network
diff --git a/wifi/supplicant/1.4/types.hal b/wifi/supplicant/1.4/types.hal
index 79e367a..b4b6a36 100644
--- a/wifi/supplicant/1.4/types.hal
+++ b/wifi/supplicant/1.4/types.hal
@@ -16,6 +16,7 @@
package android.hardware.wifi.supplicant@1.4;
+import @1.0::SupplicantStatusCode;
import @1.3::ConnectionCapabilities;
/**
@@ -50,3 +51,23 @@
*/
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;
+};
diff --git a/wifi/supplicant/1.4/vts/functional/supplicant_p2p_iface_hidl_test.cpp b/wifi/supplicant/1.4/vts/functional/supplicant_p2p_iface_hidl_test.cpp
index 17e1b9f..9185279 100644
--- a/wifi/supplicant/1.4/vts/functional/supplicant_p2p_iface_hidl_test.cpp
+++ b/wifi/supplicant/1.4/vts/functional/supplicant_p2p_iface_hidl_test.cpp
@@ -33,6 +33,11 @@
using ::android::hardware::wifi::supplicant::V1_0::SupplicantStatusCode;
using ::android::hardware::wifi::supplicant::V1_4::ISupplicantP2pIface;
+using SupplicantStatusV1_4 =
+ ::android::hardware::wifi::supplicant::V1_4::SupplicantStatus;
+using SupplicantStatusCodeV1_4 =
+ ::android::hardware::wifi::supplicant::V1_4::SupplicantStatusCode;
+
class SupplicantP2pIfaceHidlTest : public SupplicantHidlTestBaseV1_4 {
public:
virtual void SetUp() override {
@@ -50,18 +55,18 @@
* SetGetEdmg
*/
TEST_P(SupplicantP2pIfaceHidlTest, SetGetEdmg) {
- p2p_iface_->setEdmg(true, [&](const SupplicantStatus& status) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ p2p_iface_->setEdmg(true, [&](const SupplicantStatusV1_4& status) {
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
});
- p2p_iface_->getEdmg([&](const SupplicantStatus& status, bool enable) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ p2p_iface_->getEdmg([&](const SupplicantStatusV1_4& status, bool enable) {
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
EXPECT_EQ(true, enable);
});
- p2p_iface_->setEdmg(false, [&](const SupplicantStatus& status) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ p2p_iface_->setEdmg(false, [&](const SupplicantStatusV1_4& status) {
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
});
- p2p_iface_->getEdmg([&](const SupplicantStatus& status, bool enable) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ p2p_iface_->getEdmg([&](const SupplicantStatusV1_4& status, bool enable) {
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
EXPECT_EQ(false, enable);
});
}
diff --git a/wifi/supplicant/1.4/vts/functional/supplicant_sta_iface_hidl_test.cpp b/wifi/supplicant/1.4/vts/functional/supplicant_sta_iface_hidl_test.cpp
index fbf6445..88396b6 100644
--- a/wifi/supplicant/1.4/vts/functional/supplicant_sta_iface_hidl_test.cpp
+++ b/wifi/supplicant/1.4/vts/functional/supplicant_sta_iface_hidl_test.cpp
@@ -50,6 +50,11 @@
using ::android::hardware::wifi::supplicant::V1_4::ISupplicantStaIface;
using ::android::hardware::wifi::supplicant::V1_4::ISupplicantStaIfaceCallback;
+using SupplicantStatusV1_4 =
+ ::android::hardware::wifi::supplicant::V1_4::SupplicantStatus;
+using SupplicantStatusCodeV1_4 =
+ ::android::hardware::wifi::supplicant::V1_4::SupplicantStatusCode;
+
class SupplicantStaIfaceHidlTest : public SupplicantHidlTestBaseV1_4 {
public:
virtual void SetUp() override {
@@ -195,9 +200,9 @@
*/
TEST_P(SupplicantStaIfaceHidlTest, GetConnectionCapabilities) {
sta_iface_->getConnectionCapabilities_1_4(
- [&](const SupplicantStatus& status,
+ [&](const SupplicantStatusV1_4& status,
ConnectionCapabilities /* capabilities */) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
});
}
@@ -206,8 +211,8 @@
*/
TEST_P(SupplicantStaIfaceHidlTest, RegisterCallback_1_4) {
sta_iface_->registerCallback_1_4(
- new IfaceCallback(), [](const SupplicantStatus& status) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ new IfaceCallback(), [](const SupplicantStatusV1_4& status) {
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
});
}
diff --git a/wifi/supplicant/1.4/vts/functional/supplicant_sta_network_hidl_test.cpp b/wifi/supplicant/1.4/vts/functional/supplicant_sta_network_hidl_test.cpp
index aaaccfc..86314e2 100644
--- a/wifi/supplicant/1.4/vts/functional/supplicant_sta_network_hidl_test.cpp
+++ b/wifi/supplicant/1.4/vts/functional/supplicant_sta_network_hidl_test.cpp
@@ -42,6 +42,10 @@
using ::android::hardware::wifi::supplicant::V1_4::
ISupplicantStaNetworkCallback;
using ::android::hardware::wifi::V1_0::IWifi;
+using SupplicantStatusV1_4 =
+ ::android::hardware::wifi::supplicant::V1_4::SupplicantStatus;
+using SupplicantStatusCodeV1_4 =
+ ::android::hardware::wifi::supplicant::V1_4::SupplicantStatusCode;
class SupplicantStaNetworkHidlTest : public SupplicantHidlTestBaseV1_4 {
public:
@@ -85,8 +89,8 @@
*/
TEST_P(SupplicantStaNetworkHidlTest, RegisterCallback_1_4) {
v1_4->registerCallback_1_4(
- new NetworkCallback(), [](const SupplicantStatus& status) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ new NetworkCallback(), [](const SupplicantStatusV1_4& status) {
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
});
}
@@ -94,11 +98,11 @@
* enable SAE H2E (Hash-to-Element) only mode
*/
TEST_P(SupplicantStaNetworkHidlTest, EnableSaeH2eOnlyMode) {
- v1_4->enableSaeH2eOnlyMode(true, [&](const SupplicantStatus& status) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ v1_4->enableSaeH2eOnlyMode(true, [&](const SupplicantStatusV1_4& status) {
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
});
- v1_4->enableSaeH2eOnlyMode(false, [&](const SupplicantStatus& status) {
- EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code);
+ v1_4->enableSaeH2eOnlyMode(false, [&](const SupplicantStatusV1_4& status) {
+ EXPECT_EQ(SupplicantStatusCodeV1_4::SUCCESS, status.code);
});
}