X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fscript%2Fscripting_server.cpp;h=85411ded460e5f68b885014544f94d068c72219d;hb=0f1f8e4a0fed72f0f2223448f34406eeb26f9b7b;hp=51e13f04dff195f7a98e8b331fd2880d06ca5f60;hpb=f3ad75691aea30d2d68aab19fbfa9031409c39d7;p=dragonfireclient.git diff --git a/src/script/scripting_server.cpp b/src/script/scripting_server.cpp index 51e13f04d..85411ded4 100644 --- a/src/script/scripting_server.cpp +++ b/src/script/scripting_server.cpp @@ -23,6 +23,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "settings.h" #include "cpp_api/s_internal.h" #include "lua_api/l_areastore.h" +#include "lua_api/l_auth.h" #include "lua_api/l_base.h" #include "lua_api/l_craft.h" #include "lua_api/l_env.h" @@ -30,10 +31,12 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "lua_api/l_item.h" #include "lua_api/l_itemstackmeta.h" #include "lua_api/l_mapgen.h" +#include "lua_api/l_modchannels.h" #include "lua_api/l_nodemeta.h" #include "lua_api/l_nodetimer.h" #include "lua_api/l_noise.h" #include "lua_api/l_object.h" +#include "lua_api/l_playermeta.h" #include "lua_api/l_particles.h" #include "lua_api/l_rollback.h" #include "lua_api/l_server.h" @@ -47,10 +50,10 @@ extern "C" { #include "lualib.h" } -ServerScripting::ServerScripting(Server* server) +ServerScripting::ServerScripting(Server* server): + ScriptApiBase(ScriptingType::Server) { setGameDef(server); - setType(ScriptingType::Server); // setEnv(env) is called by ScriptApiEnv::initializeEnvironment() // once the environment has been created @@ -59,6 +62,10 @@ ServerScripting::ServerScripting(Server* server) if (g_settings->getBool("secure.enable_security")) { initializeSecurity(); + } else { + warningstream << "\\!/ Mod security should never be disabled, as it allows any mod to " + << "access the host machine." + << "Mods should use minetest.request_insecure_environment() instead \\!/" << std::endl; } lua_getglobal(L, "core"); @@ -92,15 +99,19 @@ void ServerScripting::InitializeModApi(lua_State *L, int top) LuaPerlinNoiseMap::Register(L); LuaPseudoRandom::Register(L); LuaPcgRandom::Register(L); + LuaRaycast::Register(L); LuaSecureRandom::Register(L); LuaVoxelManip::Register(L); NodeMetaRef::Register(L); NodeTimerRef::Register(L); ObjectRef::Register(L); + PlayerMetaRef::Register(L); LuaSettings::Register(L); StorageRef::Register(L); + ModChannelRef::Register(L); // Initialize mod api modules + ModApiAuth::Initialize(L, top); ModApiCraft::Initialize(L, top); ModApiEnvMod::Initialize(L, top); ModApiInventory::Initialize(L, top); @@ -112,9 +123,5 @@ void ServerScripting::InitializeModApi(lua_State *L, int top) ModApiUtil::Initialize(L, top); ModApiHttp::Initialize(L, top); ModApiStorage::Initialize(L, top); -} - -void log_deprecated(const std::string &message) -{ - log_deprecated(NULL, message); + ModApiChannels::Initialize(L, top); }