[PATCH] configurenetwork: Put One- and Two-Port pre-setup into function
Adrian Schmutzler
freifunk at adrianschmutzler.de
Di Jan 2 15:52:07 CET 2018
This is a cosmetical patch, however it does increase the overview
a lot in my opinion.
We cannot drop the special case of the two-port devices, because
we need the current setup to enable setting port mode in the Web
UI.
Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
.../fff-network/files/usr/sbin/configurenetwork | 40 ++++++++++++----------
1 file changed, 21 insertions(+), 19 deletions(-)
diff --git a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
index 272da13..0fbff10 100755
--- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
+++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
@@ -11,12 +11,30 @@
. /lib/functions/fff/network
+setupPorts() {
+ # Add a single port to the *_PORTS config
+ # Usage: setupPorts <port id> <port mode>
+
+ local port=$1
+ local mode=$2
+
+ #default: BATMAN
+ if [ "$mode" = "WAN" ] ; then
+ WAN_PORTS="${WAN_PORTS} $port"
+ elif [ "$mode" = "CLIENT" ] ; then
+ CLIENT_PORTS="${CLIENT_PORTS} $port"
+ else
+ BATMAN_PORTS="${BATMAN_PORTS} $port"
+ fi
+}
+
BOARD="$(uci get board.model.name)"
. /etc/network.$BOARD
if [ -s /etc/network.config ] ; then
. /etc/network.config
else
+ # Write network.config
echo "CLIENT_PORTS='$CLIENT_PORTS'" > /etc/network.config
echo "BATMAN_PORTS='$BATMAN_PORTS'" >> /etc/network.config
if [ -n "$WAN_PORTS" ] ; then
@@ -42,31 +60,15 @@ fi
if [ -n "$ETHPORT" ] ; then
#LAN at AR150: default: BATMAN
- if [ "${ETHMODE}" = "BATMAN" ] ; then
- BATMAN_PORTS="${BATMAN_PORTS} ${ETHPORT}"
- else
- CLIENT_PORTS="${CLIENT_PORTS} ${ETHPORT}"
- fi
+ setupPorts "$ETHPORT" "${ETHMODE}"
fi
if [ -n "$LAN0PORT" ] ; then
#LAN0 at two-port: default: BATMAN
- if [ "${LAN0MODE}" = "BATMAN" ] ; then
- BATMAN_PORTS="${BATMAN_PORTS} ${LAN0PORT}"
- elif [ "${LAN0MODE}" = "CLIENT" ] ; then
- CLIENT_PORTS="${CLIENT_PORTS} ${LAN0PORT}"
- else
- WAN_PORTS="${WAN_PORTS} ${LAN0PORT}"
- fi
+ setupPorts "$LAN0PORT" "${LAN0MODE}"
fi
if [ -n "$LAN1PORT" ] ; then
#LAN1 at two-port: default: BATMAN
- if [ "${LAN1MODE}" = "WAN" ] ; then
- WAN_PORTS="${WAN_PORTS} ${LAN1PORT}"
- elif [ "${LAN1MODE}" = "CLIENT" ] ; then
- CLIENT_PORTS="${CLIENT_PORTS} ${LAN1PORT}"
- else
- BATMAN_PORTS="${BATMAN_PORTS} ${LAN1PORT}"
- fi
+ setupPorts "$LAN1PORT" "${LAN1MODE}"
fi
if ! uci -q get network.$SWITCHDEV > /dev/null || [ "$FORCEPARSE" = '1' ] ; then
--
2.7.4
Mehr Informationen über die Mailingliste franken-dev