From e0926ebfe55347843af701216be9598827a1367a Mon Sep 17 00:00:00 2001 From: David Sommerseth Date: Sat, 17 Sep 2016 12:20:26 +0300 Subject: [PATCH] t_client.sh: Make OpenVPN write PID file to avoid various sudo issues This resolves an issue where $! returns the PID of the sudo process instead of the PID of OpenVPN and when sudo does not properly propagate signales down to OpenVPN. Trac: #738 Signed-off-by: David Sommerseth Acked-by: Gert Doering Message-Id: <1474104026-20615-1-git-send-email-davids@openvpn.net> URL: http://www.mail-archive.com/search?l=mid&q=1474104026-20615-1-git-send-email-davids@openvpn.net Signed-off-by: Gert Doering --- tests/t_client.sh.in | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/t_client.sh.in b/tests/t_client.sh.in index 62d673071..fc82cdb7b 100755 --- a/tests/t_client.sh.in +++ b/tests/t_client.sh.in @@ -263,10 +263,14 @@ do continue fi + pidfile="${top_builddir}/tests/$LOGDIR/openvpn-$SUF.pid" + openvpn_conf="$openvpn_conf --writepid $pidfile" echo " run openvpn $openvpn_conf" echo "# src/openvpn/openvpn $openvpn_conf" >$LOGDIR/$SUF:openvpn.log $RUN_SUDO "${top_builddir}/src/openvpn/openvpn" $openvpn_conf >>$LOGDIR/$SUF:openvpn.log & - opid=$! + sleep 3 # Wait for OpenVPN to initialize and have had time to write the pid file + opid=`cat $pidfile` + echo " OpenVPN running with PID $opid" # make sure openvpn client is terminated in case shell exits trap "$RUN_SUDO kill $opid" 0 -- 2.47.2