diff --git a/files/lib/gluon/ssid-changer/ssid-changer.sh b/files/lib/gluon/ssid-changer/ssid-changer.sh index 2530f0ce8baad754c80a5d9294ec67b7bd8a1b6f..19ee9e974f5aed9d76799f009e51188436fbf1cc 100755 --- a/files/lib/gluon/ssid-changer/ssid-changer.sh +++ b/files/lib/gluon/ssid-changer/ssid-changer.sh @@ -1,7 +1,6 @@ #!/bin/sh - #Is there an active Gateway GATEWAY_TQ=`batctl gwl | grep "^=>" | cut -d" " -f3 | tr -d "()"` if [ $GATEWAY_TQ > 50 ]; @@ -9,7 +8,7 @@ then echo "Gateway TQ is $GATEWAY_TQ node is online" for RADIO in $(iw dev | grep client | cut -d" " -f2); do CURRENT_SSID=`iw dev $RADIO info | grep ssid | cut -d" " -f2` - # Use Freifunk for now, get it from /lib/gluon/site.conf in futre version + # Use Freifunk for now, get it from /lib/gluon/site.conf in future version if [ $CURRENT_SSID == 'Freifunk' ] then echo "SSID $CURRENT_SSID is correct, noting to do" @@ -23,7 +22,9 @@ then else echo "Gateway TQ is $GATEWAY_TQ node is considered offline" NODENAME=`uname -n` - OFFLINE_SSID=`echo "Freifunk_OFFLINE_$NODENAME" | cut -b -30` + #There is a limit auf 32 charakters for the ssid + 'FF_OFFLINE_' leves us 21 maximum SSID length + if [ ${#NODENAME} > 20 ] ; then + OFFLINE_SSID=`echo "FF_OFFLINE_${STRING:0:9}...${STRING:(-9)}"` # use the first and last part of the nodename for nodes with long prefix for RADIO in $(iw dev | grep client | cut -d" " -f2); do CURRENT_SSID=`iw dev $RADIO info | grep ssid | cut -d" " -f2` if [ $CURRENT_SSID == $OFFLINE_SSID ]