From a1f1d476ce1597e17a49e1e5b9ce5c584af46246 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Sun, 28 Aug 2016 22:04:47 +0200 Subject: [PATCH] gluon-wan-dnsmasq: add interface name to link-local addresses Fixes #854 --- .../luasrc/lib/gluon/wan-dnsmasq/update.lua | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/package/gluon-wan-dnsmasq/luasrc/lib/gluon/wan-dnsmasq/update.lua b/package/gluon-wan-dnsmasq/luasrc/lib/gluon/wan-dnsmasq/update.lua index 88a86507..cceb7225 100755 --- a/package/gluon-wan-dnsmasq/luasrc/lib/gluon/wan-dnsmasq/update.lua +++ b/package/gluon-wan-dnsmasq/luasrc/lib/gluon/wan-dnsmasq/update.lua @@ -12,14 +12,20 @@ local fs = require 'nixio.fs' local new_servers = '' -local function append_servers(servers) +local function handle_interface(status) + local ifname = status.device + local servers = status.inactive['dns-server'] + for _, server in ipairs(servers) do + if server:match('^fe80:') then + server = server .. '%' .. ifname + end new_servers = new_servers .. 'nameserver ' .. server .. '\n' end end local function append_interface_servers(iface) - append_servers(ubus:call('network.interface.' .. iface, 'status', {}).inactive['dns-server']) + handle_interface(ubus:call('network.interface.' .. iface, 'status', {})) end