After tweaking this library to get past the non-existant python3 class of basestring, i've run into another issue.
In [6]: fromadbimportsign_m2crypto---------------------------------------------------------------------------ImportErrorTraceback (mostrecentcalllast)
<ipython-input-6-f9a280645ee6>in<module>()
---->1fromadbimportsign_m2crypto~/.virtualenvs/frida/lib/python3.5/site-packages/adb/sign_m2crypto.pyin<module>()
13# limitations under the License.14--->15fromM2CryptoimportRSA1617fromadbimportadb_protocol~/.virtualenvs/frida/lib/python3.5/site-packages/M2Crypto/__init__.pyin<module>()
24version_info=StrictVersion(__version__).version25--->26fromM2Cryptoimport (ASN1, AuthCookie, BIO, BN, DH, DSA, EVP, Engine, Err,
27PGP, RSA, Rand, SMIME, SSL, X509, m2crypto,
28ftpslib, httpslib, m2, m2urllib, m2xmlrpclib,
~/.virtualenvs/frida/lib/python3.5/site-packages/M2Crypto/ASN1.pyin<module>()
13importtime14--->15fromM2CryptoimportBIO, m2, util16ifutil.py27plus:
17fromtypingimportAny, Callable, Optional, Tuple# noqa~/.virtualenvs/frida/lib/python3.5/site-packages/M2Crypto/BIO.pyin<module>()
8importio# noqa9--->10fromM2Cryptoimportm2, six, util11ifutil.py27plus:
12fromtypingimportAnyStr, Callable, Iterable, Optional, Union# noqa~/.virtualenvs/frida/lib/python3.5/site-packages/M2Crypto/m2.pyin<module>()
28 """
29
---> 30 from M2Crypto.m2crypto import *
31 lib_init()
~/.virtualenvs/frida/lib/python3.5/site-packages/M2Crypto/m2crypto.py in <module>()
24 fp.close()
25 return _mod
---> 26 _m2crypto = swig_import_helper()
27 del swig_import_helper
28 else:
~/.virtualenvs/frida/lib/python3.5/site-packages/M2Crypto/m2crypto.py in swig_import_helper()
20 if fp is not None:
21 try:
---> 22 _mod = imp.load_module('_m2crypto', fp, pathname, description)
23 finally:
24 fp.close()
~/.virtualenvs/frida/lib/python3.5/imp.py in load_module(name, file, filename, details)
240 return load_dynamic(name, filename, opened_file)
241 else:
--> 242 return load_dynamic(name, filename, file)
243 elif type_ == PKG_DIRECTORY:
244 return load_package(name, filename)
~/.virtualenvs/frida/lib/python3.5/imp.py in load_dynamic(name, path, file)
340 spec = importlib.machinery.ModuleSpec(
341 name=name, loader=loader, origin=path)
--> 342 return _load(spec)
343
344 else:
ImportError: /home/user/.virtualenvs/frida/lib/python3.5/site-packages/M2Crypto/_m2crypto.cpython-35m-x86_64-linux-gnu.so: undefined symbol: sslv3_method
After tweaking this library to get past the non-existant python3 class of
basestring, i've run into another issue.