summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPurushottam Kushwaha <pkushwah@codeaurora.org>2017-07-12 11:41:06 +0530
committerRashed Abdel-Tawab <rashed@linux.com>2017-10-28 18:08:14 -0700
commit945b9ebd6f18070c21c1131acf4f7374cc795056 (patch)
tree1b7adf2ceb13a976cd31f05531ff8be85e99903e
parent39d5d150d9ebbc71a6cdc8a06f8c8e646806bf04 (diff)
downloadandroid_hardware_interfaces-945b9ebd6f18070c21c1131acf4f7374cc795056.tar.gz
android_hardware_interfaces-945b9ebd6f18070c21c1131acf4f7374cc795056.tar.bz2
android_hardware_interfaces-945b9ebd6f18070c21c1131acf4f7374cc795056.zip
wifi: Handle errors other than wifi_error enum.
wifi_error enum has limited set of errors defined. Netlink command may return any linux error code. In cases where netlink returns errors other than wifi_error enum, createWifiStatusFromLegacyError function is not returning any error because of missing default case in switch statement, which leads to a crash. This commit adds default case to handle undefined wifi_error(s) in default case. CRs-Fixed: 2074510 Change-Id: Ieba8661ba6019de62269db6f04aef11056f693d2
-rw-r--r--wifi/1.1/default/wifi_status_util.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/wifi/1.1/default/wifi_status_util.cpp b/wifi/1.1/default/wifi_status_util.cpp
index 3a85e0998..26dd5a5de 100644
--- a/wifi/1.1/default/wifi_status_util.cpp
+++ b/wifi/1.1/default/wifi_status_util.cpp
@@ -92,6 +92,10 @@ WifiStatus createWifiStatusFromLegacyError(legacy_hal::wifi_error error,
case legacy_hal::WIFI_ERROR_UNKNOWN:
return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN, "unknown");
+ default:
+ const std::string errStr = "errno: " + std::to_string(error)
+ + " (" + strerror(error) + ")";
+ return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN, errStr);
}
}