[#234] Cisco voice vlan conflicts with same number normal vlan on DB INSERT

This commit is contained in:
Oliver Gorwits
2015-07-13 22:38:14 +01:00
parent d63a5fbe03
commit 54676ca0ea
2 changed files with 10 additions and 1 deletions

View File

@@ -1,3 +1,9 @@
2.032006 -
[BUG FIXES]
* [#234] Cisco voice vlan conflicts with same number normal vlan on DB INSERT
2.032005 - 2015-05-18 2.032005 - 2015-05-18
[BUG FIXES] [BUG FIXES]

View File

@@ -428,7 +428,8 @@ sub store_vlans {
my $interfaces = $snmp->interfaces; my $interfaces = $snmp->interfaces;
# build device port vlans suitable for DBIC # build device port vlans suitable for DBIC
my @portvlans; my @portvlans = ();
my %port_vseen = ();
foreach my $entry (keys %$i_vlan_membership) { foreach my $entry (keys %$i_vlan_membership) {
my $port = $interfaces->{$entry}; my $port = $interfaces->{$entry};
next unless defined $port; next unless defined $port;
@@ -436,6 +437,8 @@ sub store_vlans {
my $type = $i_vlan_type->{$entry}; my $type = $i_vlan_type->{$entry};
foreach my $vlan (@{ $i_vlan_membership->{$entry} }) { foreach my $vlan (@{ $i_vlan_membership->{$entry} }) {
next if ++$port_vseen{$vlan} > 1;
my $native = ((defined $i_vlan->{$entry}) and ($vlan eq $i_vlan->{$entry})) ? "t" : "f"; my $native = ((defined $i_vlan->{$entry}) and ($vlan eq $i_vlan->{$entry})) ? "t" : "f";
push @portvlans, { push @portvlans, {
port => $port, port => $port,