From: Ewan Mellor Date: Fri, 15 Dec 2006 17:18:02 +0000 (+0000) Subject: Allow the XenAPI Session object to have login_with_password called as a X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=539d271eff540d736d83aa66659518b872bd96c5;p=xen.git Allow the XenAPI Session object to have login_with_password called as a methodname, to re-login through the same object (say when the server is restarted). Signed-off-by: Ewan Mellor --- diff --git a/tools/python/xen/xm/XenAPI.py b/tools/python/xen/xm/XenAPI.py index a7835c0ebc..1c1bc41e94 100644 --- a/tools/python/xen/xm/XenAPI.py +++ b/tools/python/xen/xm/XenAPI.py @@ -83,8 +83,12 @@ class Session(xen.util.xmlrpclib2.ServerProxy): def xenapi_request(self, methodname, params): - full_params = (self._session,) + params - return _parse_result(getattr(self, methodname)(*full_params)) + if methodname.startswith('login'): + self._login(methodname, *params) + return None + else: + full_params = (self._session,) + params + return _parse_result(getattr(self, methodname)(*full_params)) def _login(self, method, username, password): diff --git a/tools/python/xen/xm/main.py b/tools/python/xen/xm/main.py index 059bbd46b2..a503835cf5 100644 --- a/tools/python/xen/xm/main.py +++ b/tools/python/xen/xm/main.py @@ -558,7 +558,7 @@ class Shell(cmd.Cmd): ok, res = _run_cmd(lambda x: server.xenapi_request(words[0], tuple(x)), words[0], words[1:]) - if ok and res != '': + if ok and res is not None and res != '': pprint.pprint(res) else: print '*** Unknown command: %s' % words[0]