138494Sobrien#!/bin/sh
238494Sobrien# wait for amd to die on local host before returning from program.
338494Sobrien# Usage: wait4amd2die [delay [count]]
438494Sobrien# If not specified, delay=5 seconds and count=6 (total 30 seconds)
538494Sobrien# If at end of total delay amd is till up, return 1; else return 0.
638494Sobrien#
7174294Sobrien# Package:	am-utils-6.x
838494Sobrien# Author:	Erez Zadok <ezk@cs.columbia.edu>
938494Sobrien
1038494Sobrien#set -x
1138494Sobrien
1238494Sobrien# set path
1338494Sobrienprefix=@prefix@
1438494Sobrienexec_prefix=@exec_prefix@
1538494SobrienPATH=@sbindir@:@bindir@:/usr/bin:/bin:${PATH}
1638494Sobrienexport PATH
1738494Sobrien
1838494Sobrien# how long to wait?
1938494Sobrienif test -n "$1"
2038494Sobrienthen
2138494Sobrien	delay=$1
2238494Sobrienelse
23174294Sobrien	delay=3
2438494Sobrienfi
2538494Sobrien# how many times to delay
2638494Sobrienif test -n "$2"
2738494Sobrienthen
2838494Sobrien	count=$2
2938494Sobrienelse
30174294Sobrien	count=10
3138494Sobrienfi
3238494Sobrien
3338494Sobrieni=1
3438494Sobrienmaxcount=`expr $count + 1`
3538494Sobrienwhile [ $i != $maxcount ]; do
3638494Sobrien	# run amq
3738494Sobrien	@sbindir@/amq > /dev/null 2>&1
3838494Sobrien	if [ $? != 0 ]
3938494Sobrien	then
4038494Sobrien		# amq failed to run (because amd is dead)
4138494Sobrien		echo "wait4amd2die: amd is down!"
4238494Sobrien		exit 0
4338494Sobrien	fi
4438494Sobrien	echo "wait4amd2die: delay $delay sec ($i of $count)..."
4538494Sobrien	sleep $delay
4638494Sobrien	i=`expr $i + 1`
4738494Sobriendone
4838494Sobrienecho "wait4amd2die: amd is still up..."
4938494Sobrienexit 1
50