1:
2:
3: [ $# -ne 0 ] || set -x
4:
5: THERE="`echo $0 | sed -e 's|[^/]*$||' 2>/dev/null`.."
6: [ -d "${THERE}" ] || exec "$@"
7:
8:
9: LIBCRYPTOSO="${THERE}/libcrypto.so"
10: if [ -f "$LIBCRYPTOSO" ]; then
11: while [ -h "$LIBCRYPTOSO" ]; do
12: LIBCRYPTOSO="${THERE}/`ls -l "$LIBCRYPTOSO" | sed -e 's|.*\-> ||'`"
13: done
14: SOSUFFIX=`echo ${LIBCRYPTOSO} | sed -e 's|.*\.so||' 2>/dev/null`
15: LIBSSLSO="${THERE}/libssl.so${SOSUFFIX}"
16: fi
17:
18: SYSNAME=`(uname -s) 2>/dev/null`;
19: case "$SYSNAME" in
20: SunOS|IRIX*)
21:
22:
23: rld_var=LD_LIBRARY_PATH
24: case "`(/usr/bin/file "$LIBCRYPTOSO") 2>/dev/null`" in
25: *ELF\ 64*SPARC*|*ELF\ 64*AMD64*)
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:
31:
32:
33:
34:
35:
36: *ELF\ 32*MIPS*)
37:
38: _RLD_ROOT=/no/such/dir; export _RLD_ROOT
39: eval $rld_var=\"/usr/lib'${'$rld_var':+:$'$rld_var'}'\"
40: preload_var=_RLD_LIST
41: ;;
42: *ELF\ N32*MIPS*)
43: [ -n "$LD_LIBRARYN32_PATH" ] && rld_var=LD_LIBRARYN32_PATH
44:
45: _RLDN32_ROOT=/no/such/dir; export _RLDN32_ROOT
46: eval $rld_var=\"/usr/lib32'${'$rld_var':+:$'$rld_var'}'\"
47: preload_var=_RLDN32_LIST
48: ;;
49: *ELF\ 64*MIPS*)
50: [ -n "$LD_LIBRARY64_PATH" ] && rld_var=LD_LIBRARY64_PATH
51:
52: _RLD64_ROOT=/no/such/dir; export _RLD64_ROOT
53: eval $rld_var=\"/usr/lib64'${'$rld_var':+:$'$rld_var'}'\"
54: preload_var=_RLD64_LIST
55: ;;
56: esac
57: eval $rld_var=\"${THERE}'${'$rld_var':+:$'$rld_var'}'\"; export $rld_var
58: unset rld_var
59: ;;
60: *) LD_LIBRARY_PATH="${THERE}:$LD_LIBRARY_PATH"
61: DYLD_LIBRARY_PATH="${THERE}:$DYLD_LIBRARY_PATH"
62: SHLIB_PATH="${THERE}:$SHLIB_PATH"
63: LIBPATH="${THERE}:$LIBPATH"
64: export LD_LIBRARY_PATH DYLD_LIBRARY_PATH SHLIB_PATH LIBPATH
65:
66:
67:
68:
69: if [ "$OSTYPE" != msdosdjgpp ]; then
70: PATH="${THERE}:$PATH"; export PATH
71: fi
72: ;;
73: esac
74:
75: if [ -f "$LIBCRYPTOSO" -a -z "$preload_var" ]; then
76:
77:
78:
79:
80:
81:
82: case "$SYSNAME" in
83: *BSD) LD_PRELOAD="$LIBCRYPTOSO:$LIBSSLSO" ;;
84: *) LD_PRELOAD="$LIBCRYPTOSO $LIBSSLSO" ;;
85: esac
86: _RLD_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT"
87: DYLD_INSERT_LIBRARIES="$LIBCRYPTOSO:$LIBSSLSO"
88: export LD_PRELOAD _RLD_LIST DYLD_INSERT_LIBRARIES
89: fi
90:
91: exec "$@"