Allow slivers to make api calls on themselves.
authorFaiyaz Ahmed <faiyaza@cs.princeton.edu>
Tue, 4 Sep 2007 20:47:25 +0000 (20:47 +0000)
committerFaiyaz Ahmed <faiyaza@cs.princeton.edu>
Tue, 4 Sep 2007 20:47:25 +0000 (20:47 +0000)
api.py

diff --git a/api.py b/api.py
index c3b980c..8da28ef 100644 (file)
--- a/api.py
+++ b/api.py
@@ -153,10 +153,9 @@ class APIRequestHandler(SimpleXMLRPCServer.SimpleXMLRPCRequestHandler):
                 target_name = args[0]
                 target_rec = database.db.get(target_name)
                 if not (target_rec and target_rec['type'].startswith('sliver.')): 
-                    raise xmlrpclib.Fault(102, 
+                    raise xmlrpclib.Fault(102, \
                         'Invalid argument: the first argument must be a sliver name.')
-                if not caller_name in target_rec['delegations']:
-               # or (caller_name == 'utah_elab_delegate' and target_name.startswith('utah_'))): 
+                if not caller_name in (target_name, target_rec['delegations']):
                     raise xmlrpclib.Fault(108, 'Permission denied.')
                 result = method(target_rec, *args[1:])
             else: result = method(*args)