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
diff --git a/wpa_supplicant/hidl/iface_config_utils.cpp b/wpa_supplicant/hidl/iface_config_utils.cpp
index b6bd3d8..7dc5a6c 100644
--- a/wpa_supplicant/hidl/iface_config_utils.cpp
+++ b/wpa_supplicant/hidl/iface_config_utils.cpp
@@ -62,7 +62,10 @@
{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 += " ";
}