mirror of
https://github.com/glest/glest-source.git
synced 2025-08-18 14:11:15 +02:00
- added second round of security sandboxing for lua scripts (disable a number of other potentially dangerous functions)
This commit is contained in:
@@ -1404,7 +1404,7 @@ Vec2i ScriptManager::getUnitPosition(int unitId) {
|
|||||||
ScriptManager_STREFLOP_Wrapper streflopWrapper;
|
ScriptManager_STREFLOP_Wrapper streflopWrapper;
|
||||||
Vec2i result = world->getUnitPosition(unitId);
|
Vec2i result = world->getUnitPosition(unitId);
|
||||||
|
|
||||||
printf("In [%s] unitId = %d, pos [%s]\n",__FUNCTION__,unitId,result.getString().c_str());
|
if(SystemFlags::getSystemSettingType(SystemFlags::debugLUA).enabled) SystemFlags::OutputDebug(SystemFlags::debugLUA,"In [%s] unitId = %d, pos [%s]\n",__FUNCTION__,unitId,result.getString().c_str());
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
@@ -74,6 +74,33 @@ LuaScript::LuaScript() {
|
|||||||
lua_setfield(luaState, -2, "remove");
|
lua_setfield(luaState, -2, "remove");
|
||||||
lua_pushnil(luaState);
|
lua_pushnil(luaState);
|
||||||
lua_setfield(luaState, -2, "exit");
|
lua_setfield(luaState, -2, "exit");
|
||||||
|
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "loadfile");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "dofile");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "getfenv");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "getmetatable");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "load");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "loadfile");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "loadstring");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "rawequal");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "rawget");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "rawset");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "setfenv");
|
||||||
|
lua_pushnil(luaState);
|
||||||
|
lua_setglobal(luaState, "setmetatable");
|
||||||
|
|
||||||
|
|
||||||
lua_pop(luaState, 1);
|
lua_pop(luaState, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user