diff --git a/lib/modules/Crypto.pmod b/lib/modules/Crypto.pmod index c85f5191a785a69a28b38f876413fcc53170831b..6b2a4fb259c99ce95395c99496dc89821be78d00 100644 --- a/lib/modules/Crypto.pmod +++ b/lib/modules/Crypto.pmod @@ -8,7 +8,6 @@ static private mixed crypto_module; mixed `[](string name) { -// return (::`[](name) || ((program) ("Crypto/" + name))); catch { return (crypto_module[name] || ((program) ("Crypto/" + name)) @@ -17,6 +16,15 @@ mixed `[](string name) return ([])[0]; // UNDEFINED } +array(string) _indices() { + array tmp = ( __FILE__ / "/"); + tmp[-1] = "Crypto"; + tmp = get_dir(tmp*"/"); + return map(glob("*.pike",tmp)+glob("*.pmod",tmp), + lambda(string in){ return in[..sizeof(in)-6]; }) + + indices(crypto_module); +} + void create() { catch { crypto_module=master()->resolv("_Crypto"); };