diff options
Diffstat (limited to 'src/lib/simpleclient.py')
-rw-r--r-- | src/lib/simpleclient.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/lib/simpleclient.py b/src/lib/simpleclient.py new file mode 100644 index 000000000..2840ea4eb --- /dev/null +++ b/src/lib/simpleclient.py @@ -0,0 +1,32 @@ +from tlslite.api import XMLRPCTransport +from xmlrpclib import ServerProxy +from tlslite.integration.ClientHelper import ClientHelper + +#Authenticate server based on its X.509 fingerprint +class DTXMLRPCTransport(XMLRPCTransport, ClientHelper): + def __init__(self, + username=None, password=None, sharedKey=None, + certChain=None, privateKey=None, + cryptoID=None, protocol=None, + x509Fingerprint=None, + x509TrustList=None, x509CommonName=None, + settings=None, + use_datetime=0): + self._use_datetime = use_datetime #this looks like a bug in tlslite. Perhaps just add this over there. + ClientHelper.__init__(self, + username, password, sharedKey, + certChain, privateKey, + cryptoID, protocol, + x509Fingerprint, + x509TrustList, x509CommonName, + settings) + +#sha1 fingerprint: ea38c8b6f73b5df8d77bf1e16652d9b8757a7310 +serverFingerprint = "ea38c8b6f73b5df8d77bf1e16652d9b8757a7310" + +transport = DTXMLRPCTransport(username="name", password="secret",x509Fingerprint=serverFingerprint.lower()) +server = ServerProxy("https://localhost:8505", transport) + +#print server.system.listMethods() + +print(server.silly("Kerbapp 1!"))
\ No newline at end of file |