diff options
author | Jo-Philipp Wich <jo@mein.io> | 2022-10-15 01:33:29 +0200 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2022-10-25 01:03:37 +0200 |
commit | 94dd7fdf60a83376361ea53f6c0baa969eb722ef (patch) | |
tree | f864c7c787bdbab0d7439e52774a8e2275a13904 /modules/luci-lua-runtime/luasrc | |
parent | 21dacf2db7899b1e90cb6d4fe6595f1991ba3635 (diff) |
luci-lua-runtime: drop Lua server gateway modules
Remove the uhttpd and CGI gateway modules as they're not compatible with
the Lua compat stub runtime anymore.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'modules/luci-lua-runtime/luasrc')
-rw-r--r-- | modules/luci-lua-runtime/luasrc/sgi/cgi.lua | 73 | ||||
-rw-r--r-- | modules/luci-lua-runtime/luasrc/sgi/uhttpd.lua | 99 |
2 files changed, 0 insertions, 172 deletions
diff --git a/modules/luci-lua-runtime/luasrc/sgi/cgi.lua b/modules/luci-lua-runtime/luasrc/sgi/cgi.lua deleted file mode 100644 index 400db4710d..0000000000 --- a/modules/luci-lua-runtime/luasrc/sgi/cgi.lua +++ /dev/null @@ -1,73 +0,0 @@ --- Copyright 2008 Steven Barth <steven@midlink.org> --- Licensed to the public under the Apache License 2.0. - -exectime = os.clock() -module("luci.sgi.cgi", package.seeall) -local ltn12 = require("luci.ltn12") -require("nixio.util") -require("luci.http") -require("luci.sys") -require("luci.dispatcher") - --- Limited source to avoid endless blocking -local function limitsource(handle, limit) - limit = limit or 0 - local BLOCKSIZE = ltn12.BLOCKSIZE - - return function() - if limit < 1 then - handle:close() - return nil - else - local read = (limit > BLOCKSIZE) and BLOCKSIZE or limit - limit = limit - read - - local chunk = handle:read(read) - if not chunk then handle:close() end - return chunk - end - end -end - -function run() - local r = luci.http.Request( - luci.sys.getenv(), - limitsource(io.stdin, tonumber(luci.sys.getenv("CONTENT_LENGTH"))), - ltn12.sink.file(io.stderr) - ) - - local x = coroutine.create(luci.dispatcher.httpdispatch) - local hcache = "" - local active = true - - while coroutine.status(x) ~= "dead" do - local res, id, data1, data2 = coroutine.resume(x, r) - - if not res then - print("Status: 500 Internal Server Error") - print("Content-Type: text/plain\n") - print(id) - break; - end - - if active then - if id == 1 then - io.write("Status: " .. tostring(data1) .. " " .. data2 .. "\r\n") - elseif id == 2 then - hcache = hcache .. data1 .. ": " .. data2 .. "\r\n" - elseif id == 3 then - io.write(hcache) - io.write("\r\n") - elseif id == 4 then - io.write(tostring(data1 or "")) - elseif id == 5 then - io.flush() - io.close() - active = false - elseif id == 6 then - data1:copyz(nixio.stdout, data2) - data1:close() - end - end - end -end diff --git a/modules/luci-lua-runtime/luasrc/sgi/uhttpd.lua b/modules/luci-lua-runtime/luasrc/sgi/uhttpd.lua deleted file mode 100644 index 4cd3649c62..0000000000 --- a/modules/luci-lua-runtime/luasrc/sgi/uhttpd.lua +++ /dev/null @@ -1,99 +0,0 @@ --- Copyright 2010 Jo-Philipp Wich <jow@openwrt.org> --- Licensed to the public under the Apache License 2.0. - -require "nixio.util" -require "luci.http" -require "luci.sys" -require "luci.dispatcher" -require "luci.ltn12" - -function handle_request(env) - exectime = os.clock() - local renv = { - CONTENT_LENGTH = env.CONTENT_LENGTH, - CONTENT_TYPE = env.CONTENT_TYPE, - REQUEST_METHOD = env.REQUEST_METHOD, - REQUEST_URI = env.REQUEST_URI, - PATH_INFO = env.PATH_INFO, - SCRIPT_NAME = env.SCRIPT_NAME:gsub("/+$", ""), - SCRIPT_FILENAME = env.SCRIPT_NAME, - SERVER_PROTOCOL = env.SERVER_PROTOCOL, - QUERY_STRING = env.QUERY_STRING, - DOCUMENT_ROOT = env.DOCUMENT_ROOT, - HTTPS = env.HTTPS, - REDIRECT_STATUS = env.REDIRECT_STATUS, - REMOTE_ADDR = env.REMOTE_ADDR, - REMOTE_NAME = env.REMOTE_NAME, - REMOTE_PORT = env.REMOTE_PORT, - REMOTE_USER = env.REMOTE_USER, - SERVER_ADDR = env.SERVER_ADDR, - SERVER_NAME = env.SERVER_NAME, - SERVER_PORT = env.SERVER_PORT - } - - local k, v - for k, v in pairs(env.headers) do - k = k:upper():gsub("%-", "_") - renv["HTTP_" .. k] = v - end - - local len = tonumber(env.CONTENT_LENGTH) or 0 - local function recv() - if len > 0 then - local rlen, rbuf = uhttpd.recv(4096) - if rlen >= 0 then - len = len - rlen - return rbuf - end - end - return nil - end - - local send = uhttpd.send - - local req = luci.http.Request( - renv, recv, luci.ltn12.sink.file(io.stderr) - ) - - - local x = coroutine.create(luci.dispatcher.httpdispatch) - local hcache = { } - local active = true - - while coroutine.status(x) ~= "dead" do - local res, id, data1, data2 = coroutine.resume(x, req) - - if not res then - send("Status: 500 Internal Server Error\r\n") - send("Content-Type: text/plain\r\n\r\n") - send(tostring(id)) - break - end - - if active then - if id == 1 then - send("Status: ") - send(tostring(data1)) - send(" ") - send(tostring(data2)) - send("\r\n") - elseif id == 2 then - hcache[data1] = data2 - elseif id == 3 then - for k, v in pairs(hcache) do - send(tostring(k)) - send(": ") - send(tostring(v)) - send("\r\n") - end - send("\r\n") - elseif id == 4 then - send(tostring(data1 or "")) - elseif id == 5 then - active = false - elseif id == 6 then - data1:copyz(nixio.stdout, data2) - end - end - end -end |