- use "$RUN_SUDO kill -0 $pid" to test if a given process is running, not
"ps -p $pid" - the latter will not work if security.bsd.see_other_uids=0
is set
- produce proper error messages if pid files can not be found or are
empty at server shutdown time
Acked-by: Frank Lichtenheld <frank@lichtenheld.com>
Message-Id: <
20240918162917.6809-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg29314.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
# the active server count as the processes won't be running.
for i in `set|grep 'SERVER_NAME_'|cut -d "=" -f 2|tr -d "[\']"`; do
server_pid=$(cat $i.pid 2> /dev/null)
- if ps -p $server_pid > /dev/null 2>&1; then
+ if [ -z "$server_pid" ] ; then
+ continue
+ fi
+ if $RUN_SUDO kill -0 $server_pid > /dev/null 2>&1; then
servers_up=$(( $servers_up + 1 ))
fi
done
do
SERVER_PID=$(cat "${PID_FILE}")
+ if [ -z "$SERVER_PID" ] ; then
+ echo "WARNING: could not kill server ${PID_FILE}!"
+ continue
+ fi
+
if [ -z "${RUN_SUDO}" ]; then
$KILL_EXEC "${SERVER_PID}"
else