From f3ad75691aea30d2d68aab19fbfa9031409c39d7 Mon Sep 17 00:00:00 2001 From: red-001 Date: Fri, 30 Jun 2017 19:14:39 +0100 Subject: Create a filesystem abstraction layer for CSM and only allow accessing files that are scanned into it. (#5965) * Load client-side mods into memory before executing them. This removes the remaining filesystem access that client-sided mods had and it will hopefully make then more secure. * Lua Virtual filesystem: don't load the files into memory just scan the filenames into memory. * Fix the issues with backtrace * fix most of the issues * fix code style. * add a comment --- clientmods/preview/example.lua | 2 ++ clientmods/preview/examples/first.lua | 1 + clientmods/preview/init.lua | 1 + 3 files changed, 4 insertions(+) create mode 100644 clientmods/preview/example.lua create mode 100644 clientmods/preview/examples/first.lua (limited to 'clientmods') diff --git a/clientmods/preview/example.lua b/clientmods/preview/example.lua new file mode 100644 index 000000000..2f661c073 --- /dev/null +++ b/clientmods/preview/example.lua @@ -0,0 +1,2 @@ +print("Loaded example file!, loading more examples") +dofile("preview:examples/first.lua") diff --git a/clientmods/preview/examples/first.lua b/clientmods/preview/examples/first.lua new file mode 100644 index 000000000..c24f461e6 --- /dev/null +++ b/clientmods/preview/examples/first.lua @@ -0,0 +1 @@ +print("loaded first.lua example file") diff --git a/clientmods/preview/init.lua b/clientmods/preview/init.lua index 809e4f017..150db1816 100644 --- a/clientmods/preview/init.lua +++ b/clientmods/preview/init.lua @@ -1,6 +1,7 @@ local modname = core.get_current_modname() or "??" local modstorage = core.get_mod_storage() +dofile("preview:example.lua") -- This is an example function to ensure it's working properly, should be removed before merge core.register_on_shutdown(function() print("[PREVIEW] shutdown client") -- cgit v1.2.3