1122394Sharti#!/bin/sh 2122394Sharti# 3122394Sharti# Copyright (c) 2001-2003 4122394Sharti# Fraunhofer Institute for Open Communication Systems (FhG Fokus). 5122394Sharti# All rights reserved. 6122394Sharti# 7122394Sharti# Author: Harti Brandt <harti@freebsd.org> 8133211Sharti# 9133211Sharti# Redistribution and use in source and binary forms, with or without 10133211Sharti# modification, are permitted provided that the following conditions 11133211Sharti# are met: 12133211Sharti# 1. Redistributions of source code must retain the above copyright 13133211Sharti# notice, this list of conditions and the following disclaimer. 14122394Sharti# 2. Redistributions in binary form must reproduce the above copyright 15122394Sharti# notice, this list of conditions and the following disclaimer in the 16122394Sharti# documentation and/or other materials provided with the distribution. 17133211Sharti# 18133211Sharti# THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND 19133211Sharti# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20133211Sharti# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21133211Sharti# ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE 22133211Sharti# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23133211Sharti# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24133211Sharti# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25133211Sharti# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26133211Sharti# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27133211Sharti# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28133211Sharti# SUCH DAMAGE. 29122394Sharti# 30133211Sharti# $Begemot: bsnmp/snmpd/snmpd.sh,v 1.3 2004/08/06 08:47:13 brandt Exp $ 31122394Sharti# 32122394Sharti# SNMPd startup script 33122394Sharti# 34122394ShartiSNMPD=/usr/local/bin/bsnmpd 35122394ShartiPID=/var/run/snmpd.pid 36122394ShartiCONF=/etc/snmpd.conf 37122394Sharti 38122394Sharticase "$1" in 39122394Sharti 40122394Shartistart) 41122394Sharti if [ -r ${PID} ] ; then 42122394Sharti if kill -0 `cat ${PID}` ; then 43122394Sharti echo "snmpd already running -- pid `cat ${PID}`" >/dev/stderr 44122394Sharti exit 1 45122394Sharti fi 46122394Sharti rm -f ${PID} 47122394Sharti fi 48122394Sharti if ${SNMPD} -c ${CONF} -p ${PID} ; then 49122394Sharti echo "snmpd started" 50122394Sharti fi 51122394Sharti ;; 52122394Sharti 53122394Shartistop) 54122394Sharti if [ -r ${PID} ] ; then 55122394Sharti if kill -0 `cat ${PID}` ; then 56122394Sharti if kill -15 `cat ${PID}` ; then 57122394Sharti echo "snmpd stopped" 58122394Sharti exit 0 59122394Sharti fi 60122394Sharti echo "cannot kill snmpd" >/dev/stderr 61122394Sharti exit 1 62122394Sharti fi 63122394Sharti echo "stale pid file -- removing" >/dev/stderr 64122394Sharti rm -f ${PID} 65122394Sharti exit 1 66122394Sharti fi 67122394Sharti echo "snmpd not running" >/dev/stderr 68122394Sharti ;; 69122394Sharti 70122394Shartistatus) 71122394Sharti if [ ! -r ${PID} ] ; then 72122394Sharti echo "snmpd not running" 73122394Sharti elif kill -0 `cat ${PID}` ; then 74122394Sharti echo "snmpd pid `cat ${PID}`" 75122394Sharti else 76122394Sharti echo "stale pid file -- pid `cat ${PID}`" 77122394Sharti fi 78122394Sharti ;; 79122394Sharti 80122394Sharti*) 81122394Sharti echo "usage: `basename $0` {start|stop|status}" 82122394Sharti exit 1 83122394Shartiesac 84122394Sharti 85122394Shartiexit 0 86