summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Espy <espy@canonical.com>2016-06-16 15:07:32 -0400
committerThomas Haller <thaller@redhat.com>2016-06-25 10:31:38 +0200
commiteed8fd2e43d244caa856d9993e750ff19ba62fd7 (patch)
tree8fbfd6f387b05bb9bb0b852007a9dcf7c9f5beff
parent66715515dc0ff0d4f95c86d636009e5999fba0ed (diff)
wifi: clear WiFi requested_scan if suppl goes INACTIVE
It's possible for wpa_supplicant to transition to INACTIVE state with an outstanding requested_scan pending. This can lead to a stall condition where scanning no longer occurs. [thaller@redhat.com: added break statement to avoid fall-through] https://mail.gnome.org/archives/networkmanager-list/2016-June/msg00116.html
-rw-r--r--src/devices/wifi/nm-device-wifi.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/devices/wifi/nm-device-wifi.c b/src/devices/wifi/nm-device-wifi.c
index a88d6ebdb0..4f04693688 100644
--- a/src/devices/wifi/nm-device-wifi.c
+++ b/src/devices/wifi/nm-device-wifi.c
@@ -1954,6 +1954,11 @@ supplicant_iface_state_cb (NMSupplicantInterface *iface,
else
_LOGI (LOGD_DEVICE | LOGD_WIFI, "supplicant interface keeps failing, giving up");
break;
+ case NM_SUPPLICANT_INTERFACE_STATE_INACTIVE:
+ priv->requested_scan = FALSE;
+ nm_clear_g_source (&priv->pending_scan_id);
+ request_wireless_scan (self, NULL);
+ break;
default:
break;
}