Add --verbose option so the HTTP headers and XML request/response can be seen.

Also re-do the way modules are imported. I was attemping to have ^C handled
gracefully but the way I did it could mask other problems.

443987
This commit is contained in:
Rob Crittenden
2008-04-24 10:25:30 -04:00
parent 47e6a75cff
commit 12ea8efc0b
20 changed files with 457 additions and 270 deletions

View File

@@ -25,13 +25,13 @@ import radius_util
class IPAClient:
def __init__(self,transport=None):
def __init__(self,transport=None,verbose=False):
if transport:
self.local = True
self.transport = transport
else:
self.local = False
self.transport = rpcclient.RPCClient()
self.transport = rpcclient.RPCClient(verbose)
def set_principal(self,princ):
"""Set the name of the principal that will be used for

View File

@@ -31,13 +31,17 @@ from ipa import config
class RPCClient:
def __init__(self):
def __init__(self, verbose=False):
self.server = None
self.verbose = verbose
config.init_config()
def server_url(self, server):
"""Build the XML-RPC server URL from our configuration"""
return "https://" + server + "/ipaxml"
url = "https://" + server + "/ipaxml"
if self.verbose:
print "Connecting to IPA server: %s" % url
return url
def setup_server(self):
"""Create our XML-RPC server connection using kerberos
@@ -59,7 +63,7 @@ class RPCClient:
else:
raise e
return xmlrpclib.ServerProxy(self.server_url(self.server), KerbTransport())
return xmlrpclib.ServerProxy(self.server_url(self.server), KerbTransport(), verbose=self.verbose)
# Higher-level API