forked from freifunk-franken/firmware
fff-network: don't hardcode eth0 for one-ports in configurenetwork
We use the one-port implementation also on two-ports like the Nanostation M. Therefore, hard-coding eth0 in configurenetwork will break if the port implemented for the one-port setup (SWITCHDEV/WANDEV) is not eth0. Just use SWITCHDEV instead, like done for the rest of the one-port setup. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Reviewed-by: Fabian Bläse <fabian@blaese.de> Tested-by: Fabian Bläse <fabian@blaese.de>
This commit is contained in:
parent
0927a4e51a
commit
bd15c7e178
|
@ -1,7 +1,7 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=fff-network
|
PKG_NAME:=fff-network
|
||||||
PKG_RELEASE:=31
|
PKG_RELEASE:=32
|
||||||
|
|
||||||
include $(INCLUDE_DIR)/package.mk
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
|
|
@ -118,12 +118,12 @@ if [ "$ONE_PORT" = "YES" ] && ( ! uci -q get network.$SWITCHDEV.ifname || [ "$FO
|
||||||
uci set network.client.ifname="bat0"
|
uci set network.client.ifname="bat0"
|
||||||
uci set network.wan.ifname="$WANDEV"
|
uci set network.wan.ifname="$WANDEV"
|
||||||
uci del network.ethmesh.ifname
|
uci del network.ethmesh.ifname
|
||||||
uci del network.eth0.macaddr
|
uci del network.${SWITCHDEV}.macaddr
|
||||||
elif [ "$ETHMODE" = "CLIENT" ] ; then
|
elif [ "$ETHMODE" = "CLIENT" ] ; then
|
||||||
uci set network.client.ifname="bat0 $SWITCHDEV"
|
uci set network.client.ifname="bat0 $SWITCHDEV"
|
||||||
uci set network.wan.ifname="eth2" #eth2 because it is default in config file
|
uci set network.wan.ifname="eth2" #eth2 because it is default in config file
|
||||||
uci del network.ethmesh.ifname
|
uci del network.ethmesh.ifname
|
||||||
uci del network.eth0.macaddr
|
uci del network.${SWITCHDEV}.macaddr
|
||||||
elif [ "$ETHMODE" = "BATMAN" ] ; then
|
elif [ "$ETHMODE" = "BATMAN" ] ; then
|
||||||
uci set network.client.ifname="bat0"
|
uci set network.client.ifname="bat0"
|
||||||
uci set network.wan.ifname="eth2" #eth2 because it is default in config file
|
uci set network.wan.ifname="eth2" #eth2 because it is default in config file
|
||||||
|
@ -172,14 +172,14 @@ if [ -n "$ROUTERMAC" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$ETH0MAC" ]; then
|
if [ -n "$ETH0MAC" ]; then
|
||||||
echo "Fixing MAC on eth0"
|
echo "Fixing MAC on $SWITCHDEV"
|
||||||
sleep 10
|
sleep 10
|
||||||
NEW_MACADDR=$(cat "/sys/class/net/${ETH0MAC}/address")
|
NEW_MACADDR=$(cat "/sys/class/net/${ETH0MAC}/address")
|
||||||
uci set network.eth0.macaddr=$NEW_MACADDR
|
uci set network.${SWITCHDEV}.macaddr=$NEW_MACADDR
|
||||||
uci commit network
|
uci commit network
|
||||||
ifconfig eth0 down
|
ifconfig $SWITCHDEV down
|
||||||
ifconfig eth0 hw ether $NEW_MACADDR
|
ifconfig $SWITCHDEV hw ether $NEW_MACADDR
|
||||||
ifconfig eth0 up
|
ifconfig $SWITCHDEV up
|
||||||
/etc/init.d/network restart
|
/etc/init.d/network restart
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user