4 unless(grep /blib/, @INC) {
6 @INC = '../lib' if -d '../lib';
11 BEGIN {plan tests => 20}
13 use vars qw($agent_port $comm $agent_host);
14 require "t/startagent.pl";
17 sub cb1; # forward reference
27 $SNMP::dump_packet = 0;
29 my $sess = new SNMP::Session(DestHost => $agent_host,
32 RemotePort => $agent_port);
34 # try getting unregistered OID.
35 my $result = $sess->get([["HooHaaHooHaa","0"]], [\&cbDummy, $sess]);
36 ok(!defined($result));
38 # this get should work
39 $result = $sess->get([["sysDescr","0"]], [\&cb1, $sess]);
49 my $tag = $vlist->[0]->tag;
50 ok($tag eq 'sysDescr');
51 my $val = $vlist->[0]->val;
53 my $iid = $vlist->[0]->iid;
54 my $type = $vlist->[0]->type;
55 ok($type eq 'OCTETSTR');
56 my $res = $sess->getnext([["sysDescr",0]], [\&cb2, $sess]);
65 ok(ref($vlist->[0]) =~ /Varbind/);
66 ok($vlist->[0][0] eq 'sysObjectID');
67 my $res = $sess->get([[".1.3.6.1.2.1.1.1.0"]], [\&cb3, $sess]);
77 ok($vlist->[0][0] eq 'sysDescr');
79 my $res = $sess->getnext([["sysDescr",0]], [\&cb4, $sess]);
88 my $res = $sess->set("sysDescr.0", "hahaha", [\&cb5, $sess]);
97 my $res = $sess->set("sysORID.1", ".1.3.6.1.2.1.1.1", [\&cb6, $sess]);
104 my $tag = $vlist->[0]->tag;
105 my $val = $vlist->[0]->val;
107 ok($tag =~ /^sysORID/);
108 # create list of varbinds for GETS, val field can be null or omitted
111 ['sysDescr', '0', ''],
112 ['sysObjectID', '0'],
116 ['sysLocation', '0'],
117 ['sysServices', '0'],
122 ['snmpInBadVersions', '0'],
123 ['snmpInBadCommunityNames', '0'],
124 ['snmpInBadCommunityUses', '0'],
125 ['snmpInASNParseErrs', '0'],
126 ['snmpEnableAuthenTraps', '0'],
129 ['sysORUpTime', '1'],
130 ['sysORLastChange', '0'],
131 ['ipInHdrErrors', '0'],
132 ['ipDefaultTTL', '0'],
133 ['ipInHdrErrors', '0'],
135 my $res = $sess->get($vars, [\&cb7, $sess]);
144 my $tag = $vlist->[0]->tag;
145 my $val = $vlist->[0]->val;
155 warn("error: this should not get called");