diff options
-rwxr-xr-x | applications/luci-splash/root/usr/bin/luci-splashd | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/applications/luci-splash/root/usr/bin/luci-splashd b/applications/luci-splash/root/usr/bin/luci-splashd index 946c6966a..c94537fbc 100755 --- a/applications/luci-splash/root/usr/bin/luci-splashd +++ b/applications/luci-splash/root/usr/bin/luci-splashd @@ -16,17 +16,21 @@ while true do if client then client:settimeout(1) local srv - local ip = luci.ip.IPv4((client:getpeername())) - uci:foreach("network", "interface", - function (section) - if section.ipaddr then - local net = luci.ip.IPv4(section.ipaddr, section.netmask) - if ip and net and net:contains(ip) then - srv = section.ipaddr - return - end - end - end) + print (client:getpeername()) + local ip = luci.ip.IPv4((client:getpeername())) + + local function find_srv(section) + if section.ipaddr then + local net = luci.ip.IPv4(section.ipaddr, section.netmask) + if ip and net and net:contains(ip) then + srv = section.ipaddr + return + end + end + end + + uci:foreach("network", "interface", find_srv) + uci:foreach("network", "alias", find_srv) client:receive() client:send("HTTP/1.0 302 Found\r\nLocation: http://" .. srv .. |