blob: 360a8631b54dc699ecead793118ab99290c9ff62 [file] [log] [blame]
#!/bin/bash
set -e
CLIENT=../samples/client
SERVER=../samples/server
test -n "$1" && CLIENT="$1"
test -n "$2" && SERVER="$2"
#
# ASAN and valgrind, understandably, don't get along.
#
if [ "$WITH_ASAN" = 1 ]; then
valgrind=""
else
valgrind="valgrind --quiet --trace-children=yes --error-exitcode=1 --leak-check=full --read-inline-info=yes --read-var-info=yes --track-origins=yes"
fi
sock="/tmp/vfio-user.sock"
rm -f ${sock}*
${valgrind} $SERVER -v ${sock} &
while [ ! -S ${sock} ]; do
sleep 0.1
done
${valgrind} $CLIENT ${sock} || {
kill $(jobs -p)
exit 1
}
wait