Merge "Return SupplicantStatusCode::FAILURE_UNSUPPORTED if P2P Mac Randomization is not supported in supplicant."
diff --git a/wpa_supplicant/aidl/p2p_iface.cpp b/wpa_supplicant/aidl/p2p_iface.cpp
index 06c4545..105fb8e 100644
--- a/wpa_supplicant/aidl/p2p_iface.cpp
+++ b/wpa_supplicant/aidl/p2p_iface.cpp
@@ -2018,11 +2018,16 @@
if (enable) {
wpa_s->conf->p2p_device_random_mac_addr = 1;
wpa_s->conf->p2p_interface_random_mac_addr = 1;
+ int status = wpas_p2p_mac_setup(wpa_s);
// restore config if it failed to set up MAC address.
- if (wpas_p2p_mac_setup(wpa_s) < 0) {
+ if (status < 0) {
wpa_s->conf->p2p_device_random_mac_addr = 0;
wpa_s->conf->p2p_interface_random_mac_addr = 0;
+ if (status == -ENOTSUP) {
+ return createStatusWithMsg(SupplicantStatusCode::FAILURE_UNSUPPORTED,
+ "Failed to set up MAC address, feature not supported.");
+ }
return createStatusWithMsg(SupplicantStatusCode::FAILURE_UNKNOWN,
"Failed to set up MAC address.");
}