Eschew M2Crypto.m2xmlrpclib. It dies horribly under Python 2.7.
Invoke HTTPConnection or M2Crypto's HTTPSConnection directly, instead, and process everything through xmlrpclib's utility functions on the way in and out by hand. (Note that we can't use native Python's HTTPSConnection, or native xmlrpclib with an HTTPS URL for that matter, because Python's SSL support does not handle custom callbacks to retrieve passphrases, which we want to do. We can't override that behaviour with Python code, since it lives in a binary shared library.)
Showing with 42 additions and 47 deletions