From 6cd4a52e15b5f03febcbbd348b14522cfcf02996 Mon Sep 17 00:00:00 2001 From: Tim Niemeyer Date: Sun, 30 Sep 2012 02:53:59 +0200 Subject: [PATCH] update the default rc.local based on dir300 Signed-off-by: Tim Niemeyer --- bsp/default/root_file_system/etc/rc.local | 53 ++++++++++++----------- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/bsp/default/root_file_system/etc/rc.local b/bsp/default/root_file_system/etc/rc.local index 8363214..4ed19d6 100755 --- a/bsp/default/root_file_system/etc/rc.local +++ b/bsp/default/root_file_system/etc/rc.local @@ -3,41 +3,47 @@ # batman seems to be to stupid to regocnice the devices # todo: uci.get .. +batctl if add eth0.3 +batctl if add eth0.4 batctl if add wlan0-1 -ifconfig eth0 mtu 1528 - -echo enable > /sys/devices/virtual/net/bat0/mesh/bridge_loop_avoidance +#echo none > /sys/devices/platform/ar231x-wmac.0/leds/ath5k-phy0\:\:rx/trigger +#echo phy0tx > /sys/devices/platform/ar231x-wmac.0/leds/ath5k-phy0\:\:tx/trigger toLower() { echo $1 | sed -e "s/A/a/g" -e "s/B/b/g" -e "s/C/c/g" -e "s/D/d/g" -e "s/E/e/g" -e "s/F/f/g" } # todo: all devices or only dir300 ? -BRMAC=`ip link | grep br-mesh -A1 | grep link | awk '{ print $2 }'` -BRMAC=`toLower $BRMAC` -WLMAC=`ip link | grep wlan0 -A1 | grep link | awk '{ print $2 }'` -WLMAC=`toLower $WLMAC` -ETMAC=`ip link | grep eth0 -A1 | grep link | awk '{ print $2 }'` -ETMAC=`toLower $ETMAC` +if uci get network.mesh.macaddr +then + echo "MAC is set already" +else + BRMAC=`ip link | grep br-mesh -A1 | grep link | awk '{ print $2 }'` + BRMAC=`toLower $BRMAC` + WLMAC=`ip link | grep wlan0 -A1 | grep link | awk '{ print $2 }'` + WLMAC=`toLower $WLMAC` + ETMAC=`ip link | grep eth0 -A1 | grep link | awk '{ print $2 }'` + ETMAC=`toLower $ETMAC` -if [ "$WLMAC" != "" ] && [ "$BRMAC" != "" ] && [ "$BRMAC" = "$ETMAC" ]; then -if [[ "$BRMAC" != "$WLMAC" ]]; then - logger -s "Fixing wrong MAC on br-mesh" - uci set network.mesh.macaddr=$WLMAC - uci commit - ifconfig br-mesh hw ether $WLMAC - ifconfig br-mesh down - ifconfig br-mesh up - #wait before reboot to generate tinc certificates and to be able - #to login over ssh bevore reboot in case of errors -fi + if [ "$WLMAC" != "" ] && [ "$BRMAC" != "" ] && [ "$BRMAC" = "$ETMAC" ]; then + if [[ "$BRMAC" != "$WLMAC" ]]; then + echo "Fixing wrong MAC on br-mesh" + uci set network.mesh.macaddr=$WLMAC + uci commit + ifconfig br-mesh hw ether $WLMAC + ifconfig br-mesh down + ifconfig br-mesh up + #wait before reboot to generate tinc certificates and to be able + #to login over ssh bevore reboot in case of errors + fi + fi fi # Starting NTP-Client Daemon ntpd -p "fe80::201:2ff:fe03:405%br-mesh" -sh /etc/firewall.user +. /etc/firewall.user /etc/init.d/qos disable /etc/init.d/qos stop @@ -46,9 +52,4 @@ sh /etc/firewall.user mkdir /tmp/crawldata httpd -h /tmp/crawldata -sh /etc/configurator.sh - -#do something if a client associates -#iw event -f | /etc/clients_event.sh & - exit 0