From afc8f53fd3f4a4cf1f337726e345b43a2c71fb30 Mon Sep 17 00:00:00 2001 From: Denis Kenzior Date: Mon, 13 Nov 2023 21:15:59 -0600 Subject: [PATCH] netdev: Use CMD_DISCONNECT if OCI fails If netdev_get_oci fails, a goto deauth is invoked in order to terminate the current connection and return an error to the caller. Unfortunately the deauth label builds CMD_DEAUTHENTICATE in order to terminate the connection. This was fine because it used to handle authentication protocols that ran over CMD_AUTHENTICATE and CMD_ASSOCIATE. However, OCI can also be used on FullMAC hardware that does not support them. Use CMD_DISCONNECT instead which works everywhere. Fixes: 06482b811626 ("netdev: Obtain operating channel info") --- src/netdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/netdev.c b/src/netdev.c index 72876f3a..ebb93a74 100644 --- a/src/netdev.c +++ b/src/netdev.c @@ -2989,7 +2989,7 @@ error: deauth: netdev->result = NETDEV_RESULT_ASSOCIATION_FAILED; netdev->last_code = MMPDU_STATUS_CODE_UNSPECIFIED; - msg = netdev_build_cmd_deauthenticate(netdev, + msg = netdev_build_cmd_disconnect(netdev, MMPDU_REASON_CODE_UNSPECIFIED); netdev->disconnect_cmd_id = l_genl_family_send(nl80211, msg,