AddCmd(): keine exportierbare Closure auf protected lfuns
AddCmd() erzeugt eine Closure fuer String-Methoden, wenn moeglich.
Bislang dann, wenn AddCmd entweder intern gerufen wurde oder
function_exists() die lfun findet. Dabei wurden aber auch protected
lfuns gefunden, weswegen man mit AddCmd beliebige dieser protected
lfuns rufen konnte.
Daher werden:
* die erzeugten Closures nur nocht intern gecached
* bei externem Auruf von AddCmd protected/static Methoden abgelehnt.
QueryProp/SetProp-Methoden sind entsprechend ueberarbeitet.
Change-Id: Icc34f9e648a392177cf487943b7df493194fc0d6
diff --git a/sys/thing/commands.h b/sys/thing/commands.h
index 8f48587..76e44e7 100644
--- a/sys/thing/commands.h
+++ b/sys/thing/commands.h
@@ -33,8 +33,8 @@
// internal
static int _execute(mixed fun, string str, mixed *parsed);
-static int _process_command(string str, string *noparsestr,mixed fun,
- mixed flag, mixed rule, mixed id);
+static int _process_command(string str, string *noparsestr, mixed fun,
+ mixed flag, mixed rule, mixed id, mixed cachedcl);
public int _cl(string str);
#endif // __THING_COMMANDS_H_PROTO__