Fixed some minor session handling issues
This commit is contained in:
parent
406de82821
commit
e2e1cf5497
2 changed files with 4 additions and 3 deletions
|
@ -182,7 +182,7 @@ function dispatch(request)
|
|||
|
||||
local def = (type(track.sysauth) == "string") and track.sysauth
|
||||
local accs = def and {track.sysauth} or track.sysauth
|
||||
local sess = luci.http.getcookie("sysauth")
|
||||
local sess = ctx.authsession or luci.http.getcookie("sysauth")
|
||||
sess = sess and sess:match("^[A-F0-9]+$")
|
||||
local user = sauth.read(sess)
|
||||
|
||||
|
@ -197,6 +197,7 @@ function dispatch(request)
|
|||
if not sess then
|
||||
sauth.write(sid, user)
|
||||
end
|
||||
ctx.authsession = sid
|
||||
end
|
||||
else
|
||||
luci.http.status(403, "Forbidden")
|
||||
|
|
|
@ -23,7 +23,7 @@ require("luci.config")
|
|||
|
||||
luci.config.sauth = luci.config.sauth or {}
|
||||
sessionpath = luci.config.sauth.sessionpath
|
||||
sessiontime = tonumber(luci.config.sauth.sessiontime)
|
||||
sessiontime = tonumber(luci.config.sauth.sessiontime) or 15 * 60
|
||||
|
||||
--- Manually clean up expired sessions.
|
||||
function clean()
|
||||
|
@ -57,10 +57,10 @@ end
|
|||
-- @param id Session identifier
|
||||
-- @return Session data
|
||||
function read(id)
|
||||
clean()
|
||||
if not id or not sane(sessionpath .. "/" .. id) then
|
||||
return
|
||||
end
|
||||
clean()
|
||||
return luci.fs.readfile(sessionpath .. "/" .. id)
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue