X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=api.py;h=ef279b8019ed6c7ac0767c9f2943ab30434f7674;hb=74a8cfb9d2eac39ae02e5323e1fb5b1d33297981;hp=350cb25903e1997c0874c0c356e4b9be1656d84c;hpb=4742191a6cd97f84c9f03cbc0663c8dcb63b69cb;p=nodemanager.git diff --git a/api.py b/api.py index 350cb25..ef279b8 100644 --- a/api.py +++ b/api.py @@ -1,3 +1,6 @@ +# $Id$ +# $URL$ + """Sliver manager API. This module exposes an XMLRPC interface that allows PlanetLab users to @@ -21,11 +24,12 @@ import sys import accounts import database -import logger import sliver_vs import ticket import tools from api_calls import * +import logger + try: sys.path.append("/etc/planetlab") from plc_config import * @@ -65,12 +69,9 @@ class APIRequestHandler(SimpleXMLRPCServer.SimpleXMLRPCRequestHandler): xid = struct.unpack('3i', ucred)[1] caller_name = pwd.getpwuid(xid)[0] # Special case the genicw - if method_name == "AdminTicket": - if caller_name == PLC_SLICE_PREFIX+"_genicw": - try: result = method(*args) - except Exception, err: raise xmlrpclib.Fault(104, 'Error in call: %s' %err) - else: - raise xmlrpclib.Fault(108, '%s: Permission denied.' % caller_name) + if caller_name == PLC_SLICE_PREFIX+"_sfacm": + try: result = method(*args) + except Exception, err: raise xmlrpclib.Fault(104, 'Error in call: %s' %err) # Anyone can call these functions elif method_name not in ('Help', 'Ticket', 'GetXIDs', 'GetSSHKeys'): # Authenticate the caller if not in the above fncts.