16654de8547d2e420c20e21980669b807aa80710ephilippe#! /bin/sh 26654de8547d2e420c20e21980669b807aa80710ephilippe 36654de8547d2e420c20e21980669b807aa80710ephilippe# send_signal sends signal $1 to the Valgrind process using prefix $2 in $3 seconds 46f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe# If there are some args after $3, the rest of these args is a command and its arg 56f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe# which is run every second. When this command is succesful, then the sleep and 66f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe# the signal sending is done 76654de8547d2e420c20e21980669b807aa80710ephilippeSIG=$1 86654de8547d2e420c20e21980669b807aa80710ephilippeshift 96654de8547d2e420c20e21980669b807aa80710ephilippePREFIX=$1 106654de8547d2e420c20e21980669b807aa80710ephilippeshift 116654de8547d2e420c20e21980669b807aa80710ephilippeSLEEP=$1 126654de8547d2e420c20e21980669b807aa80710ephilippeshift 136f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippeGUARDCMD="$@" 146f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippeif [ "$GUARDCMD" = "" ] 156f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippethen 166f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe GUARDCMD="true" 176f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippefi 186654de8547d2e420c20e21980669b807aa80710ephilippeVPID=`./vgdb -l $PREFIX 2>&1 | awk '{print $2}' | sed -e 's/--pid=//'` 196654de8547d2e420c20e21980669b807aa80710ephilippeif [ "$VPID" = "" ] 206654de8547d2e420c20e21980669b807aa80710ephilippethen 216654de8547d2e420c20e21980669b807aa80710ephilippe echo "send_signal could not determine the valgrind pid with " $PREFIX 226654de8547d2e420c20e21980669b807aa80710ephilippe exit 1 236654de8547d2e420c20e21980669b807aa80710ephilippefi 246f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe(while ! $GUARDCMD >> garbage.filtered.out 2>&1 256f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe do 266f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe sleep 1 276f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe done 286f3f85987f260b3e067ac1ede85ecf22c96e4fe6philippe sleep $SLEEP 2990afa78f34e0f7b1921aecd0e9a1551783bb2802philippe echo sending signal 306654de8547d2e420c20e21980669b807aa80710ephilippe kill -s $SIG $VPID) & 31