multimolti
Erfahrenes Mitglied
Hallo!
Ich arbeite grade an einer sicheren "Sandbox" für Lua, wo also 3rd-party Skripte ausgeführt werden können, ohne dass was kaputt gehen kann. Das funktioniert bisher wunderbar, das Skript läuft in einer eigenen Umgebung, jetzt will ich der Umgebung nur die wichtigsten Funktionen und so zur Verfügung stellen.
Hier gibt es eine Liste mit allen sicheren und unsicheren Funktionen, die ich übernehmen wollte. Bei den meisten geht das recht einfach, nur z.B. bei "string" habe ich Probleme, weil generell ja alle Funktionen OK sind, nur "string.dump" eben nicht. Ich wollte das so machen:
Allerdings bekomme ich einen Fehler:
Wie macht man das besser? Danke für die Hilfe!
Ich arbeite grade an einer sicheren "Sandbox" für Lua, wo also 3rd-party Skripte ausgeführt werden können, ohne dass was kaputt gehen kann. Das funktioniert bisher wunderbar, das Skript läuft in einer eigenen Umgebung, jetzt will ich der Umgebung nur die wichtigsten Funktionen und so zur Verfügung stellen.
Hier gibt es eine Liste mit allen sicheren und unsicheren Funktionen, die ich übernehmen wollte. Bei den meisten geht das recht einfach, nur z.B. bei "string" habe ich Probleme, weil generell ja alle Funktionen OK sind, nur "string.dump" eben nicht. Ich wollte das so machen:
Code:
local env = {
-- safe modules
assert = assert;
error = error;
...
pcall = pcall;
string = string; -- unsafe
string.dump = nil;
...
}
'}' expected (to close '{' at line 31) near '='
Wie macht man das besser? Danke für die Hilfe!