xref: /freebsd/crypto/openssl/util/opensslwrap.sh (revision e0c4386e7e71d93b0edc0c8fa156263fc4a8b0b6)
1#!/bin/sh
2
3HERE="`echo $0 | sed -e 's|[^/]*$||'`"
4OPENSSL="${HERE}../apps/openssl"
5
6if [ -d "${HERE}../engines" -a "x$OPENSSL_ENGINES" = "x" ]; then
7	OPENSSL_ENGINES="${HERE}../engines"; export OPENSSL_ENGINES
8fi
9if [ -d "${HERE}../providers" -a "x$OPENSSL_MODULES" = "x" ]; then
10	OPENSSL_MODULES="${HERE}../providers"; export OPENSSL_MODULES
11fi
12
13if [ -x "${OPENSSL}.exe" ]; then
14	# The original reason for this script existence is to work around
15	# certain caveats in run-time linker behaviour. On Windows platforms
16	# adjusting $PATH used to be sufficient, but with introduction of
17	# SafeDllSearchMode in XP/2003 the only way to get it right in
18	# *all* possible situations is to copy newly built .DLLs to apps/
19	# and test/, which is now done elsewhere... The $PATH is adjusted
20	# for backward compatibility (and nostagical reasons:-).
21	if [ "$OSTYPE" != msdosdjgpp ]; then
22		PATH="${HERE}..:$PATH"; export PATH
23	fi
24	exec "${OPENSSL}.exe" "$@"
25elif [ -x "${OPENSSL}" -a -x "${HERE}shlib_wrap.sh" ]; then
26	exec "${HERE}shlib_wrap.sh" "${OPENSSL}" "$@"
27else
28	exec "${OPENSSL}" "$@"	# hope for the best...
29fi
30