From: Faiyaz Ahmed Date: Tue, 4 Sep 2007 20:47:25 +0000 (+0000) Subject: Allow slivers to make api calls on themselves. X-Git-Tag: planetlab-4_1-rc2~3 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=b9c6ed830b93dfe2ce82886bf8057fcd14decb8c;p=nodemanager.git Allow slivers to make api calls on themselves. --- diff --git a/api.py b/api.py index c3b980c..8da28ef 100644 --- 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)