Search libcrypto.so in more locations
Some linux distro may store .so in some alternative locations. Now we try harder to find them.
This commit is contained in:
parent
2711002142
commit
3294a92a61
1 changed files with 22 additions and 2 deletions
|
@ -45,9 +45,29 @@ def load_openssl():
|
||||||
if libcrypto_path:
|
if libcrypto_path:
|
||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
|
# We may get here when find_library fails because, for example,
|
||||||
|
# the user does not have sufficient privileges to access those
|
||||||
|
# tools underlying find_library on linux.
|
||||||
|
|
||||||
import glob
|
import glob
|
||||||
for libcrypto_path in glob.glob('/usr/lib/libcrypto.*'):
|
import sys
|
||||||
pass
|
|
||||||
|
patterns = ['/usr/lib/libcrypto.*']
|
||||||
|
|
||||||
|
# Some linux distros may store so in alternative locations
|
||||||
|
if sys.maxsize > 2 ** 32:
|
||||||
|
# Python is 64-bit
|
||||||
|
patterns.extend(['/usr/lib64/libcrypto.*'])
|
||||||
|
else:
|
||||||
|
# Python is 32-bit
|
||||||
|
patterns.extend(['/usr/lib32/libcrypto.*'])
|
||||||
|
|
||||||
|
for pat in patterns:
|
||||||
|
files = glob.glob(pat)
|
||||||
|
if files:
|
||||||
|
libcrypto_path = files[0]
|
||||||
|
break
|
||||||
|
|
||||||
if libcrypto_path is None:
|
if libcrypto_path is None:
|
||||||
raise Exception('libcrypto(OpenSSL) not found')
|
raise Exception('libcrypto(OpenSSL) not found')
|
||||||
logging.info('loading libcrypto from %s', libcrypto_path)
|
logging.info('loading libcrypto from %s', libcrypto_path)
|
||||||
|
|
Loading…
Reference in a new issue