diff options
| author | makefu <github@syntax-fehler.de> | 2014-03-25 15:35:52 +0100 | 
|---|---|---|
| committer | makefu <github@syntax-fehler.de> | 2014-03-25 15:35:52 +0100 | 
| commit | c5accb6ea72ac9612dddf37541661fa544d5b872 (patch) | |
| tree | 5e9aa86d33804e49a11acd3169f6d388eaeb4107 /Reaktor/commands | |
| parent | 5d778bfb0fadd073e1e5ff324f00a2ea460ba843 (diff) | |
add authentication to Reaktor
using /query <reaktor> identify <password>
configuration contains commands and public_commands
Diffstat (limited to 'Reaktor/commands')
| -rwxr-xr-x | Reaktor/commands/caps | 3 | ||||
| -rwxr-xr-x | Reaktor/commands/identify | 22 | 
2 files changed, 24 insertions, 1 deletions
diff --git a/Reaktor/commands/caps b/Reaktor/commands/caps index c47319f5..d0245575 100755 --- a/Reaktor/commands/caps +++ b/Reaktor/commands/caps @@ -9,4 +9,5 @@ def load_config(filename):    return imp.load_module(modname, file, pathname, description)  config = load_config(os.environ['config_filename']) -print(' '.join(filter(None,[ x.get('capname',None) for x in config.commands]))) +print('Private: '+' '.join(filter(None,[ x.get('capname',None) for x in config.commands]))) +print('Public:  '+' '.join(filter(None,[ x.get('capname',None) for x in config.public_commands]))) diff --git a/Reaktor/commands/identify b/Reaktor/commands/identify new file mode 100755 index 00000000..c2fb2c58 --- /dev/null +++ b/Reaktor/commands/identify @@ -0,0 +1,22 @@ +#!/usr/bin/env python +import imp +import os,sys + +def load_config(filename): +  dirname = os.path.dirname(filename) +  modname, ext = os.path.splitext(os.path.basename(filename)) +  file, pathname, description = imp.find_module(modname, [ dirname ]) +  return imp.load_module(modname, file, pathname, description) + +config = load_config(os.environ['config_filename']) + +with open(config.admin_file) as f: +  for line in f: +    nick,secret = line.split() +    if sys.argv[1] == secret: +      print("identified you as %s!"%nick) +      with open(config.auth_file,'a+') as g: +        g.write(os.environ['_prefix'] +"\n") +      sys.exit(0) + +print("unable to identify you, sorry")  | 
