batman-adv: init script tries to retrieve interfaces from uci
The batman-adv init script will query uci (network.$iface.ifname) to retrieve the interface name to re-use the existing network configuration system. The default iface configuration (batman-adv.bat0.interfaces) is set to 'mesh' which allows to start batman-adv as soon as the network configuration contains a 'mesh' stanza. Signed-off-by: Filippo Sallemi <tonyputi@gmail.com> Signed-off-by: Gioacchino Mazzurco <gmazzurco89@gmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/packages@26719 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
a6d4ae4077
commit
5ac395bf23
@ -1,6 +1,6 @@
|
||||
|
||||
config 'mesh' 'bat0'
|
||||
option 'interfaces' 'wlan0'
|
||||
option 'interfaces' 'mesh'
|
||||
option 'aggregated_ogms'
|
||||
option 'bonding'
|
||||
option 'fragmentation'
|
||||
|
@ -1,4 +1,6 @@
|
||||
#!/bin/sh /etc/rc.common
|
||||
# Copyright (C) 2011 OpenWrt.org
|
||||
|
||||
START=90
|
||||
|
||||
is_module_loaded() {
|
||||
@ -33,11 +35,16 @@ start_mesh () {
|
||||
echo Error, you must specify at least a network interface
|
||||
return
|
||||
fi
|
||||
|
||||
|
||||
for interface in $interfaces
|
||||
do
|
||||
[ ! -f "/sys/class/net/$interface/batman_adv/mesh_iface" ] && echo "Can't add interface $interface - ignoring" && continue
|
||||
echo $meshif > /sys/class/net/$interface/batman_adv/mesh_iface
|
||||
ifname=$(uci -P /var/state get network.$interface.ifname 2>&-)
|
||||
[ ! -f "/sys/class/net/$ifname/batman_adv/mesh_iface" ] && {
|
||||
ifname=${interface}
|
||||
[ ! -f "/sys/class/net/$ifname/batman_adv/mesh_iface" ] && echo "Can't add interface $ifname - ignoring" && continue
|
||||
}
|
||||
|
||||
echo $meshif > /sys/class/net/$ifname/batman_adv/mesh_iface
|
||||
done
|
||||
|
||||
if [ $orig_interval ]; then
|
||||
@ -86,7 +93,7 @@ stop_mesh() {
|
||||
for iface in $(ls /sys/class/net/*)
|
||||
do
|
||||
[ ! -f "$iface/batman_adv/mesh_iface" ] && continue
|
||||
[ "$(head -1 $iface/batman_adv/mesh_iface)" != "status: $meshif" ] && continue
|
||||
[ "$(head -1 $iface/batman_adv/mesh_iface)" != "$meshif" ] && continue
|
||||
|
||||
echo "none" > $iface/batman_adv/mesh_iface
|
||||
done
|
||||
|
Loading…
x
Reference in New Issue
Block a user