unit_tests/duma_tests.sh
c82d362e
 #!/bin/sh
 # Run under duma
c2b4740c
 test "x$RUNDUMA" = "x1" || { echo "*** duma tests skipped by default, use 'make check RUNDUMA=1' to activate (but don't report bugs about timeouts!)"; exit 77; }
9adefc19
 LIBDIRS=`../libtool --config | grep sys_lib_search_path_spec | sed -e 's/.*"\(.*\)"/\1/'`
73aeb57e
 if test -z "$LIBDUMA"; then
a11bc7f3
 	for i in $LIBDIRS; do
9adefc19
 		if test -f "$i/libduma.so"; then
 			LIBDUMA="$i/libduma.so"
73aeb57e
 			break;
 		fi
 	done
 fi
c82d362e
 test -f "$LIBDUMA" || { echo "*** duma not found, skipping test"; exit 77;}
 DUMA_FILL=90
 DUMA_MALLOC_0_STRATEGY=1
 DUMA_OUTPUT_FILE=duma.log
 DUMA_DISABLE_BANNER=1
 LIBPRELOAD="$LIBDUMA"
 rm -f duma.log
a7d064d8
 export CK_DEFAULT_TIMEOUT=40
c82d362e
 export DUMA_FILL DUMA_MALLOC_0_STRATEGY DUMA_OUTPUT_FILE DUMA_DISABLE_BANNER LIBPRELOAD
5a87c990
 echo "--- starting clamd under duma to detect overruns"
a7d064d8
 CLAMD_WRAPPER=$abs_srcdir/preload_run.sh $abs_srcdir/check_clamd.sh
 if test $? -ne 0; then
 	echo "*** DUMA has detected errors"
 	cat duma.log
 	rm -f duma.log duma2.log
 	exit 1
 fi
f45111e5
 
 echo "--- starting clamd under duma to detect underruns"
 DUMA_OUTPUT_FILE=duma2.log
c82d362e
 DUMA_PROTECT_BELOW=1
 export DUMA_PROTECT_BELOW
f45111e5
 rm -f duma2.log
a7d064d8
 CLAMD_TEST_UNIQ1=3 CLAMD_TEST_UNIQ2=4 CLAMD_WRAPPER=$abs_srcdir/preload_run.sh $abs_srcdir/check_clamd.sh
 if test $? -ne 0; then
f45111e5
 	echo "*** DUMA has detected errors"
 	cat duma2.log
 	rm -f duma.log duma2.log
 	exit 1
 fi
 exit 0