Merge "wifi: Send MBO-OCE association rejection info"
diff --git a/hostapd/Android.mk b/hostapd/Android.mk
index 91cdefe..555cd16 100644
--- a/hostapd/Android.mk
+++ b/hostapd/Android.mk
@@ -26,9 +26,6 @@
 
 L_CFLAGS += -Wall -Werror
 
-# TODO: move off readdir_r upstream, pull fix back (http://b/72326431).
-L_CFLAGS += -Wno-error-deprecated-declarations
-
 # Disable unused parameter warnings
 L_CFLAGS += -Wno-unused-parameter
 
diff --git a/src/drivers/driver_nl80211_event.c b/src/drivers/driver_nl80211_event.c
index 680d426..6e73b90 100644
--- a/src/drivers/driver_nl80211_event.c
+++ b/src/drivers/driver_nl80211_event.c
@@ -474,6 +474,13 @@
 		event.assoc_info.fils_pmkid = nla_data(fils_pmkid);
 
 	wpa_supplicant_event(drv->ctx, EVENT_ASSOC, &event);
+
+	/* Avoid a race condition by stopping to ignore any following
+	 * disconnection events now that the driver has indicated it is
+	 * connected since that connection could have been triggered by a roam
+	 * operation that happened in parallel with the disconnection request.
+	 */
+	drv->ignore_next_local_disconnect = 0;
 }
 
 
diff --git a/wpa_supplicant/Android.mk b/wpa_supplicant/Android.mk
index 09b8a6d..957fb92 100644
--- a/wpa_supplicant/Android.mk
+++ b/wpa_supplicant/Android.mk
@@ -41,9 +41,6 @@
 # Disable sign compare warnings
 L_CFLAGS += -Wno-sign-compare
 
-# TODO: move off readdir_r upstream, pull fix back (http://b/72326431).
-L_CFLAGS += -Wno-error-deprecated-declarations
-
 # Disable unused function warnings
 L_CFLAGS += -Wno-unused-function
 
diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c
index 01f1ecd..dda958b 100644
--- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c
@@ -4749,6 +4749,11 @@
 			break;
 		}
 #endif /* CONFIG_TESTING_OPTIONS */
+		if (wpa_s->disconnected) {
+			wpa_printf(MSG_INFO,
+				   "Ignore unexpected EVENT_ASSOC in disconnected state");
+			break;
+		}
 		wpa_supplicant_event_assoc(wpa_s, data);
 		wpa_s->assoc_status_code = WLAN_STATUS_SUCCESS;
 		if (data &&