From patchwork Mon Aug 8 18:22:56 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Prestwood X-Patchwork-Id: 12939002 Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C50633D88 for ; Mon, 8 Aug 2022 18:23:01 +0000 (UTC) Received: by mail-pl1-f172.google.com with SMTP id p8so9239449plq.13 for ; Mon, 08 Aug 2022 11:23:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc; bh=npPadd1c+74e9zEQGbL298nkfqh6ux7bBWkepYYATpM=; b=ZgF04caAOPbofO1rsMc/fa4qZp+DqcZEkZX4SdG7GkHsHcafUY8rwwWMS14vHJruMk QHuwrMyl8Jj4ryUX5b4KhPawSsbL1LRqSzSAu7ezS/BZ4nFbg65xeRlZmyhRfyq3Bukx uWLIvt2m5msILqz8XTI69H4edmO3tGJqDNq/ooXptnnKpm2lZ14NJx1Zvq+smUFY7Sgs YjELSZU0vWrCRFI0wYm4xjYeXUM3HOQgnh2pfFkbbBcnqRRR4ZVI88oOkRqklC3pgdXk O65B/UqaKKYNNjB2LlS8Dazr0WDM+nCKsiGb0HxlccfIpmkaimZnkB1I0yR0zi4qJGkE DloQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc; bh=npPadd1c+74e9zEQGbL298nkfqh6ux7bBWkepYYATpM=; b=ojNxkHws5DHksNTmoiFtqj7KTJ69IRpV1BMIp5VHLxnu/hu7pwBX0DHWAZqqP3TGNV JrDllSiDgjoi+X84W3kbHRA0wYiCFe2BQWr66Gtt3Xjgzpt75GoreLdGXBi3Kh7yuPEi Icg1h9HPvF+2fHkeEpJvEvrutTLaZf1cF3vaTKtisyBKQI9Rry3mMPadDMRED0lSOfig dd1uogxFelTkq68TcUXrHr7ura5UicU8VhoesshXeIwi0hQT8BguzLkL2H0GIe6/ZjxM dzJ1vEx5xfO3M0Zmpp74x+NBqZztLPxhInvcqshq9FoDeu8h4RpE/xZgCW9YHfSMP91e f6xg== X-Gm-Message-State: ACgBeo3VJcFhbCLwuOs+50yUnlMfvLxeUEWanrnYe8LRKkjFJKsAQu1K 5wKOU2rTj7ipDCj1n8J2JA6uBNjFwr4= X-Google-Smtp-Source: AA6agR4koGuJtTFrkmnl+v3o6AWC+29apOyh1FsrW349pBtNqOlbeqhTZulBsN4jfYt1VnbB73h8lQ== X-Received: by 2002:a17:902:a5c5:b0:16f:1e31:daab with SMTP id t5-20020a170902a5c500b0016f1e31daabmr19657390plq.82.1659982980995; Mon, 08 Aug 2022 11:23:00 -0700 (PDT) Received: from jprestwo-xps.none ([50.39.168.145]) by smtp.gmail.com with ESMTPSA id 129-20020a620587000000b0052516db7123sm8972197pff.35.2022.08.08.11.23.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Aug 2022 11:23:00 -0700 (PDT) From: James Prestwood To: iwd@lists.linux.dev Cc: James Prestwood Subject: [PATCH v2 1/4] handshake: add force_default_owe_group flag Date: Mon, 8 Aug 2022 11:22:56 -0700 Message-Id: <20220808182259.19402-1-prestwoj@gmail.com> X-Mailer: git-send-email 2.34.3 Precedence: bulk X-Mailing-List: iwd@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Indicates the OWE SM should only use the default group --- src/handshake.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/handshake.h b/src/handshake.h index 7f597b06..f2321634 100644 --- a/src/handshake.h +++ b/src/handshake.h @@ -137,6 +137,7 @@ struct handshake_state { bool authenticator_ocvc : 1; bool supplicant_ocvc : 1; bool ext_key_id_capable : 1; + bool force_default_owe_group : 1; uint8_t ssid[32]; size_t ssid_len; char *passphrase; From patchwork Mon Aug 8 18:22:57 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Prestwood X-Patchwork-Id: 12939003 Received: from mail-pf1-f171.google.com (mail-pf1-f171.google.com [209.85.210.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 182A43D9C for ; Mon, 8 Aug 2022 18:23:02 +0000 (UTC) Received: by mail-pf1-f171.google.com with SMTP id h28so8773049pfq.11 for ; Mon, 08 Aug 2022 11:23:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc; bh=QPxobyoSPXi7wu+uxSJ38AV7JCzaebxdelL8vx0niH8=; b=dXqTKyB7n2lgHFxvfcGNTvLcDT5whS58ThPZ3zVOVAtKZIchtbAFDmuPMhIYwmH4YJ qQ49LoFjHtq5TBpR+4XyqJ2IRbv5WBfjWux2vCF7RgeSLqkX1tArQxBNmUmkmyrRQwry DyY13LQYMlIkofeSPJp45Meb5b1Zm3zGDiI80yHg8iueBJPqeSTGpCeLa4riG5OpBF8n 4+SVpatoZWfJEYFFPP4e+ieOH8ljGxJsKR8z1Z/KgVLCwLbUF118mfLvQmfXKChocLaH MNM5U0CMWRwhqtK/CX9h2NzAYv/1VXVkWGTCTFE8nuu3YhHR0swf64H4HIPyB1klRLjS zOJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc; bh=QPxobyoSPXi7wu+uxSJ38AV7JCzaebxdelL8vx0niH8=; b=QrDOdmtqb2LzUk9K7tFgTT9Vtd/mb5Wc/xQcG0OOpbKNL5Ww6LDZtfch23DdsrZtog L+RNC5tWzcotMppN68OnhcqVK/p3qgS6QBsM1Ipax4Zos1P6EVfi98s+3aGSAtXGV/xY NQVNoPnpxh6AyoSYi0/QE+XpYso2Ct3NW2SNMPnR2dvIpbdUJHS8X+xuYoqoDw1Nuyr2 KtF03mCGv5Mcv6qfDxdWABhadgyHyDjUW1FYalmq45NkULp+NiN6LIg+ZEqeQhB/WBj8 51zMYZLqeScYF2jG22m45MuUabZlWnG1p34NiOSLOTya1pqFrmH6Te4+tbAhgmpekLoW bXPw== X-Gm-Message-State: ACgBeo0ZCP23ocy1ymLN3VL5sNlZh/xpC9+ZwUV/V8TgbvFET9gqxt2t DeRP9sSdER9Q6DuagqLg4A48Vcd2drs= X-Google-Smtp-Source: AA6agR7jIRENUBsWqoEY3mLJSfGKG2RzDw8/swyHAQpGdOOSaap4qN7rHyljGyv0qnkVIFqexYYUcA== X-Received: by 2002:a05:6a00:1a0b:b0:52f:3789:9604 with SMTP id g11-20020a056a001a0b00b0052f37899604mr6752856pfv.61.1659982981441; Mon, 08 Aug 2022 11:23:01 -0700 (PDT) Received: from jprestwo-xps.none ([50.39.168.145]) by smtp.gmail.com with ESMTPSA id 129-20020a620587000000b0052516db7123sm8972197pff.35.2022.08.08.11.23.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Aug 2022 11:23:01 -0700 (PDT) From: James Prestwood To: iwd@lists.linux.dev Cc: James Prestwood Subject: [PATCH v2 2/4] owe: allow OWE to force group 19 Date: Mon, 8 Aug 2022 11:22:57 -0700 Message-Id: <20220808182259.19402-2-prestwoj@gmail.com> X-Mailer: git-send-email 2.34.3 In-Reply-To: <20220808182259.19402-1-prestwoj@gmail.com> References: <20220808182259.19402-1-prestwoj@gmail.com> Precedence: bulk X-Mailing-List: iwd@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Similarly with SAE, some AP's either don't do group negotiations right, or specifically with OWE, incorrectly derive the PTK unless group 19 is used. --- src/owe.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) v2: * Remove extra flag from owe_sm since this is already in handshake_state diff --git a/src/owe.c b/src/owe.c index eed3e266..faa4e17d 100644 --- a/src/owe.c +++ b/src/owe.c @@ -45,6 +45,20 @@ struct owe_sm { static bool owe_reset(struct owe_sm *owe) { + if (owe->hs->force_default_owe_group) { + if (owe->retry != 0) { + l_warn("Forced default OWE group but was rejected!"); + return false; + } + + l_debug("Forcing default OWE group 19"); + + owe->retry++; + owe->group = 19; + + goto get_curve; + } + /* * Reset OWE with a different curve group and generate a new key pair */ @@ -52,6 +66,8 @@ static bool owe_reset(struct owe_sm *owe) return false; owe->group = owe->ecc_groups[owe->retry]; + +get_curve: owe->curve = l_ecc_curve_from_ike_group(owe->group); if (owe->private) From patchwork Mon Aug 8 18:22:58 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Prestwood X-Patchwork-Id: 12939005 Received: from mail-pj1-f42.google.com (mail-pj1-f42.google.com [209.85.216.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D63D93D9D for ; Mon, 8 Aug 2022 18:23:02 +0000 (UTC) Received: by mail-pj1-f42.google.com with SMTP id q9-20020a17090a2dc900b001f58bcaca95so8575730pjm.3 for ; Mon, 08 Aug 2022 11:23:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc; bh=opHczMfeZdStThwEfUauOQjRo99oUUDw5Ktzg8xvm2I=; b=ZZkarzU6bgjm8MLed/sLaKu8xOvuu1oKJj4R+W+dDFnzla9NgyCdPKEh5Jhre8ayd4 nBecbutCugI+qJFDwvSbshy+LCdfXixKI1uEYp5EkHWFPzKjQb/SggMagCKhdzoG0Pzx hnOcUp0EU1vmqe0iAJ+yBbuUy9jjU3Dv2IwNnPPSYOjfcmDthLq3gYG3OBSotMilDkbH Cg+DPELO1d2PDmBrEoMEFpeMr8Ms5nHxlj/jSKDPwARt1CfmkBNXFqANcFXtTxI6wWu2 kTKf7kz0jpIMBc0OpCfFztQWX+uH4Qr9Anly02eHkzZsrWKrBxOROAfHc6AfzS/wOMA3 19mw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc; bh=opHczMfeZdStThwEfUauOQjRo99oUUDw5Ktzg8xvm2I=; b=jmbSCrzP5OJvcM2rStnUR3nIlQijdEqvRXzNjddjbZlDmj9OohIxpbODMmkiHLzaES SUs38aSasTXWpmUA+fALyBDtoS7ZrvWl4JWuZ5bgLXNAYnDJo9ixQ0e1l9BlFK9JkrkE 5v2jP6ddkplnUUAFCBWrRtO5r4xVJdy3bYALPmdf+gODeMTtS+AgysJHj6qZxs5B+QeN kucwROKsadbIrQAyJIffF0iW60+a5jgsY5Otq5/NdfmiQ1wPDOCl+l/qTiB1baahTCOU ujkd9viuL9xPZNWPTVgYW/7qzugGHgeh1bu2+QCHwae3q8XuNoWoP5AOmu0cRMm0KEL0 DWZg== X-Gm-Message-State: ACgBeo1BuwStfQo9qyIdSTM8HgJ/N8y7RASe7ggtcYwsMDvVQ2bTRR95 iukf217/3GThErbfV8qI4fYGzsZLbtg= X-Google-Smtp-Source: AA6agR7HErnBaNDbKkLsYIUC76uSaML1ecsAxv3zX4o25H7ktcDNPWcc4AaiQNtJd9yDda+0IJULeQ== X-Received: by 2002:a17:902:d54b:b0:16e:ef40:7b45 with SMTP id z11-20020a170902d54b00b0016eef407b45mr19874496plf.102.1659982982117; Mon, 08 Aug 2022 11:23:02 -0700 (PDT) Received: from jprestwo-xps.none ([50.39.168.145]) by smtp.gmail.com with ESMTPSA id 129-20020a620587000000b0052516db7123sm8972197pff.35.2022.08.08.11.23.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Aug 2022 11:23:01 -0700 (PDT) From: James Prestwood To: iwd@lists.linux.dev Cc: James Prestwood Subject: [PATCH v2 3/4] network: add setter/getter/flag for forcing default OWE group Date: Mon, 8 Aug 2022 11:22:58 -0700 Message-Id: <20220808182259.19402-3-prestwoj@gmail.com> X-Mailer: git-send-email 2.34.3 In-Reply-To: <20220808182259.19402-1-prestwoj@gmail.com> References: <20220808182259.19402-1-prestwoj@gmail.com> Precedence: bulk X-Mailing-List: iwd@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 If a OWE network is buggy and requires the default group this info needs to be stored in network in order for it to set this into the handshake on future connect attempts. --- src/network.c | 14 ++++++++++++++ src/network.h | 2 ++ 2 files changed, 16 insertions(+) diff --git a/src/network.c b/src/network.c index 70cb925c..c0befa42 100644 --- a/src/network.c +++ b/src/network.c @@ -88,6 +88,7 @@ struct network { bool provisioning_hidden:1; uint8_t transition_disable; /* Temporary cache until info is set */ bool have_transition_disable:1; + bool force_default_owe_group:1; int rank; /* Holds DBus Connect() message if it comes in before ANQP finishes */ struct l_dbus_message *connect_after_anqp; @@ -525,6 +526,9 @@ int network_handshake_setup(struct network *network, struct scan_bss *bss, handshake_state_set_protocol_version(hs, eapol_proto_version); } + if (hs->akm_suite == IE_RSN_AKM_SUITE_OWE) + hs->force_default_owe_group = network->force_default_owe_group; + /* * The randomization options in the provisioning file are dependent on * main.conf: [General].AddressRandomization=network. Any other value @@ -764,6 +768,16 @@ void network_set_info(struct network *network, struct network_info *info) IWD_NETWORK_INTERFACE, "KnownNetwork"); } +void network_set_force_default_owe_group(struct network *network) +{ + network->force_default_owe_group = true; +} + +bool network_get_force_default_owe_group(struct network *network) +{ + return network->force_default_owe_group; +} + static inline bool __bss_is_sae(const struct scan_bss *bss, const struct ie_rsn_info *rsn) { diff --git a/src/network.h b/src/network.h index d69d63b0..c6b99f6c 100644 --- a/src/network.h +++ b/src/network.h @@ -58,6 +58,8 @@ void network_sync_settings(struct network *network); const struct network_info *network_get_info(const struct network *network); void network_set_info(struct network *network, struct network_info *info); +void network_set_force_default_owe_group(struct network *network); +bool network_get_force_default_owe_group(struct network *network); int network_can_connect_bss(struct network *network, const struct scan_bss *bss); From patchwork Mon Aug 8 18:22:59 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Prestwood X-Patchwork-Id: 12939004 Received: from mail-pf1-f179.google.com (mail-pf1-f179.google.com [209.85.210.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 42BA93D9E for ; Mon, 8 Aug 2022 18:23:03 +0000 (UTC) Received: by mail-pf1-f179.google.com with SMTP id b133so8794057pfb.6 for ; Mon, 08 Aug 2022 11:23:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc; bh=PRe2tqwozw0inC4CpR3PdgRYPw7XugrHXiiior1jr2A=; b=R/9wMS0ok5oGYPFPvG/B+00uXhOvk0DZWOW9WtKWvnojnHMdjI3Y8kimzOHFW/cY3S wQJglr3kvYv1S7uICO+YAgxSJkYLsAVn+Dfoz3cqrU/2nIhmmYfuFdj+xtUo0vE98wEP TtUdeRyesGFx6lZ1/v3b528po0kag24UERas7sa1C9GFxvf0XRowxht4c+ZiUQ5P9Vvx nMugzW1XcU9AVMlva1P+cIbyv9njj0nsiewHVLpJzrMhJOFX+OYx02o/tQcxjUZLsqqV Nftp35a72ukirI0EzVGEjCwc+K/6WOMuE2PeLyUc09SCPB0LsOa9hvFKMTQ6PAqss1wv hzsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc; bh=PRe2tqwozw0inC4CpR3PdgRYPw7XugrHXiiior1jr2A=; b=IBz4q/LUNE0l0ekqwzO89EgCjaSDuvgv6+4SdRorEZrV8xfTzQGO68PBuY9EpwBoQx lqj91iRmFOaOCJN6GhGu3JFm70xXhsKZ5+sOhZT83D70pnAOe9nGvBP6G0HWmbqfh9EU cm6wevY8Q0GdIjGhYJWm79hZTw0wt1IZowj3fhTsCst9KHE+q/hEdH1SNKyUeYdBaRn+ TUHctUZRw9KhqGlUme93YuvMR01NeqdAAkXIkvGW9fgdj1A5e4DxvE5La9pWx14/D88M ORsBn7m+UQ8YTRB2dsvnE8vp/00MVWA+2s887SFXCg5bCQapecGt+47wPvqAeWtkJkj1 ykwg== X-Gm-Message-State: ACgBeo3kppi1ljRZRXY6ydTf3QN/92AMh3Pveda/IWvUKpv61i0Y9b5v CnbHI3D7oXHFRfiFokRdI/JulxX4sig= X-Google-Smtp-Source: AA6agR7HlHsTD9/eqpBwJHnIaAjYKIWnLoSwiQCEL+6LsYpW7vIMDt+sijUabVOCycSqyqpKSlwqRg== X-Received: by 2002:aa7:80d0:0:b0:52d:f9c6:bb14 with SMTP id a16-20020aa780d0000000b0052df9c6bb14mr19783058pfn.57.1659982982567; Mon, 08 Aug 2022 11:23:02 -0700 (PDT) Received: from jprestwo-xps.none ([50.39.168.145]) by smtp.gmail.com with ESMTPSA id 129-20020a620587000000b0052516db7123sm8972197pff.35.2022.08.08.11.23.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Aug 2022 11:23:02 -0700 (PDT) From: James Prestwood To: iwd@lists.linux.dev Cc: James Prestwood Subject: [PATCH v2 4/4] station: re-try OWE if buggy AP is detected Date: Mon, 8 Aug 2022 11:22:59 -0700 Message-Id: <20220808182259.19402-4-prestwoj@gmail.com> X-Mailer: git-send-email 2.34.3 In-Reply-To: <20220808182259.19402-1-prestwoj@gmail.com> References: <20220808182259.19402-1-prestwoj@gmail.com> Precedence: bulk X-Mailing-List: iwd@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Some APs use an older hostapd OWE implementation which incorrectly derives the PTK. To work around this group 19 should be used for these APs. If there is a failure (reason=2) and the AKM is OWE set force default group into network and retry. If this has been done already the behavior is no different and the BSS will be blacklisted. --- src/station.c | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) v2: * Made warning print more descriptive * Just check network security rather than parse rsne diff --git a/src/station.c b/src/station.c index c5dfc48e..17a48670 100644 --- a/src/station.c +++ b/src/station.c @@ -2815,6 +2815,29 @@ static bool station_try_next_bss(struct station *station) return true; } +static bool station_retry_owe_default_group(struct station *station) +{ + /* + * Shouldn't ever get here with classic open networks so its safe to + * assume if the security is none this is an OWE network. + */ + if (network_get_security(station->connected_network) != SECURITY_NONE) + return false; + + /* If we already forced group 19, allow the BSS to be blacklisted */ + if (network_get_force_default_owe_group(station->connected_network)) + return false; + + l_warn("Failed to connect to OWE BSS "MAC" possibly because the AP is " + "incorrectly deriving the PTK, this AP should be fixed. " + "Retrying with group 19 as a workaround", + MAC_STR(station->connected_bss->addr)); + + network_set_force_default_owe_group(station->connected_network); + + return true; +} + static bool station_retry_with_reason(struct station *station, uint16_t reason_code) { @@ -2825,12 +2848,20 @@ static bool station_retry_with_reason(struct station *station, * Other reason codes can be added here if its decided we want to * fail in those cases. */ - if (reason_code == MMPDU_REASON_CODE_PREV_AUTH_NOT_VALID || - reason_code == MMPDU_REASON_CODE_IEEE8021X_FAILED) + switch (reason_code) { + case MMPDU_REASON_CODE_PREV_AUTH_NOT_VALID: + if (station_retry_owe_default_group(station)) + goto try_next; + /* fall through */ + case MMPDU_REASON_CODE_IEEE8021X_FAILED: return false; + default: + break; + } blacklist_add_bss(station->connected_bss->addr); +try_next: return station_try_next_bss(station); }