Net-SNMP
view release on metacpan or search on metacpan
lib/Net/SNMP.pm view on Meta::CPAN
my $start_index = undef;
if (defined $argv[2]) {
if ($argv[2] !~ m/^\d+(?:\.\d+)*$/) {
return $this->_error(
'The start index "%s" is expected in dotted decimal notation',
$argv[2]
);
}
my @subids = split m/\./, $argv[2];
if ($subids[-1] > 0) {
$subids[-1]--;
} else {
pop @subids;
}
$start_index = (@subids) ? join(q{.}, @subids) : q{};
}
if (defined $argv[3]) {
if ($argv[3] !~ /^\d+(?:\.\d+)*$/) {
lib/Net/SNMP.pm view on Meta::CPAN
sub oid_base_match
{
my ($base, $oid) = @_;
defined $base || return FALSE;
defined $oid || return FALSE;
$base =~ s/^\.//o;
$oid =~ s/^\.//o;
$base = pack 'N*', split m/\./, $base;
$oid = pack 'N*', split m/\./, $oid;
return (substr($oid, 0, length $base) eq $base) ? TRUE : FALSE;
}
sub oid_context_match
{
require Carp;
Carp::croak(
'oid_context_match() is obsolete, use oid_base_match() instead'
);
lib/Net/SNMP.pm view on Meta::CPAN
=cut
sub oid_lex_cmp
{
my ($aa, $bb) = @_;
for ($aa, $bb) {
s/^\.//;
s/ /\.0/g;
$_ = pack 'N*', split m/\./;
}
return $aa cmp $bb;
}
=head2 oid_lex_sort() - sort a list of OBJECT IDENTIFIERs lexicographically
@sorted_oids = oid_lex_sort(@oids);
This function takes a list of OBJECT IDENTIFIERs in dotted notation and returns
lib/Net/SNMP.pm view on Meta::CPAN
return @_;
}
return map { $_->[0] }
sort { $a->[1] cmp $b->[1] }
map
{
my $oid = $_;
$oid =~ s/^\.//;
$oid =~ s/ /\.0/g;
[$_, pack 'N*', split m/\./, $oid]
} @_;
}
=head2 snmp_type_ntop() - convert an ASN.1 type to presentation format
$text = snmp_type_ntop($type);
This function takes an ASN.1 type octet and returns a text string suitable for
presentation. Some ASN.1 type definitions map to the same octet value when
encoded. This method cannot distinguish between these multiple mappings and
lib/Net/SNMP/PDU.pm view on Meta::CPAN
$this->{_var_bind_list} = $vbl;
@{$this->{_var_bind_names}} =
map { $_->[0] }
sort { $a->[1] cmp $b->[1] }
map
{
my $oid = $_;
$oid =~ s/^\.//;
$oid =~ s/ /\.0/g;
[$_, pack 'N*', split m/\./, $oid]
} keys %{$vbl};
if (!defined($types) || (ref($types) ne 'HASH')) {
$types = {};
}
for (keys %{$vbl}) {
$this->{_var_bind_types}->{$_} =
exists($types->{$_}) ? $types->{$_} : undef;
}
( run in 1.708 second using v1.01-cache-2.11-cpan-71847e10f99 )