Move some code
authorMichael Spang <mspang@csclub.uwaterloo.ca>
Thu, 10 Sep 2009 18:40:17 +0000 (14:40 -0400)
committerMichael Spang <mspang@csclub.uwaterloo.ca>
Thu, 10 Sep 2009 18:40:17 +0000 (14:40 -0400)
ceo/ops.py [new file with mode: 0644]
src/op-mysql

diff --git a/ceo/ops.py b/ceo/ops.py
new file mode 100644 (file)
index 0000000..66a8566
--- /dev/null
@@ -0,0 +1,21 @@
+import os, syslog, grp
+
+def response_message(response, status, message):
+    priority = syslog.LOG_ERR if status else syslog.LOG_INFO
+    syslog.syslog(priority, message)
+    msg = response.messages.add()
+    msg.status = status
+    msg.message = message
+    return status
+
+def get_ceo_user():
+    user = os.environ.get('CEO_USER')
+    if not user:
+        raise Exception("environment variable CEO_USER not set");
+    return user
+
+def check_group(user, group):
+    try:
+        return user in grp.getgrnam(group).gr_mem
+    except KeyError:
+        return False
index 593005f..ba54358 100755 (executable)
@@ -1,7 +1,8 @@
 #!/usr/bin/python
 
 import os, sys, string, random, syslog, grp, errno, re
-from ceo import ceo_pb2, members, conf
+from ceo import ceo_pb2, members, conf, ops
+from ceo.ops import response_message, get_ceo_user, check_group
 import MySQLdb
 
 CONFIG_FILE = '/etc/csc/mysql.cf'
@@ -20,30 +21,10 @@ def configure():
     # update the current configuration with the loaded values
     cfg.update(cfg_tmp)
 
-def response_message(response, status, message):
-    priority = syslog.LOG_ERR if status else syslog.LOG_INFO
-    syslog.syslog(priority, message)
-    msg = response.messages.add()
-    msg.status = status
-    msg.message = message
-    return status
-
 def random_password():
     chars = string.letters + string.digits
     return ''.join(random.choice(chars) for i in xrange(20))
 
-def get_ceo_user():
-    user = os.environ.get('CEO_USER')
-    if not user:
-        raise Exception("environment variable CEO_USER not set");
-    return user
-
-def check_group(user, group):
-    try:
-        return user in grp.getgrnam(group).gr_mem
-    except KeyError:
-        return False
-
 def check_auth(remote_user, mysql_user, response):
     if remote_user == mysql_user:
         return response_message(response, 0, 'user %s creating database for self' % remote_user)