summaryrefslogtreecommitdiff
path: root/testing/test_keychange.sh
blob: 9259fe5f23de4aa0f9d21cfec5435115cb19b827 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/bin/sh
#
# test_keychange.sh
#
# Number of SUCCESSes:  3
#
#
# Run test of KeyChange TC against data given by Bert Wijnen in email.
#
# NOTE	The snmp_debug flag bit DEBUG_RANDOMZEROS in file snmplib/debug.h
#	MUST be set before compiling and linking libsnmp.a to testing/ktest
#	for this to succeed.
#


. eval_tools.sh

VERIFY ktest

STARTTEST


#------------------------------------ -o- 
# Declarations.
#
DATAFILE_PREFIX=data.keychange-
DATAFILE_SUFFIXES="md5 sha1 sha1-des"

oldkul=
newkul=
keychangestring=



#------------------------------------ -o- 
# Test.
#
for dfs in $DATAFILE_SUFFIXES; do
	OUTPUT "== Test of KeyChange TC correctness for \"$dfs\"."

	set x `awk '{ print $1 }' ${DATAFILE_PREFIX}$dfs`
	shift

	[ $# -lt 3 ] && FAILED 1 \
	    "Wrong number of lines ($#) in datafile \"$DATAFILE_PREFIX}$dfs\"."

	oldkey=$1
	newkey=$2
	keychangestring=$3

	CAPTURE "ktest -k -O $oldkey -N $newkey"
	FAILED $? "ktest"

	CHECKEXACT $keychangestring
	[ $? -eq 1 ]
	FAILED $? "Proper KeyChange string was not generated."


	SUCCESS "KeyChange TC correctness test for \"$dfs\"."
done




#------------------------------------ -o- 
# Cleanup, exit.
#
STOPTEST

exit $failcount