|
Packit |
fcad23 |
#!/bin/sh
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
. ../support/simple_eval_tools.sh
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
HEADER com2sec directive
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
SKIPIFNOT NETSNMP_TRANSPORT_UDP_DOMAIN
|
|
Packit |
fcad23 |
SKIPIF NETSNMP_NO_DEBUGGING
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
# Begin test
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# 401a Test missing CONTEXT
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec -Cn'
|
|
Packit |
fcad23 |
# 401b Test empty CONTEXT
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec -Cn ""'
|
|
Packit |
fcad23 |
# 401c Test overlong CONTEXT (33 chars)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec -Cn 123456789012345678901234567890123 secname default com'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# 402a Test missing secName
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec'
|
|
Packit |
fcad23 |
# 402b Test empty secName
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec ""'
|
|
Packit |
fcad23 |
# 402c Test overlong secName (33 chars)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec 123456789012345678901234567890123 default com'
|
|
Packit |
fcad23 |
# 402d Test valid context and missing secName
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec -Cn 12345678901234567890123456789012'
|
|
Packit |
fcad23 |
# 402e Test valid context and empty secName
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec -Cn 12345678901234567890123456789012 ""'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# 403a Test missing network address
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t403a'
|
|
Packit |
fcad23 |
# 403b Test empty network address
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t403b ""'
|
|
Packit |
fcad23 |
# 403c Test forbidden value (now why it is forbidden...)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t403c NETWORK'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# 404a Test missing community
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t404a default'
|
|
Packit |
fcad23 |
# 404b Test empty community
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t404b default ""'
|
|
Packit |
fcad23 |
# 404c Test forbidden value (now why it is forbidden...)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t404c default COMMUNITY'
|
|
Packit |
fcad23 |
# 404d Test overlong community (255 chars)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t404d default 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567'
|
|
Packit |
fcad23 |
# 404e Test valid community
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t404e default 1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# 405a Test 'default' configuration
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405a default c405a'
|
|
Packit |
fcad23 |
# 405b Test ip address configuration
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405b 10.0.0.0 c405b'
|
|
Packit |
fcad23 |
# 405c Test valid numeric mask
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405c 10.0.0.0/8 c405c'
|
|
Packit |
fcad23 |
# 405d Test invalid numeric mask (too big)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405d 10.0.0.0/33 c405d'
|
|
Packit |
fcad23 |
# 405e Test invalid numeric mask (negative)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405e 10.0.0.0/-1 c405e'
|
|
Packit |
fcad23 |
# 405f Test valid ip address mask
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405f 10.0.0.0/255.0.0.0 c405f'
|
|
Packit |
fcad23 |
# 405g Test invalid ip address mask
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405g 10.0.0.0/512.0.0.0 c405g'
|
|
Packit |
fcad23 |
# 405h Test invalid ip address mask
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405h 10.0.0.0/hh c405h'
|
|
Packit |
fcad23 |
# 405i Test address with 1 bits not covered by the mask
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405i 10.0.0.0/3.192.0.0 c405i'
|
|
Packit |
fcad23 |
# 405j Test that 0.0.0.0 works (alias for default)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405j 0.0.0.0 c405j'
|
|
Packit |
fcad23 |
# 405k Test that 0.0.0.0/0 works (alias for default)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405k 0.0.0.0/0 c405k'
|
|
Packit |
fcad23 |
# 405l Test that 0.0.0.0/0.0.0.0 works (alias for default)
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t405l 0.0.0.0/0.0.0.0 c405l'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# 406a Test maximally long address/mask
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t406a 255.255.255.255/255.255.255.255 c406a'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# 407a Test non existant host name
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t407a no.such.address. c407a'
|
|
Packit |
fcad23 |
# 407b Test maximally long host name/mask
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t407b a23456789012345678901234567890123456789012345678901234567890123.a23456789012345678901234567890123456789012345678901234567890123.a23456789012345678901234567890123456789012345678901234567890123.a234567890123456789012345678901234567890123456789012345678901./255.255.255.255 c407b'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# 408 Lookup tests, require network access
|
|
Packit |
fcad23 |
# 408a Test lookup returning a single host
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t408a onea.net-snmp.org c408a'
|
|
Packit |
fcad23 |
# 408a Test lookup returning multiple hosts
|
|
Packit |
fcad23 |
CONFIGAGENT 'com2sec t408b twoa.net-snmp.org c408b'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Default agent setup
|
|
Packit |
fcad23 |
CONFIGAGENT "[snmp] persistentdir $SNMP_TMP_PERSISTENTDIR"
|
|
Packit |
fcad23 |
# Dummy config to prevent the basic_setup warning
|
|
Packit |
fcad23 |
CONFIGAGENT 'rocommunity public 127.0.0.0/8'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AGENT_FLAGS='-Dnetsnmp_udp_parse_security,netsnmp_udp6_parse_security,netsnmp_unix_parse_security'
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
STARTAGENT
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
SAVECHECKAGENT() {
|
|
Packit |
fcad23 |
CHECKAGENT "$@"
|
|
Packit |
fcad23 |
if [ "x$return_value" != "x0" ] ; then
|
|
Packit |
fcad23 |
FINISHED
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
}
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 1: Error: missing CONTEXT_NAME parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 2: Error: missing NAME parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 3: Error: context name too long'
|
|
Packit |
fcad23 |
CHECKAGENTCOUNT atleastone 'line 4: Error: Blank line following com2sec token.'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 5: Error: empty NAME parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 6: Error: security name too long'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 7: Error: missing NAME parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 8: Error: empty NAME parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 9: Error: missing SOURCE parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 10: Error: empty SOURCE parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 11: Error: example config NETWORK not properly configured'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 12: Error: missing COMMUNITY parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 13: Error: empty COMMUNITY parameter'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 14: Error: example config COMMUNITY not properly configured'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 15: Error: community name too long'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456", 0.0.0.0/0.0.0.0> => "t404e"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"c405a", 0.0.0.0/0.0.0.0> => "t405a"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"c405b", 10.0.0.0/255.255.255.255> => "t405b"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"c405c", 10.0.0.0/255.0.0.0> => "t405c"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 20: Error: bad mask length'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 21: Error: bad mask length'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"c405f", 10.0.0.0/255.0.0.0> => "t405f"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 23: Error: bad mask'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 24: Error: bad mask'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 25: Error: source/mask mismatch'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"c405j", 0.0.0.0/255.255.255.255> => "t405j"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"c405k", 0.0.0.0/0.0.0.0> => "t405k"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"c405l", 0.0.0.0/0.0.0.0> => "t405l"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT '<"c406a", 255.255.255.255/255.255.255.255> => "t406a"'
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 30: Error:' # msg from h_strerror so it varies
|
|
Packit |
fcad23 |
SAVECHECKAGENT 'line 31: Error:' # msg from h_strerror so it varies
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
CHECKAGENT '<"c408a"'
|
|
Packit |
fcad23 |
if [ "$snmp_last_test_result" -eq 0 ] ; then
|
|
Packit |
fcad23 |
CHECKAGENT 'line 32: Error:'
|
|
Packit |
fcad23 |
if [ "$snmp_last_test_result" -ne 1 ] ; then
|
|
Packit |
fcad23 |
return_value=1
|
|
Packit |
fcad23 |
FINISHED
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
elif [ "$snmp_last_test_result" -ne 1 ] ; then
|
|
Packit |
fcad23 |
return_value=1
|
|
Packit |
fcad23 |
FINISHED
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
CHECKAGENT '<"c408b"'
|
|
Packit |
fcad23 |
if [ "$snmp_last_test_result" -eq 0 ] ; then
|
|
Packit |
fcad23 |
CHECKAGENT 'line 33: Error:'
|
|
Packit |
fcad23 |
if [ "$snmp_last_test_result" -ne 1 ] ; then
|
|
Packit |
fcad23 |
return_value=1
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
elif [ "$snmp_last_test_result" -ne 1 ] ; then
|
|
Packit |
fcad23 |
return_value=1
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
FINISHED
|