Allow tcrypt test to run under valgrind.

This commit is contained in:
Milan Broz
2021-05-24 12:08:41 +02:00
parent 702f9b1cf4
commit 2d0b19b359
2 changed files with 19 additions and 0 deletions

View File

@@ -145,6 +145,7 @@ valgrind-check: api-test api-test-2 differ
@INFOSTRING="api-test-002" ./valg-api.sh ./api-test-2 @INFOSTRING="api-test-002" ./valg-api.sh ./api-test-2
@VALG=1 ./luks2-reencryption-test @VALG=1 ./luks2-reencryption-test
@VALG=1 ./bitlk-compat-test @VALG=1 ./bitlk-compat-test
@VLAG=1 ./tcrypt-compat-test
@grep -l "ERROR SUMMARY: [^0] errors" valglog* || echo "No leaks detected." @grep -l "ERROR SUMMARY: [^0] errors" valglog* || echo "No leaks detected."
.PHONY: valgrind-check .PHONY: valgrind-check

View File

@@ -11,6 +11,9 @@ PASSWORD_HIDDEN="bbbbbbbbbbbb"
PASSWORD_72C="aaaaaaaaaaaabbbbbbbbbbbbccccccccccccddddddddddddeeeeeeeeeeeeffffffffffff" PASSWORD_72C="aaaaaaaaaaaabbbbbbbbbbbbccccccccccccddddddddddddeeeeeeeeeeeeffffffffffff"
PIM=1234 PIM=1234
CRYPTSETUP_VALGRIND=../.libs/cryptsetup
CRYPTSETUP_LIB_VALGRIND=../.libs
[ -z "$srcdir" ] && srcdir="." [ -z "$srcdir" ] && srcdir="."
function remove_mapping() function remove_mapping()
@@ -99,8 +102,23 @@ function test_required()
ls $TST_DIR/[tv]c* >/dev/null 2>&1 || skip "No remaining images." ls $TST_DIR/[tv]c* >/dev/null 2>&1 || skip "No remaining images."
} }
function valgrind_setup()
{
which valgrind >/dev/null 2>&1 || fail "Cannot find valgrind."
[ ! -f $CRYPTSETUP_VALGRIND ] && fail "Unable to get location of cryptsetup executable."
export LD_LIBRARY_PATH="$CRYPTSETUP_LIB_VALGRIND:$LD_LIBRARY_PATH"
}
function valgrind_run()
{
INFOSTRING="$(basename ${BASH_SOURCE[1]})-line-${BASH_LINENO[0]}" ./valg.sh ${CRYPTSETUP_VALGRIND} "$@"
}
export LANG=C export LANG=C
[ ! -d $TST_DIR ] && tar xJf $srcdir/tcrypt-images.tar.xz --no-same-owner [ ! -d $TST_DIR ] && tar xJf $srcdir/tcrypt-images.tar.xz --no-same-owner
[ -n "$VALG" ] && valgrind_setup && CRYPTSETUP=valgrind_run
test_required test_required
echo "HEADER CHECK" echo "HEADER CHECK"