#484 add Aggregate::agg_ports_ifstack to CiscoAgg::agg_ports
This commit is contained in:
@@ -63,7 +63,9 @@ sub agg_ports_ifstack {
|
||||
foreach my $idx ( keys %$ifStack ) {
|
||||
my ( $higher, $lower ) = split /\./, $idx;
|
||||
next if ( $higher == 0 or $lower == 0 );
|
||||
if ( $ifType->{ $higher } eq 'ieee8023adLag' or $ifType->{ $higher } eq 'propMultiplexor') {
|
||||
if ( $ifType->{ $higher } eq 'ieee8023adLag'
|
||||
or $ifType->{ $higher } eq 'propMultiplexor'
|
||||
or $ifType->{ $higher } eq 'propVirtual' ) {
|
||||
$ret->{ $lower } = $higher;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ use strict;
|
||||
use warnings;
|
||||
use Exporter;
|
||||
use SNMP::Info::IEEE802dot3ad;
|
||||
use SNMP::Info::Aggregate 'agg_ports_ifstack';
|
||||
|
||||
@SNMP::Info::CiscoAgg::ISA = qw/
|
||||
SNMP::Info::IEEE802dot3ad
|
||||
@@ -137,7 +138,12 @@ sub agg_ports_lag {
|
||||
|
||||
# combine PAgP, LAG & Cisco proprietary data
|
||||
sub agg_ports {
|
||||
my $ret = {%{agg_ports_pagp(@_)}, %{agg_ports_lag(@_)}, %{agg_ports_cisco(@_)}};
|
||||
my $ret = {
|
||||
%{agg_ports_ifstack(@_)},
|
||||
%{agg_ports_pagp(@_)},
|
||||
%{agg_ports_lag(@_)},
|
||||
%{agg_ports_cisco(@_)},
|
||||
};
|
||||
return $ret;
|
||||
}
|
||||
|
||||
|
||||
@@ -54,6 +54,8 @@ sub setup : Tests(setup) {
|
||||
'163.10' => 'active',
|
||||
'163.90' => 'active',
|
||||
'0.8193' => 'active',
|
||||
'5010.10102' => 'active',
|
||||
'5010.10103' => 'active',
|
||||
'8193.20' => 'active',
|
||||
'8193.80' => 'active',
|
||||
},
|
||||
@@ -63,7 +65,10 @@ sub setup : Tests(setup) {
|
||||
'20' => 'ethernetCsmacd',
|
||||
'80' => 'ethernetCsmacd',
|
||||
'90' => 'ethernetCsmacd',
|
||||
'10102' => 'ethernetCsmacd',
|
||||
'10103' => 'ethernetCsmacd',
|
||||
'163' => 'ieee8023adLag',
|
||||
'5010' => 'propVirtual',
|
||||
'8193' => 'propMultiplexor',
|
||||
},
|
||||
}
|
||||
@@ -77,7 +82,7 @@ sub agg_ports_ifstack : Tests(2) {
|
||||
can_ok($test->{info}, 'agg_ports_ifstack');
|
||||
|
||||
my $expected
|
||||
= {'10' => '163', '90' => '163', '20' => '8193', '80' => '8193',};
|
||||
= {'10' => '163', '90' => '163', '10102' => '5010', '10103' => '5010', '20' => '8193', '80' => '8193',};
|
||||
|
||||
cmp_deeply($test->{info}->agg_ports_ifstack(),
|
||||
$expected, q(Aggregated links have expected values));
|
||||
|
||||
Reference in New Issue
Block a user