gluon-core: migrate custom batadv interfaces to gluon_mesh proto

Users may have defined additional mesh interfaces. Properly migrate these
to avoid subtly breaking the network config (and make them ready for new
mesh protocols).
This commit is contained in:
Matthias Schiffer 2016-08-30 03:48:12 +02:00
parent 9a5a8e0ab0
commit 4f39be09c9
No known key found for this signature in database
GPG Key ID: 16EF3F64CB201D9C
1 changed files with 24 additions and 0 deletions

View File

@ -0,0 +1,24 @@
#!/usr/bin/lua
local uci = require('luci.model.uci').cursor()
local function migrate_iface(iface)
if iface.proto ~= 'batadv' or iface.mesh ~= 'bat0' then
return
end
local s = iface['.name']
uci:set('network', s, 'proto', 'gluon_mesh')
uci:set('network', s, 'fixed_mtu', '1')
if iface.mesh_no_rebroadcast then
uci:set('network', s, 'transitive', iface.mesh_no_rebroadcast)
end
uci:delete('network', s, 'mesh')
uci:delete('network', s, 'mesh_no_rebroadcast')
end
uci:foreach('network', 'interface', migrate_iface)
uci:save('network')