diff options
| author | djm <> | 2008-09-06 12:15:54 +0000 |
|---|---|---|
| committer | djm <> | 2008-09-06 12:15:54 +0000 |
| commit | f519f07de9bfb123f2b32aa3965e6f73c8364b80 (patch) | |
| tree | ad353b318ee632f73212a174cffac9bb9e573b7c /src/lib/libcrypto/util | |
| parent | 89b182c5db7ea802edfc3ee734b4899b43e13e09 (diff) | |
| parent | f1625f274acf5dcd5601f6cb5e29e233b2a441a3 (diff) | |
| download | openbsd-f519f07de9bfb123f2b32aa3965e6f73c8364b80.tar.gz openbsd-f519f07de9bfb123f2b32aa3965e6f73c8364b80.tar.bz2 openbsd-f519f07de9bfb123f2b32aa3965e6f73c8364b80.zip | |
This commit was generated by cvs2git to track changes on a CVS vendor
branch.
Diffstat (limited to 'src/lib/libcrypto/util')
| -rwxr-xr-x | src/lib/libcrypto/util/opensslwrap.sh | 4 | ||||
| -rwxr-xr-x | src/lib/libcrypto/util/shlib_wrap.sh | 33 |
2 files changed, 31 insertions, 6 deletions
diff --git a/src/lib/libcrypto/util/opensslwrap.sh b/src/lib/libcrypto/util/opensslwrap.sh index 91d29e2b87..b27cbb897f 100755 --- a/src/lib/libcrypto/util/opensslwrap.sh +++ b/src/lib/libcrypto/util/opensslwrap.sh | |||
| @@ -3,6 +3,10 @@ | |||
| 3 | HERE="`echo $0 | sed -e 's|[^/]*$||'`" | 3 | HERE="`echo $0 | sed -e 's|[^/]*$||'`" |
| 4 | OPENSSL="${HERE}../apps/openssl" | 4 | OPENSSL="${HERE}../apps/openssl" |
| 5 | 5 | ||
| 6 | if [ -d "${HERE}../engines" -a "x$OPENSSL_ENGINES" = "x" ]; then | ||
| 7 | OPENSSL_ENGINES="${HERE}../engines"; export OPENSSL_ENGINES | ||
| 8 | fi | ||
| 9 | |||
| 6 | if [ -x "${OPENSSL}.exe" ]; then | 10 | if [ -x "${OPENSSL}.exe" ]; then |
| 7 | # The original reason for this script existence is to work around | 11 | # The original reason for this script existence is to work around |
| 8 | # certain caveats in run-time linker behaviour. On Windows platforms | 12 | # certain caveats in run-time linker behaviour. On Windows platforms |
diff --git a/src/lib/libcrypto/util/shlib_wrap.sh b/src/lib/libcrypto/util/shlib_wrap.sh index dc5f5b1ce4..a2f62d696f 100755 --- a/src/lib/libcrypto/util/shlib_wrap.sh +++ b/src/lib/libcrypto/util/shlib_wrap.sh | |||
| @@ -22,19 +22,39 @@ SunOS|IRIX*) | |||
| 22 | # variables depending on target ABI... | 22 | # variables depending on target ABI... |
| 23 | rld_var=LD_LIBRARY_PATH | 23 | rld_var=LD_LIBRARY_PATH |
| 24 | case "`(/usr/bin/file "$LIBCRYPTOSO") 2>/dev/null`" in | 24 | case "`(/usr/bin/file "$LIBCRYPTOSO") 2>/dev/null`" in |
| 25 | *ELF\ 64*SPARC*) | 25 | *ELF\ 64*SPARC*|*ELF\ 64*AMD64*) |
| 26 | [ -n "$LD_LIBRARY_PATH_64" ] && rld_var=LD_LIBRARY_PATH_64 | 26 | [ -n "$LD_LIBRARY_PATH_64" ] && rld_var=LD_LIBRARY_PATH_64 |
| 27 | LD_PRELOAD_64="$LIBCRYPTOSO $LIBSSLSO"; export LD_PRELOAD_64 | ||
| 28 | preload_var=LD_PRELOAD_64 | ||
| 29 | ;; | ||
| 30 | # Why are newly built .so's preloaded anyway? Because run-time | ||
| 31 | # .so lookup path embedded into application takes precedence | ||
| 32 | # over LD_LIBRARY_PATH and as result application ends up linking | ||
| 33 | # to previously installed .so's. On IRIX instead of preloading | ||
| 34 | # newly built .so's we trick run-time linker to fail to find | ||
| 35 | # the installed .so by setting _RLD_ROOT variable. | ||
| 36 | *ELF\ 32*MIPS*) | ||
| 37 | #_RLD_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT"; export _RLD_LIST | ||
| 38 | _RLD_ROOT=/no/such/dir; export _RLD_ROOT | ||
| 39 | eval $rld_var=\"/usr/lib'${'$rld_var':+:$'$rld_var'}'\" | ||
| 40 | preload_var=_RLD_LIST | ||
| 27 | ;; | 41 | ;; |
| 28 | *ELF\ N32*MIPS*) | 42 | *ELF\ N32*MIPS*) |
| 29 | [ -n "$LD_LIBRARYN32_PATH" ] && rld_var=LD_LIBRARYN32_PATH | 43 | [ -n "$LD_LIBRARYN32_PATH" ] && rld_var=LD_LIBRARYN32_PATH |
| 30 | _RLDN32_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT"; export _RLDN32_LIST | 44 | #_RLDN32_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT"; export _RLDN32_LIST |
| 45 | _RLDN32_ROOT=/no/such/dir; export _RLDN32_ROOT | ||
| 46 | eval $rld_var=\"/usr/lib32'${'$rld_var':+:$'$rld_var'}'\" | ||
| 47 | preload_var=_RLDN32_LIST | ||
| 31 | ;; | 48 | ;; |
| 32 | *ELF\ 64*MIPS*) | 49 | *ELF\ 64*MIPS*) |
| 33 | [ -n "$LD_LIBRARY64_PATH" ] && rld_var=LD_LIBRARY64_PATH | 50 | [ -n "$LD_LIBRARY64_PATH" ] && rld_var=LD_LIBRARY64_PATH |
| 34 | _RLD64_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT"; export _RLD64_LIST | 51 | #_RLD64_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT"; export _RLD64_LIST |
| 52 | _RLD64_ROOT=/no/such/dir; export _RLD64_ROOT | ||
| 53 | eval $rld_var=\"/usr/lib64'${'$rld_var':+:$'$rld_var'}'\" | ||
| 54 | preload_var=_RLD64_LIST | ||
| 35 | ;; | 55 | ;; |
| 36 | esac | 56 | esac |
| 37 | eval $rld_var=\"${THERE}:'$'$rld_var\"; export $rld_var | 57 | eval $rld_var=\"${THERE}'${'$rld_var':+:$'$rld_var'}'\"; export $rld_var |
| 38 | unset rld_var | 58 | unset rld_var |
| 39 | ;; | 59 | ;; |
| 40 | *) LD_LIBRARY_PATH="${THERE}:$LD_LIBRARY_PATH" # Linux, ELF HP-UX | 60 | *) LD_LIBRARY_PATH="${THERE}:$LD_LIBRARY_PATH" # Linux, ELF HP-UX |
| @@ -52,7 +72,7 @@ SunOS|IRIX*) | |||
| 52 | ;; | 72 | ;; |
| 53 | esac | 73 | esac |
| 54 | 74 | ||
| 55 | if [ -f "$LIBCRYPTOSO" ]; then | 75 | if [ -f "$LIBCRYPTOSO" -a -z "$preload_var" ]; then |
| 56 | # Following three lines are major excuse for isolating them into | 76 | # Following three lines are major excuse for isolating them into |
| 57 | # this wrapper script. Original reason for setting LD_PRELOAD | 77 | # this wrapper script. Original reason for setting LD_PRELOAD |
| 58 | # was to make it possible to pass 'make test' when user linked | 78 | # was to make it possible to pass 'make test' when user linked |
| @@ -64,7 +84,8 @@ if [ -f "$LIBCRYPTOSO" ]; then | |||
| 64 | *) LD_PRELOAD="$LIBCRYPTOSO $LIBSSLSO" ;; # SunOS, Linux, ELF HP-UX | 84 | *) LD_PRELOAD="$LIBCRYPTOSO $LIBSSLSO" ;; # SunOS, Linux, ELF HP-UX |
| 65 | esac | 85 | esac |
| 66 | _RLD_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT" # Tru64, o32 IRIX | 86 | _RLD_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT" # Tru64, o32 IRIX |
| 67 | export LD_PRELOAD _RLD_LIST | 87 | DYLD_INSERT_LIBRARIES="$LIBCRYPTOSO:$LIBSSLSO" # MacOS X |
| 88 | export LD_PRELOAD _RLD_LIST DYLD_INSERT_LIBRARIES | ||
| 68 | fi | 89 | fi |
| 69 | 90 | ||
| 70 | exec "$@" | 91 | exec "$@" |
