2 Interface to some libcrypto functions
7 from ctypes import CDLL, c_char_p, c_void_p, c_long,c_uint64
8 from ctypes.util import find_library
12 def config(filename=None):
14 Loads OpenSSL Config file. If none are specified, loads default
17 libcrypto.OPENSSL_config(filename)
21 if sys.platform.startswith('win'):
22 __libname__ = find_library('libeay32')
24 __libname__ = find_library('crypto')
26 if __libname__ is None:
27 raise OSError("Cannot find OpenSSL crypto library")
29 #__libname__ = "/usr/local/ssl/lib/libcrypto.so.1.1"
31 libcrypto = CDLL(__libname__)
32 libcrypto.OPENSSL_config.argtypes = (c_char_p, )
33 pyver=int(sys.version[0])
43 if hasattr(libcrypto,'OPENSSL_init_crypto'):
44 libcrypto.OPENSSL_init_crypto.argtypes = (c_uint64,c_void_p)
45 libcrypto.OPENSSL_init_crypto(2+4+8+0x40,None)
48 libcrypto.OPENSSL_add_all_algorithms_conf()
49 strings_loaded = False