9 Einträge, 1 Seite |
topeg+2007-08-22 21:59:18--Was die Umgehbarkeit betrifft so ist ja nur "eval" wirklich gefährlich. Wenn ich das verbiete (ich wüßte auch nicht wozu die Pluginprogrammierer das brauchen könnten...) dann sollte es keine Probleme geben.
topeg+2007-08-22 21:59:18--Was die Umgehbarkeit betrifft so ist ja nur "eval" wirklich gefährlich. Wenn ich das verbiete (ich wüßte auch nicht wozu die Pluginprogrammierer das brauchen könnten...) dann sollte es keine Probleme geben.
1 2 3 4 5 6
# $zahl kommt vom Nutzer. eval { 10 / $zahl }; if ( $@ ) { # Fehler wegen Division durch 0. ..... }
topeg+2007-08-23 11:39:23--wenn ich mich richtig erinnere wird bei "eval $string" ein neue Interperterinstanz erzeugt. (bei eval{code...} ist das so weit ich mich erinnere nicht der Fall...) Und ich kann mir durchaus vorstellen, daß man dabei den überlagerten main-Namensraum erreichen kann. Aber das sind nur Vermutungen.
Und der Code in deinem Beispiel lässt sich auch anders schreiben...
9 Einträge, 1 Seite |