#!/bin/sh
#****************************************************************
# *	Copyright (C) 2003, Wistron Inc.  All Rights Reserved.
# *	File Name:		wprocdagent
# *	Author:			Jerry Zhou
# *	Create Time: 	2003-08-14 17:18:49
# *	Last Update: 	2003-08-14 17:18:49
#****************************************************************
armc_server=/etc/init.d/armc_server
wasm6p_server=/etc/init.d/wasm6p_server
snmp_server=/etc/init.d/snmpd
lock_file=/var/lock/subsys/wprocd
prepid=nonepid

restartservice()
{
#####	if [ -e $armc_server ] ; then
#####		$armc_server stop 1>/dev/null 2>/dev/null
#####	fi
	if [ -e $wasm6p_server ] ; then
		$wasm6p_server stop 1>/dev/null 2>/dev/null
	fi
	if [ -e $snmp_server ] ; then
		$snmp_server stop 1>/dev/null 2>/dev/null
	fi
	if [ -e $wasm6p_server ] ; then
		sleep 1
		$wasm6p_server start 1>/dev/null 2>/dev/null
	fi
#####	if [ -e $armc_server ] ; then
#####		sleep 2
#####		$armc_server start 1>/dev/null 2>/dev/null
#####	fi
}

if [ -e $lock_file ] ; then
	prepid=`cat $lock_file`
	if [ -z prepid ] ; then
		prepid=nonepid
	fi
fi
if ps -A|grep $prepid 1>/dev/null 2>/dev/null ; then
	exit 0
else
	echo $$ > $lock_file 2>/dev/null
	while true
	do
		while true
		do
			if snmpget -c public -v 1 localhost .1.3.6.1.4.1.1050.200.2.0 2>/dev/null | grep "1050\.200\.2\.0" 1>/dev/null 2>/dev/null ; then
				break
			else
				restartservice
			fi
		done
		sleep 30
	done
fi
exit 0