mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00

Upstreamed patches: 020-mesh-make-forwarding-configurable.patch e6db1bc5da3fd7d5f4dba24aa102543b4749912f 550-WNM-allow-specifying-dialog-token.patch 979f19716539362f8ce60a77bf1b88fdcf5ba8e5 720-ACS-fix-channel-100-frequency.patch 2341585c349231af00cdef8d51458df01bc6965f 741-proxyarp-fix-compilation-with-Hotspot-2.0-disabled.patch 08bdf4f90de61a84ed8f4dd918272dd9d36e2e1f Compile-tested: wpad-wolfssl hostapd-openssl Run-tested: ath79-generic Signed-off-by: David Bauer <mail@david-bauer.net> Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
35 lines
1.2 KiB
Diff
35 lines
1.2 KiB
Diff
From: Felix Fietkau <nbd@nbd.name>
|
|
Date: Mon, 18 Feb 2019 12:57:11 +0100
|
|
Subject: [PATCH] mesh: allow processing authentication frames in blocked state
|
|
|
|
If authentication fails repeatedly e.g. because of a weak signal, the link
|
|
can end up in blocked state. If one of the nodes tries to establish a link
|
|
again before it is unblocked on the other side, it will block the link to
|
|
that other side. The same happens on the other side when it unblocks the
|
|
link. In that scenario, the link never recovers on its own.
|
|
|
|
To fix this, allow restarting authentication even if the link is in blocked
|
|
state, but don't initiate the attempt until the blocked period is over.
|
|
|
|
Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|
---
|
|
|
|
--- a/src/ap/ieee802_11.c
|
|
+++ b/src/ap/ieee802_11.c
|
|
@@ -3761,15 +3761,6 @@ static void handle_auth(struct hostapd_d
|
|
seq_ctrl);
|
|
return;
|
|
}
|
|
-#ifdef CONFIG_MESH
|
|
- if ((hapd->conf->mesh & MESH_ENABLED) &&
|
|
- sta->plink_state == PLINK_BLOCKED) {
|
|
- wpa_printf(MSG_DEBUG, "Mesh peer " MACSTR
|
|
- " is blocked - drop Authentication frame",
|
|
- MAC2STR(mgmt->sa));
|
|
- return;
|
|
- }
|
|
-#endif /* CONFIG_MESH */
|
|
#ifdef CONFIG_PASN
|
|
if (auth_alg == WLAN_AUTH_PASN &&
|
|
(sta->flags & WLAN_STA_ASSOC)) {
|