| #!/bin/sh |
| # |
| # Check the library fingerprint and generate an executable fingerprint, or |
| # return an error |
| |
| lib=$1 |
| exe=$2 |
| ext=${HMAC_EXT:-sha1} |
| |
| # deal with the case where we're run from within the build and OpenSSL is |
| # not yet installed. Also, make sure LD_LIBRARY_PATH is properly set in |
| # case shared libraries are built. |
| if [ "X$TOP" != "X" ] |
| then |
| if test "$OSTYPE" = msdosdjgpp; then |
| PATH="$TOP/apps;$TOP;$PATH" |
| else |
| PATH="$TOP/apps:$TOP:$PATH" |
| fi |
| LD_LIBRARY_PATH=$TOP; export LD_LIBRARY_PATH |
| else |
| LD_LIBRARY_PATH=.; export LD_LIBRARY_PATH |
| fi |
| |
| echo "Checking library fingerprint for $lib" |
| openssl sha1 -hmac etaonrishdlcupfm $lib | sed "s/(.*\//(/" | diff -w $lib.sha1 - || { echo "$libs fingerprint mismatch"; exit 1; } |
| |
| [ -x $exe.exe ] && exe=$exe.exe |
| |
| echo "Making fingerprint for $exe" |
| openssl sha1 -hmac etaonrishdlcupfm -binary $exe > $exe.$ext || rm $exe.$ext |