X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/289f1313e45320efc6775caefa0cea71caacb10c..1383bc691cb24e41aa04dc43edd1904726be18e8:/code/validation.py?ds=sidebyside diff --git a/code/validation.py b/code/validation.py index 9189764..4886638 100644 --- a/code/validation.py +++ b/code/validation.py @@ -158,9 +158,12 @@ def testAdmin(user, admin, machine): if cache_acls.isUser(admin): return admin admin = 'system:' + admin - if getafsgroups.checkAfsGroup(user, admin, 'athena.mit.edu'): - return admin - #XXX Should we require that user is in cache_acls.expandName(admin)? + try: + if user in getafsgroups.getAfsGroupMembers(admin, 'athena.mit.edu'): + return admin + except getafsgroups.AfsProcessError, e: + raise InvalidInput('administrator', admin, str(e)) + #XXX Should we require that user is in the admin group? return admin def testOwner(user, owner, machine=None):