From d99180f837ae3fcd754a5cdc0a17a9efbe16a2fe Mon Sep 17 00:00:00 2001 From: Mark Huang Date: Thu, 16 Nov 2006 17:09:21 +0000 Subject: [PATCH] - revert incorrect mangling of 'type' slice attribute --- api.py | 2 +- sliver_vs.py | 2 +- sm.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/api.py b/api.py index 4a64c3d..6484f48 100644 --- a/api.py +++ b/api.py @@ -132,7 +132,7 @@ class APIRequestHandler(SimpleXMLRPCServer.SimpleXMLRPCRequestHandler): if method_name not in ('Help', 'Ticket'): target_name = args[0] target_rec = database.db.get(target_name) - if not target_rec: raise xmlrpclib.Fault(102, 'Invalid argument: the first argument must be a sliver name.') + if not (target_rec and target_rec['type'].startswith('sliver.')): raise xmlrpclib.Fault(102, 'Invalid argument: the first argument must be a sliver name.') if not (caller_name in (args[0], 'root') or (caller_name, method_name) in target_rec['delegations']): raise xmlrpclib.Fault(108, 'Permission denied.') result = method(target_rec, *args[1:]) else: result = method(*args) diff --git a/sliver_vs.py b/sliver_vs.py index 3c804e6..f93a4f0 100644 --- a/sliver_vs.py +++ b/sliver_vs.py @@ -30,7 +30,7 @@ class Sliver_VS(accounts.Account, vserver.VServer): """This class wraps vserver.VServer to make its interface closer to what we need.""" SHELL = '/bin/vsh' - TYPE = 'vserver' + TYPE = 'sliver.VServer' def __init__(self, rec): try: diff --git a/sm.py b/sm.py index fecfbf6..6a89158 100644 --- a/sm.py +++ b/sm.py @@ -61,7 +61,7 @@ def GetSlivers_callback(data, fullupdate=True): keys = rec.pop('keys') rec.setdefault('keys', '\n'.join([key_struct['key'] for key_struct in keys])) - rec.setdefault('type', attr_dict.get('type', 'vserver')) + rec.setdefault('type', attr_dict.get('type', 'sliver.VServer')) rec.setdefault('vref', attr_dict.get('vref', 'default')) rec.setdefault('initscript', attr_dict.get('initscript', '')) rec.setdefault('delegations', []) # XXX - delegation not yet supported -- 2.43.0