Wifi: Handle invalid error values from vendor HAL
The HAL shim (default implementation) expects all vendor hal functions
to return valid wifi_error values. In case the vendor hal returning a
value outside this range of values, the HAL service crashes.
This commit is to handle this type of error by defaulting to
WIFI_ERROR_UNKNOWN.
Bug: 143317834
Test: Manual
Test: Pass an invalid error code, and make sure it is properly handled
Change-Id: Ifaba8a7e4e866a2be154c9dcaeb521cd758010ee
diff --git a/wifi/1.4/default/wifi_status_util.cpp b/wifi/1.4/default/wifi_status_util.cpp
index 597c04b..8ceb926 100644
--- a/wifi/1.4/default/wifi_status_util.cpp
+++ b/wifi/1.4/default/wifi_status_util.cpp
@@ -46,6 +46,8 @@
return "BUSY";
case legacy_hal::WIFI_ERROR_UNKNOWN:
return "UNKNOWN";
+ default:
+ return "UNKNOWN ERROR";
}
}
@@ -92,6 +94,10 @@
case legacy_hal::WIFI_ERROR_UNKNOWN:
return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN, "unknown");
+
+ default:
+ return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN,
+ "unknown error");
}
}