App-Netsync
view release on metacpan or search on metacpan
lib/App/Netsync/SNMP.pm view on Meta::CPAN
package App::Netsync::SNMP;
=head1 NAME
App::Netsync::SNMP - SNMP framework
=head1 DESCRIPTION
This package contains functions for handling SNMP communications.
=head1 SYNOPSIS
use App::Netsync::SNMP;
App::Netsync::SNMP::configure({
'SecName' => 'your username here',
'SecLevel' => 'AuthPriv',
'AuthProto' => 'SHA',
'AuthPass' => 'your password here',
'PrivProto' => 'AES',
'PrivPass' => 'your key here',
},[
'IF-MIB','ENTITY-MIB', # standard
'CISCO-STACK-MIB', # Cisco
'FOUNDRY-SN-AGENT-MIB', # Brocade
'SEMI-MIB', # HP
]);
my $ip = '93.184.216.119';
my $session = App::Netsync::SNMP::Session $ip;
my $info1 = App::Netsync::SNMP::Info $ip;
my $info2 = App::Netsync::SNMP::Info $session;
my ($ifNames,$ifIIDs) = App::Netsync::SNMP::get1 ([
['.1.3.6.1.2.1.31.1.1.1.1' => 'ifName'],
['.1.3.6.1.2.1.2.2.1.2' => 'ifDescr'],
],$session);
App::Netsync::SNMP::set ('ifAlias',$_,'Vote for Pedro',$session) foreach @$ifIIDs;
=cut
use 5.006;
use strict;
use warnings FATAL => 'all';
use autodie; #XXX Is autodie adequate?
use File::Basename;
use Scalar::Util 'blessed';
use SNMP;
use SNMP::Info;
use version;
our ($SCRIPT,$VERSION);
our %config;
BEGIN {
($SCRIPT) = fileparse ($0,"\.[^.]*");
($VERSION) = version->declare('v4.0.0');
}
INIT {
$config{'AuthPass'} = undef;
( run in 2.285 seconds using v1.01-cache-2.11-cpan-e1769b4cff6 )