From b0b13eab17ba781d417ad25bc7166410adbae2c6 Mon Sep 17 00:00:00 2001 From: Ningyuan Wang Date: Thu, 1 Jun 2017 15:43:09 -0700 Subject: Improve logging for supplicant config file Supplicant config could be in either /system or /vendor, we should only log error if we can't find it in both places. Bug: 62268780 Test: compile, unit tests, manual test Change-Id: I5a66ef27385aee79f3ec6fdcaafc46c8cda793d8 --- libwifi_system/supplicant_manager.cpp | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/libwifi_system/supplicant_manager.cpp b/libwifi_system/supplicant_manager.cpp index d115dc1e7..28010ec8d 100644 --- a/libwifi_system/supplicant_manager.cpp +++ b/libwifi_system/supplicant_manager.cpp @@ -67,16 +67,22 @@ int ensure_config_file_exists(const char* config_file) { return false; } - templatePath = std::string("/system") + std::string(kSupplicantConfigTemplatePath); - srcfd = TEMP_FAILURE_RETRY(open(templatePath.c_str(), O_RDONLY)); + std::string configPathSystem = + std::string("/system") + std::string(kSupplicantConfigTemplatePath); + std::string configPathVendor = + std::string("/vendor") + std::string(kSupplicantConfigTemplatePath); + srcfd = TEMP_FAILURE_RETRY(open(configPathSystem.c_str(), O_RDONLY)); + templatePath = configPathSystem; if (srcfd < 0) { - LOG(ERROR) << "Cannot open \"" << templatePath << "\": " - << strerror(errno); - templatePath = std::string("/vendor") + std::string(kSupplicantConfigTemplatePath); - srcfd = TEMP_FAILURE_RETRY(open(templatePath.c_str(), O_RDONLY)); + int errnoSystem = errno; + srcfd = TEMP_FAILURE_RETRY(open(configPathVendor.c_str(), O_RDONLY)); + templatePath = configPathVendor; if (srcfd < 0) { - LOG(ERROR) << "Cannot open \"" << templatePath << "\": " - << strerror(errno); + int errnoVendor = errno; + LOG(ERROR) << "Cannot open \"" << configPathSystem << "\": " + << strerror(errnoSystem); + LOG(ERROR) << "Cannot open \"" << configPathVendor << "\": " + << strerror(errnoVendor); return false; } } -- cgit v1.2.3