This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit e9ba55818fa0d1ebbd934aeb29577abf2cbf661e
Author: liqinhui <[email protected]>
AuthorDate: Thu Dec 28 15:36:32 2023 +0800

    wifisim:Modify the down operation logic of the wlan interface.
    
    Align with the linux ifconfig down behavior.
    
    Signed-off-by: liqinhui <[email protected]>
---
 drivers/net/wifi_sim.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wifi_sim.c b/drivers/net/wifi_sim.c
index ec7f2609c6..25d2b52656 100644
--- a/drivers/net/wifi_sim.c
+++ b/drivers/net/wifi_sim.c
@@ -899,7 +899,6 @@ error:
 
 static int wifidriver_start_disconnect(FAR struct wifi_sim_s *wifidev)
 {
-  int ret;
   union iwreq_data wrqu;
 
   switch (wifidev->mode)
@@ -912,12 +911,13 @@ static int wifidriver_start_disconnect(FAR struct 
wifi_sim_s *wifidev)
 
               free(wifidev->connected_ap);
 
-              netdev_lower_carrier_off(wifidev->lower);
               memset(&wrqu, 0, sizeof(wrqu));
               wrqu.ap_addr.sa_family = ARPHRD_ETHER;
               wifi_send_event(wifidev, SIOCGIWAP, &wrqu);
             }
 
+          netdev_lower_carrier_off(wifidev->lower);
+
           if (wifidev->psk_flag == 0)
             {
               memset(wifidev->password, 0, sizeof(wifidev->password));
@@ -925,17 +925,15 @@ static int wifidriver_start_disconnect(FAR struct 
wifi_sim_s *wifidev)
             }
 
           wifidev->state = WLAN_STA_STATE_INIT;
-          ret            = OK;
         }
         break;
 
       case IW_MODE_MASTER:
       default:
-        ret = -ENOSYS;
         break;
     }
 
-  return ret;
+  return OK;
 }
 
 static int wifidriver_get_mode(FAR struct wifi_sim_s *wifidev,

Reply via email to