During macsuck get VLAN from Q-BRIDGE if available
This commit is contained in:
@@ -10,6 +10,7 @@
|
|||||||
* Update NodeWireless entries which match both MAC and SSID found, only
|
* Update NodeWireless entries which match both MAC and SSID found, only
|
||||||
* Fix SSL-proxy behaviour by using only path+query in links (W. Gould)
|
* Fix SSL-proxy behaviour by using only path+query in links (W. Gould)
|
||||||
* Avoid macsuck generated SQL bug when cleaning NULL VLAN (W. Gould)
|
* Avoid macsuck generated SQL bug when cleaning NULL VLAN (W. Gould)
|
||||||
|
* During macsuck get VLAN from Q-BRIDGE if available (jeneric)
|
||||||
|
|
||||||
2.017000 - 2013-09-23
|
2.017000 - 2013-09-23
|
||||||
|
|
||||||
|
|||||||
@@ -94,6 +94,10 @@ sub do_macsuck {
|
|||||||
$device->ip, $port, $vlan, scalar keys %{ $fwtable->{$vlan}->{$port} };
|
$device->ip, $port, $vlan, scalar keys %{ $fwtable->{$vlan}->{$port} };
|
||||||
|
|
||||||
foreach my $mac (keys %{ $fwtable->{$vlan}->{$port} }) {
|
foreach my $mac (keys %{ $fwtable->{$vlan}->{$port} }) {
|
||||||
|
# get VLAN from Q-BRIDGE if available
|
||||||
|
$vlan = $fwtable->{$vlan}->{$port}->{$mac}
|
||||||
|
if $vlan == 0;
|
||||||
|
|
||||||
# remove vlan 0 entry for this MAC addr
|
# remove vlan 0 entry for this MAC addr
|
||||||
delete $fwtable->{0}->{$_}->{$mac}
|
delete $fwtable->{0}->{$_}->{$mac}
|
||||||
for keys %{ $fwtable->{0} };
|
for keys %{ $fwtable->{0} };
|
||||||
@@ -382,7 +386,7 @@ sub _walk_fwtable {
|
|||||||
next unless setting('macsuck_bleed');
|
next unless setting('macsuck_bleed');
|
||||||
}
|
}
|
||||||
|
|
||||||
++$cache->{$port}->{$mac};
|
$cache->{$port}->{$mac} = ($fw_vlan->{$idx} || '0');
|
||||||
}
|
}
|
||||||
|
|
||||||
return $cache;
|
return $cache;
|
||||||
|
|||||||
Reference in New Issue
Block a user