#!/bin/sh # Testing this script is possible by running e.g. the following commands: # srcdir=/z/software/net-snmp/trunk builddir=/z/software/net-snmp/trunk-mingw # cd $builddir/testing # TRAPD_FLAGS="-Dsnmptrapd -Drun:shell" $srcdir/testing/fulltests/support/simple_run $srcdir/testing/fulltests/default/T059trapdtraphandle_simple # "inline" trap handler if [ "x$1" = "xtraphandle" ]; then cat - >>"$2" exit 0 fi . ../support/simple_eval_tools.sh TRAPHANDLE_LOGFILE=${SNMP_TMPDIR}/traphandle.log HEADER snmptrapd traphandle: launching external shell script SKIPIF NETSNMP_DISABLE_SNMPV2C SKIPIFNOT USING_UTILITIES_EXECUTE_MODULE SKIPIFNOT HAVE_SIGHUP # # Begin test # snmp_version=v2c TESTCOMMUNITY=testcommunity # Make the paths of arguments $0 and $1 absolute. NETSNMPDIR="`pwd`" NETSNMPDIR="`dirname ${NETSNMPDIR}`" NETSNMPDIR="`dirname ${NETSNMPDIR}`" NETSNMPDIR="`dirname ${NETSNMPDIR}`" if [ "`echo $1|cut -c1`" = "/" ]; then traphandle_arg="$1" else traphandle_arg="${NETSNMPDIR}/$1" fi CONFIGTRAPD [snmp] persistentDir $SNMP_TMP_PERSISTENTDIR CONFIGTRAPD [snmp] tempFilePattern /tmp/snmpd-tmp-XXXXXX CONFIGTRAPD authcommunity execute $TESTCOMMUNITY CONFIGTRAPD doNotLogTraps true if [ "x$OSTYPE" = "xmsys" ]; then CONFIGTRAPD traphandle default $MSYS_SH -c "'" $traphandle_arg traphandle $TRAPHANDLE_LOGFILE "'" else CONFIGTRAPD traphandle default $traphandle_arg traphandle $TRAPHANDLE_LOGFILE fi CONFIGTRAPD agentxsocket /dev/null STARTTRAPD ## 1) test notification handler CAPTURE "snmptrap -d -Ci -t $SNMP_SLEEP -$snmp_version -c $TESTCOMMUNITY $SNMP_TRANSPORT_SPEC:$SNMP_TEST_DEST$SNMP_SNMPTRAPD_PORT 0 .1.3.6.1.6.3.1.1.5.1 .1.3.6.1.2.1.1.4.0 s handled_inform_$snmp_version" DELAY CHECKORDIE "handled_inform_$snmp_version" $TRAPHANDLE_LOGFILE ## 2) persistency: reconfigure (SIGHUP), re-test HUPTRAPD CAPTURE "snmptrap -d -Ci -t $SNMP_SLEEP -$snmp_version -c $TESTCOMMUNITY $SNMP_TRANSPORT_SPEC:$SNMP_TEST_DEST$SNMP_SNMPTRAPD_PORT 0 .1.3.6.1.6.3.1.1.5.1 .1.3.6.1.2.1.1.4.0 s handled_inform2_$snmp_version" DELAY CHECKORDIE "handled_inform2_$snmp_version" $TRAPHANDLE_LOGFILE ## stop STOPTRAPD FINISHED