session.t
上传用户:wxp200602
上传日期:2007-10-30
资源大小:4028k
文件大小:3k
- #!./perl
- BEGIN {
- unless(grep /blib/, @INC) {
- chdir 't' if -d 't';
- @INC = '../lib' if -d '../lib';
- }
- }
- use Test;
- BEGIN { plan tests => 5}
- use SNMP;
- use vars qw($agent_port $comm $agent_host $bad_auth_pass $auth_pass $sec_name $bad_sec_name $bad_version $bad_priv_pass $priv_pass);
- require "t/startagent.pl";
- $SNMP::debugging = 0;
- # create list of varbinds for GETS, val field can be null or omitted
- my $vars = new SNMP::VarList (
- ['sysDescr', '0', ''],
- ['sysContact', '0'],
- ['sysName', '0'],
- ['sysLocation', '0'],
- ['sysServices', '0'],
- ['ifNumber', '0'],
- ['ifDescr', '1'],
- ['ifSpeed', '1'],
- );
- #########################== 1 ===#########################################
- # Create a bogus session, undef means the host can't be found.
- # removed! this test can hang for a long time if DNS is not functioning
- # my $s1 = new SNMP::Session (DestHost => $bad_host );
- # ok(!defined($s1));
- #print("n");
- #####################== 2 ====############################################
- # Fire up a session.
- my $s2 =
- new SNMP::Session (DestHost=>$agent_host, Community=>$comm,
- RemotePort=>$agent_port);
- ok(defined($s2));
- ######################== 3 ==== ##########################################
- # Fire up a V3 session
- my $s3 = new SNMP::Session (Version => 3 , RemotePort => $agent_port,
- SecName => $sec_name );
- ok(defined($s3));
- #print STDERR "Error string1 = $s3->{ErrorStr}:$s3->{ErrorInd}n";
- #print("n");
- #####################=== 4 ====###########################################
- #create a V3 session by setting an IP address/port not running an agent
- my $s4 = new SNMP::Session (Version => 3, RemotePort => 1002, Retries => 0);
- # engineId discovery should fail resulting in session creation failure (undef)
- ok(!defined($s4));
- #print STDERR "Error string1 = $s4->{ErrorStr}:$s4->{ErrorInd}n";
- #print("n");
- ###################### 5 ###########################################
- #create a session with bad version
- my $s5 = new SNMP::Session (Version=>$bad_version);
- ok(!defined($s5));
- #print("n");
- ######################## 6 ########################################
- #Test for v3 session creation success
- my $s6 = new SNMP::Session (Version => 3, RemotePort => $agent_port,
- SecLevel => 'authPriv',
- SecName => $sec_name,
- PrivPass => $priv_pass,
- AuthPass => $auth_pass);
- ok(defined($s6));
- #print STDERR "Error string2 = $s6->{ErrorStr}:$s6->{ErrorInd}n";
- #print("n");
- ##################### 7 ############################################
- snmptest_cleanup();