Actually import re.
[invirt/packages/invirt-database.git] / client / usr / bin / sipb-xen-lvcreate
index 25c5942..3d886ca 100755 (executable)
@@ -4,12 +4,19 @@ from sipb_xen_database import *
 import sys
 import os.path
 from subprocess import call
+import re
 
 connect('postgres://sipb-xen@sipb-xen-dev.mit.edu/sipb_xen')
 
+def check(b):
+    if not b:
+        exit(1)
+
 vg = "xenvg"
 for d in Disk.select():
+    check(re.match('^[A-Za-z0-9]+$', d.guest_device_name))
     machine = Machine.get(d.machine_id)
+    check(re.match('^[A-Za-z0-9][A-Za-z0-9._-]*$', machine.name))
     lvname = machine.name + "_" + d.guest_device_name
     if not os.path.exists("/dev/%s/%s" % (vg, lvname)):
         # LV doesn't exist