summaryrefslogtreecommitdiff
path: root/builtin/client
diff options
context:
space:
mode:
authorred-001 <red-001@outlook.ie>2017-01-28 16:24:25 +0000
committerLoïc Blot <nerzhul@users.noreply.github.com>2017-03-13 23:56:05 +0100
commita50d07d39a76053328846d82a32bac61468bb16f (patch)
tree4103d0f4b4f9ede76bba90d49a475b901f3fec64 /builtin/client
parent92b45b2a189b703fc7cfc8ddbc09a7ad563a13bc (diff)
downloadminetest-a50d07d39a76053328846d82a32bac61468bb16f.tar.gz
minetest-a50d07d39a76053328846d82a32bac61468bb16f.tar.bz2
minetest-a50d07d39a76053328846d82a32bac61468bb16f.zip
[CSM] Improve security for client-sided mods (#5100)
Diffstat (limited to 'builtin/client')
-rw-r--r--builtin/client/register.lua5
1 files changed, 4 insertions, 1 deletions
diff --git a/builtin/client/register.lua b/builtin/client/register.lua
index 1e6ac4342..c932fb9f8 100644
--- a/builtin/client/register.lua
+++ b/builtin/client/register.lua
@@ -1,6 +1,9 @@
core.callback_origins = {}
+local getinfo = debug.getinfo
+debug.getinfo = nil
+
function core.run_callbacks(callbacks, mode, ...)
assert(type(callbacks) == "table")
local cb_len = #callbacks
@@ -47,7 +50,7 @@ local function make_registration()
t[#t + 1] = func
core.callback_origins[func] = {
mod = core.get_current_modname() or "??",
- name = debug.getinfo(1, "n").name or "??"
+ name = getinfo(1, "n").name or "??"
}
--local origin = core.callback_origins[func]
--print(origin.name .. ": " .. origin.mod .. " registering cbk " .. tostring(func))