luci/applications/luci-splash/root/usr/bin/luci-splashd
2009-05-25 10:31:02 +00:00

29 lines
685 B
Lua
Executable file

#!/usr/bin/lua
local nixio = require "nixio", require "nixio.util"
local server = nixio.bind(nil, arg[1] or 8082)
local stat = server:listen(32)
local function remapipv6(adr)
local map = "::ffff:"
if adr:sub(1, #map) == map then
return adr:sub(#map+1)
else
return adr
end
end
while stat do
local client = server:accept()
if client then
client:setopt("socket", "rcvtimeo", 1)
client:setopt("socket", "sndtimeo", 1)
local srv = remapipv6(client:getsockname())
client:read(1024)
client:writeall("HTTP/1.1 302 Found\r\nLocation: http://" .. srv ..
(arg[2] or "/luci/splash") .. "\r\nContent-Length: 0\r\nConnection: close\r\n\r\n")
client:close()
end
end