X-Git-Url: https://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=ctypescrypto%2F__init__.py;h=a63fed425bdd9abe07d09ce915bb17030968f376;hb=6c34e2a01664aeb3a5a14f7a79e76b394349b672;hp=c55ae11842d566a6e66b3e772012db690602b9ba;hpb=336fbbd82a09469a7ac7d0eb850daa6a55f42669;p=oss%2Fctypescrypto.git diff --git a/ctypescrypto/__init__.py b/ctypescrypto/__init__.py index c55ae11..a63fed4 100644 --- a/ctypescrypto/__init__.py +++ b/ctypescrypto/__init__.py @@ -4,9 +4,10 @@ """ -from ctypes import CDLL, c_char_p +from ctypes import CDLL, c_char_p, c_void_p, c_long,c_uint64 from ctypes.util import find_library import sys +global strings_loaded def config(filename=None): """ @@ -25,6 +26,15 @@ else: if __libname__ is None: raise OSError("Cannot find OpenSSL crypto library") +#__libname__ = "/usr/local/ssl/lib/libcrypto.so.1.1" + libcrypto = CDLL(__libname__) libcrypto.OPENSSL_config.argtypes = (c_char_p, ) -libcrypto.OPENSSL_add_all_algorithms_conf() + +if hasattr(libcrypto,'OPENSSL_init_crypto'): + libcrypto.OPENSSL_init_crypto.argtypes = (c_uint64,c_void_p) + libcrypto.OPENSSL_init_crypto(2+4+8+0x40,None) + strings_loaded = True +else: + libcrypto.OPENSSL_add_all_algorithms_conf() + strings_loaded = False