oi-extras/net-snmp/sun/masfd
author Andrzej Szeszo <aszeszo@gmail.com>
Wed, 22 Jun 2011 00:51:55 +0100
branchoi-extras
changeset 215 6eb7b62e444c
permissions -rw-r--r--
Added libusb and net-snmp packages
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
215
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     1
#
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     2
# Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     3
#
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     4
# ident  "@(#)masfd	1.5 03/06/25 SMI"
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     5
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     6
SUNWMASF_PKGLIB=`pkgparam SUNWmasf BASEDIR`
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     7
SNMPD=$SUNWMASF_PKGLIB/SUNWmasf/sbin/snmpd
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     8
SUNWMASF_PKGLIB=$SUNWMASF_PKGLIB/SUNWmasf/lib
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
     9
CONF_FILE=/etc/opt/SUNWmasf/conf/snmpd.conf
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    10
TIMEOUT=5
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    11
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    12
if [ ! -f ${CONF_FILE} ]; then
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    13
	exit 0
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    14
fi
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    15
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    16
export SUNWMASF_PKGLIB
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    17
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    18
PATTERN=`echo $SNMPD | sed 's/\\//\\\\\\//g'` 
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    19
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    20
is_running() {
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    21
        /usr/bin/pgrep -x -f "$PATTERN -X"> /dev/null 2>&1 
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    22
}
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    23
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    24
case "$1" in
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    25
start)
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    26
        if is_running ; then
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    27
                echo "Agent already running" >&2
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    28
                exit 1
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    29
        else
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    30
		{
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    31
                        # allow time for agentX master agent to open socket
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    32
			sleep 30
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    33
	        	$SNMPD -X > /dev/null 2>&1
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    34
		} &
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    35
        fi
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    36
	;;
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    37
stop)
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    38
        TIME=0
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    39
	/usr/bin/pkill -x -f "$PATTERN -X"
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    40
        # Allow time for final poll to complete, before relinquishing control
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    41
        # and allowing picld to be stopped
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    42
        while is_running && [ $TIME -lt $TIMEOUT ] ; do
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    43
                sleep 1
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    44
                TIME=`/usr/bin/expr $TIME + 1`
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    45
        done
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    46
	;;
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    47
*)
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    48
	echo "Usage: $0 {start|stop}" >&2
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    49
	exit 1
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    50
	;;
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    51
esac
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    52
6eb7b62e444c Added libusb and net-snmp packages
Andrzej Szeszo <aszeszo@gmail.com>
parents:
diff changeset
    53
exit 0