Author: jow
Date: 2015-07-27 15:29:08 +0200 (Mon, 27 Jul 2015)
New Revision: 46512
Added:
branches/barrier_breaker/package/network/services/hostapd/patches/700-fix-radius-reconnect.patch
Modified:
branches/barrier_breaker/package/network/services/hostapd/Makefile
Log:
BB: hostapd: Fix RADIUS connection recovery after initial failure (#18197)
If the initial attempt at opening the socket connection to the RADIUS
server failed due to missing IP connectivity during startup, e.g., with
"connect[radius]: Network is unreachable", hostapd did not try to
reconnect when RADIUS messages were sent. Instead, it only reported "No
authentication server configured" even if the configuration did have a
server entry.
Backport of upstream commit 94b39e5927e570e6b0fe41d455dde0a361c71c36
("RADIUS client: Fix server connection recovery after initial failure")
Signed-off-by: Jo-Philipp Wich <[email protected]>
Modified: branches/barrier_breaker/package/network/services/hostapd/Makefile
===================================================================
--- branches/barrier_breaker/package/network/services/hostapd/Makefile
2015-07-27 11:49:48 UTC (rev 46511)
+++ branches/barrier_breaker/package/network/services/hostapd/Makefile
2015-07-27 13:29:08 UTC (rev 46512)
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2006-2014 OpenWrt.org
+# Copyright (C) 2006-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -9,7 +9,7 @@
PKG_NAME:=hostapd
PKG_VERSION:=2014-06-03.1
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_REV:=84df167554569af8c87f0a8ac1fb508192417d8e
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
Added:
branches/barrier_breaker/package/network/services/hostapd/patches/700-fix-radius-reconnect.patch
===================================================================
---
branches/barrier_breaker/package/network/services/hostapd/patches/700-fix-radius-reconnect.patch
(rev 0)
+++
branches/barrier_breaker/package/network/services/hostapd/patches/700-fix-radius-reconnect.patch
2015-07-27 13:29:08 UTC (rev 46512)
@@ -0,0 +1,41 @@
+From 94b39e5927e570e6b0fe41d455dde0a361c71c36 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <[email protected]>
+Date: Sat, 28 Feb 2015 11:57:57 +0000
+Subject: RADIUS client: Fix server connection recovery after initial failure
+
+If the initial attempt at opening the socket connection to the RADIUS
+server failed due to missing IP connectivity during startup, e.g., with
+"connect[radius]: Network is unreachable", hostapd did not try to
+reconnect when RADIUS messages were sent. Instead, it only reported "No
+authentication server configured" even if the configuration did have a
+server entry.
+
+This was broken by commit 9ed40766735a9628cc6c936076b175e6f66534bb
+('RADIUS client: Do not try to send message without socket') for the
+initial case and the more recent fixes in RADIUS server failover cases
+did not cover the initial failure case.
+
+Signed-off-by: Jouni Malinen <[email protected]>
+
+--- a/src/radius/radius_client.c
++++ b/src/radius/radius_client.c
+@@ -658,6 +658,9 @@ int radius_client_send(struct radius_cli
+ }
+
+ if (msg_type == RADIUS_ACCT || msg_type == RADIUS_ACCT_INTERIM) {
++ if (conf->acct_server && radius->acct_sock < 0)
++ radius_client_init_acct(radius);
++
+ if (conf->acct_server == NULL || radius->acct_sock < 0) {
+ hostapd_logger(radius->ctx, NULL,
+ HOSTAPD_MODULE_RADIUS,
+@@ -672,6 +675,9 @@ int radius_client_send(struct radius_cli
+ s = radius->acct_sock;
+ conf->acct_server->requests++;
+ } else {
++ if (conf->auth_server && radius->auth_sock < 0)
++ radius_client_init_auth(radius);
++
+ if (conf->auth_server == NULL || radius->auth_sock < 0) {
+ hostapd_logger(radius->ctx, NULL,
+ HOSTAPD_MODULE_RADIUS,
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits