blob: 4dce7278154adfcac96846047d7e71e3b305fff2 [file] [log] [blame]
#!/bin/sh
. ../eval_tools.sh
HEADER AgentX illegal SET handling support
SKIPIFNOT USING_AGENTX_MASTER_MODULE
SKIPIFNOT USING_AGENTX_SUBAGENT_MODULE
SKIPIFNOT USING_MIBII_SYSTEM_MIB_MODULE
SKIPIF NETSNMP_DISABLE_SET_SUPPORT
#
# Begin test
#
# standard V3 configuration for initial user
. ./Sv3config
# Start the agent without initializing the system mib.
if [ "x$SNMP_TRANSPORT_SPEC" = "xunix" ];then
ORIG_AGENT_FLAGS="$AGENT_FLAGS -x $SNMP_TMPDIR/agentx_socket"
else
ORIG_AGENT_FLAGS="$AGENT_FLAGS -x tcp:${SNMP_TEST_DEST}${SNMP_AGENTX_PORT}"
fi
AGENT_FLAGS="$ORIG_AGENT_FLAGS -I -system_mib -DAgentX"
STARTAGENT
# test to see that the current agent doesn't support the system mib
CAPTURE "snmpget -On -t 3 $SNMP_FLAGS $AUTHTESTARGS $SNMP_TRANSPORT_SPEC:$SNMP_TEST_DEST$SNMP_SNMPD_PORT system.sysContact.0"
CHECK ".1.3.6.1.2.1.1.4.0 = No Such Object"
if test "$snmp_last_test_result" = 1; then
# test the AgentX subagent by first running it...
SNMP_SNMPD_PID_FILE_ORIG=$SNMP_SNMPD_PID_FILE
SNMP_SNMPD_LOG_FILE_ORIG=$SNMP_SNMPD_LOG_FILE
SNMP_SNMPD_PID_FILE=$SNMP_SNMPD_PID_FILE.num2
SNMP_SNMPD_LOG_FILE=$SNMP_SNMPD_LOG_FILE.num2
AGENT_FLAGS="$ORIG_AGENT_FLAGS -X -I system_mib"
SNMP_CONFIG_FILE="$SNMP_TMPDIR/bogus.conf"
STARTAGENT
# test to see that the agent now supports the system mib
CAPTURE "snmpget -On $SNMP_FLAGS -t 5 $AUTHTESTARGS $SNMP_TRANSPORT_SPEC:$SNMP_TEST_DEST$SNMP_SNMPD_PORT sysContact.0"
# we don't know the real value, unfortunately, so we test for what
# we should *not* get back.
CHECK ".1.3.6.1.2.1.1.4.0 = No Such Object"
if test "$snmp_last_test_result" = 0; then
# test to see that the agent now supports setting the system mib
CAPTURE "snmpset -On -Ir $SNMP_FLAGS -t 5 $AUTHTESTARGS $SNMP_TRANSPORT_SPEC:$SNMP_TEST_DEST$SNMP_SNMPD_PORT sysContact.0 i 4"
CHECK "wrongType"
fi
# stop the subagent
STOPAGENT
SNMP_SNMPD_PID_FILE=$SNMP_SNMPD_PID_FILE_ORIG
SNMP_SNMPD_LOG_FILE=$SNMP_SNMPD_LOG_FILE_ORIG
fi
# stop the master agent
STOPAGENT
# all done (whew)
FINISHED