From 39998f543e3b61c8ae581757dff7088aeeca1838 Mon Sep 17 00:00:00 2001 From: Christof Schulze Date: Sat, 23 Apr 2016 21:53:08 +0200 Subject: [PATCH] populate babel-interfaces with the content of /lib/gluon/core/dynamic/interfaces --- .../upgrade/330-gluon-mesh-babel-interfaces | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/package/gluon-mesh-babel/files/lib/gluon/upgrade/330-gluon-mesh-babel-interfaces b/package/gluon-mesh-babel/files/lib/gluon/upgrade/330-gluon-mesh-babel-interfaces index 28cbe5df..549b9dca 100755 --- a/package/gluon-mesh-babel/files/lib/gluon/upgrade/330-gluon-mesh-babel-interfaces +++ b/package/gluon-mesh-babel/files/lib/gluon/upgrade/330-gluon-mesh-babel-interfaces @@ -13,6 +13,28 @@ if site.mesh_on_wan then uci:add_to_set('firewall', 'mesh_babel', 'network', 'wan') end + +local interfaces='/lib/gluon/core/dynamic/interfaces' +function interfaces_exists(file) + local f = io.open(file, "rb") + if f then f:close() end + return f ~= nil +end + +function lines_from(file) + if not interfaces_exists(file) then return {} end + lines = {} + for line in io.lines(file) do + lines[#lines + 1] = line + end + return lines +end + +local lines = lines_from(interfaces) +for line,interface in pairs(lines) do + uci:section('babeld', 'interface', line, { ifname = interface }) +end + uci:add_to_set('firewall', 'mesh_babel', 'network', 'client') uci:add_to_set('firewall', 'mesh_babel', 'network', 'local_node4') uci:add_to_set('firewall', 'mesh_babel', 'network', 'local_node6')