aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoshan Pius <rpius@google.com>2017-03-31 08:49:38 -0700
committerRoshan Pius <rpius@google.com>2017-04-01 00:18:32 +0000
commita4f38dba0146b8057c2a403991e099e0ad4ed62d (patch)
tree845d95687e2843cbabe3147c708c3d6d8feb2537
parent47af5b8074d665e06a92e0f26bb2e76230574064 (diff)
downloadwpa_supplicant_8-a4f38dba0146b8057c2a403991e099e0ad4ed62d.tar.gz
wpa_supplicant(hidl): Fix Wps mask conversion
These flags have more than 1 bit set in them, so modify the mask to flag conversion. Bug: 36805671 Test: Manual tests Change-Id: I5374b1db67e169643f7c5d84afba9abe2548a152
-rw-r--r--wpa_supplicant/hidl/iface_config_utils.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/wpa_supplicant/hidl/iface_config_utils.cpp b/wpa_supplicant/hidl/iface_config_utils.cpp
index b6bd3d8d..7dc5a6c7 100644
--- a/wpa_supplicant/hidl/iface_config_utils.cpp
+++ b/wpa_supplicant/hidl/iface_config_utils.cpp
@@ -62,7 +62,10 @@ std::string convertWpsConfigMethodsMaskToString(uint16_t config_methods)
{WpsConfigMethods::P2PS, "p2ps"},
{WpsConfigMethods::VIRT_DISPLAY, "virtual_display"},
{WpsConfigMethods::PHY_DISPLAY, "physical_display"}}) {
- if (config_methods & flag_and_name.first) {
+ const auto flag =
+ static_cast<std::underlying_type<WpsConfigMethods>::type>(
+ flag_and_name.first);
+ if ((config_methods & flag) == flag) {
config_methods_str += flag_and_name.second;
config_methods_str += " ";
}