gluon-mesh-batman-adv: enable routing algorithm configuration through site.conf

[Matthias Schiffer: move to proto_gluon_bat0_setup() and default to BATMAN_IV]
This commit is contained in:
Steffen Förster 2017-07-10 23:08:39 +02:00 committed by Matthias Schiffer
parent bba83bffcc
commit 826ac88493
No known key found for this signature in database
GPG Key ID: 16EF3F64CB201D9C
3 changed files with 12 additions and 1 deletions

View File

@ -1,3 +1,4 @@
if need_table('mesh', nil, false) and need_table('mesh.batman_adv', nil, false) then
need_number('mesh.batman_adv.gw_sel_class', false)
need_number('mesh.batman_adv.gw_sel_class', false)
need_one_of('mesh.batman_adv.routing_algo', {'BATMAN_IV', 'BATMAN_V'}, false)
end

View File

@ -41,6 +41,10 @@ proto_gluon_bat0_setup() {
ip link add primary0 type dummy
echo 1 > /proc/sys/net/ipv6/conf/primary0/disable_ipv6
ip link set primary0 address "$primary0_mac" mtu 1532 up
local routing_algo="$(uci -q get batman-adv.bat0.routing_algo || echo 'BATMAN_IV')"
(echo "$routing_algo" >/sys/module/batman_adv/parameters/routing_algo) 2>/dev/null
echo bat0 > /sys/class/net/primary0/batman_adv/mesh_iface
proto_init_update primary0 1

View File

@ -12,12 +12,18 @@ if site.mesh and site.mesh.batman_adv then
gw_sel_class = site.mesh.batman_adv.gw_sel_class
end
local routing_algo
if site.mesh and site.mesh.batman_adv then
routing_algo = site.mesh.batman_adv.routing_algo
end
uci:delete('batman-adv', 'bat0')
uci:section('batman-adv', 'mesh', 'bat0', {
orig_interval = 5000,
gw_mode = 'client',
gw_sel_class = gw_sel_class,
hop_penalty = 15,
routing_algo = routing_algo,
multicast_mode = false,
})
uci:save('batman-adv')