Ignore errors from an AFS group not being listable.
[invirt/packages/invirt-web.git] / code / getafsgroups.py
index 13f8cf7..4e4b383 100644 (file)
@@ -28,10 +28,12 @@ class AfsProcessError(Exception):
     pass
 
 def getAfsGroupMembers(group, cell):
-    p = subprocess.Popen(["pts", "membership", "-noauth", group, '-c', cell], 
+    p = subprocess.Popen(["pts", "membership", "-encrypt", group, '-c', cell],
                          stdout=subprocess.PIPE, stderr=subprocess.PIPE)
     err = p.stderr.read()
     if err: #Error code doesn't reveal missing groups, but stderr does
+        if err.startswith('pts: Permission denied ; unable to get membership of '):
+            return []
         raise AfsProcessError(err)
     return [line.strip() for line in p.stdout.readlines()[1:]]