Fix loading of libcrypto when using salt-ssh

When using salt-ssh, Salt would copy itself to the target machine. The libcrypto loading patch included in Nix hardcodes the location, but does not provide any fallback for the target machine, making salt-ssh unusable from a nix environment, which is ironically, one of the coolest use-cases of nix: a self contained git repo with a Saltfile and a shell.nix with dependencies.
This commit is contained in:
Duncan Mac-Vicar P 2022-01-05 00:50:31 +01:00 committed by GitHub
parent a4bd74abde
commit 7efd6c8260
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,13 +1,13 @@
diff --git a/salt/utils/rsax931.py b/salt/utils/rsax931.py
index f827cc6db8..b728595186 100644
--- a/salt/utils/rsax931.py
+++ b/salt/utils/rsax931.py
@@ -74,7 +74,7 @@
--- a/salt/utils/rsax931.py 2021-11-24 00:39:57.940790184 +0100
+++ b/salt/utils/rsax931.py 2021-11-24 00:38:35.436728341 +0100
@@ -85,6 +85,10 @@
"""
Attempt to load libcrypto.
"""
- return cdll.LoadLibrary(_find_libcrypto())
+ return cdll.LoadLibrary('@libcrypto@')
+ try:
+ return cdll.LoadLibrary('@libcrypto@')
+ except OSError:
+ pass
return cdll.LoadLibrary(_find_libcrypto())
def _init_libcrypto():