[pve-devel] [PATCH pve-network 2/3] zones: add add|del_bridge_fdb to plugins
Alexandre Derumier
aderumier at odiso.com
Tue Sep 26 09:39:41 CEST 2023
We want to be able to override it for some specific plugins.
Can be used by an sdn controller (like ovn for example), where
mac need to be registered manually.
---
src/PVE/Network/SDN/Zones.pm | 4 ++--
src/PVE/Network/SDN/Zones/Plugin.pm | 12 ++++++++++++
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/src/PVE/Network/SDN/Zones.pm b/src/PVE/Network/SDN/Zones.pm
index 1e678ed..4ad4e4d 100644
--- a/src/PVE/Network/SDN/Zones.pm
+++ b/src/PVE/Network/SDN/Zones.pm
@@ -336,7 +336,7 @@ sub add_bridge_fdb {
my $plugin_config = get_plugin_config($vnet);
my $plugin = PVE::Network::SDN::Zones::Plugin->lookup($plugin_config->{type});
- PVE::Network::add_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
+ $plugin->add_bridge_fdb($plugin_config, $iface, $macaddr);
}
sub del_bridge_fdb {
@@ -350,7 +350,7 @@ sub del_bridge_fdb {
my $plugin_config = get_plugin_config($vnet);
my $plugin = PVE::Network::SDN::Zones::Plugin->lookup($plugin_config->{type});
- PVE::Network::del_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
+ $plugin->del_bridge_fdb($plugin_config, $iface, $macaddr);
}
1;
diff --git a/src/PVE/Network/SDN/Zones/Plugin.pm b/src/PVE/Network/SDN/Zones/Plugin.pm
index f6634b6..b55b967 100644
--- a/src/PVE/Network/SDN/Zones/Plugin.pm
+++ b/src/PVE/Network/SDN/Zones/Plugin.pm
@@ -239,6 +239,18 @@ sub tap_plug {
PVE::Network::tap_plug($iface, $vnetid, $tag, $firewall, $trunks, $rate, $opts);
}
+sub add_bridge_fdb {
+ my ($class, $plugin_config, $iface, $macaddr) = @_;
+
+ PVE::Network::add_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
+}
+
+sub del_bridge_fdb {
+ my ($class, $plugin_config, $iface, $macaddr) = @_;
+
+ PVE::Network::del_bridge_fdb($iface, $macaddr) if $plugin_config->{'bridge-disable-mac-learning'};
+}
+
#helper
sub get_uplink_iface {
--
2.39.2
More information about the pve-devel
mailing list