summaryrefslogtreecommitdiff
path: root/ngircd/src/testsuite/stop-server.sh
blob: c5a9486c4797a90a1a66c8fb10088be4cc479f6d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/bin/sh
# ngIRCd Test Suite

[ -z "$srcdir" ] && srcdir=`dirname "$0"`
set -u

# read in functions
. "${srcdir}/functions.inc"

if [ -n "$1" ]; then
	id="$1"; shift
else
	id="1"
fi

echo_n "stopping server ${id} ..."

# stop test-server ...
pid=`./getpid.sh T-ngircd${id}`
if [ -z "$pid" ]; then
	echo " failure: no running server found!?"
	exit 1
fi
kill $pid >/dev/null 2>&1 || exit 1

# waiting ...
for i in 1 2 3 4 5; do
	kill -0 $pid >/dev/null 2>&1; r=$?
	if [ $r -ne 0 ]; then
		echo " ok".
		exit 0
	fi
	sleep 1
done
echo " failure: server ${id} still running!?"
exit 1