Ensure wireless device struct is removed, when it fails to be set up,
due to a invalid configuration, hence enabling the wireless dev
to be set up again, when a new valid configuration is set.

Signed-off-by: Eduardo Abinader <eduardo.abina...@riverbed.com>
---
 wireless.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/wireless.c b/wireless.c
index 34dd328..bc31d4a 100644
--- a/wireless.c
+++ b/wireless.c
@@ -336,6 +336,10 @@ wireless_device_mark_down(struct wireless_device *wdev)
 
        wireless_process_kill_all(wdev, SIGTERM, true);
 
+       if (wdev->state == IFS_SETUP && !wdev->autostart) {
+               wdev->config_state = IFC_REMOVE;
+       }
+
        wdev->cancel = false;
        wdev->state = IFS_DOWN;
        wireless_device_free_state(wdev);
-- 
2.5.0

_______________________________________________
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev

Reply via email to