[pve-devel] [PATCH pve-network 3/3] dhcp: delete remove_mapping
Alexandre Derumier
aderumier at odiso.com
Wed Nov 15 15:22:00 CET 2023
The cleanup of old mac is now done when we add a new mac/ip
Signed-off-by: Alexandre Derumier <aderumier at odiso.com>
---
src/PVE/API2/Network/SDN/Ipam.pm | 1 -
src/PVE/Network/SDN/Dhcp.pm | 15 -------------
src/PVE/Network/SDN/Dhcp/Dnsmasq.pm | 34 -----------------------------
src/PVE/Network/SDN/Dhcp/Plugin.pm | 5 -----
4 files changed, 55 deletions(-)
diff --git a/src/PVE/API2/Network/SDN/Ipam.pm b/src/PVE/API2/Network/SDN/Ipam.pm
index 66131e3..68d99a6 100644
--- a/src/PVE/API2/Network/SDN/Ipam.pm
+++ b/src/PVE/API2/Network/SDN/Ipam.pm
@@ -104,7 +104,6 @@ __PACKAGE__->register_method ({
my $vnet = extract_param($param, 'vnet');
my $mac = extract_param($param, 'mac');
- PVE::Network::SDN::Dhcp::remove_mapping($vnet, $mac);
PVE::Network::SDN::Vnets::del_ips_from_mac($vnet, $mac);
return undef;
diff --git a/src/PVE/Network/SDN/Dhcp.pm b/src/PVE/Network/SDN/Dhcp.pm
index 99561b3..06d03e2 100644
--- a/src/PVE/Network/SDN/Dhcp.pm
+++ b/src/PVE/Network/SDN/Dhcp.pm
@@ -38,21 +38,6 @@ sub add_mapping {
$dhcp_plugin->add_ip_mapping($zoneid, $macdb, $mac, $ip4, $ip6)
}
-sub remove_mapping {
- my ($vnetid, $mac) = @_;
-
- my $vnet = PVE::Network::SDN::Vnets::get_vnet($vnetid);
- return if !$vnet;
-
- my $zoneid = $vnet->{zone};
- my $zone = PVE::Network::SDN::Zones::get_zone($zoneid);
-
- return if !$zone->{ipam} || !$zone->{dhcp};
-
- my $dhcp_plugin = PVE::Network::SDN::Dhcp::Plugin->lookup($zone->{dhcp});
- $dhcp_plugin->del_ip_mapping($zoneid, $mac);
-}
-
sub regenerate_config {
my ($reload) = @_;
diff --git a/src/PVE/Network/SDN/Dhcp/Dnsmasq.pm b/src/PVE/Network/SDN/Dhcp/Dnsmasq.pm
index b672dd3..46172c5 100644
--- a/src/PVE/Network/SDN/Dhcp/Dnsmasq.pm
+++ b/src/PVE/Network/SDN/Dhcp/Dnsmasq.pm
@@ -18,40 +18,6 @@ sub type {
return 'dnsmasq';
}
-sub del_ip_mapping {
- my ($class, $dhcpid, $mac) = @_;
-
- my $ethers_file = "$DNSMASQ_CONFIG_ROOT/$dhcpid/ethers";
- my $ethers_tmp_file = "$ethers_file.tmp";
-
- my $removeFn = sub {
- open(my $in, '<', $ethers_file) or die "Could not open file '$ethers_file' $!\n";
- open(my $out, '>', $ethers_tmp_file) or die "Could not open file '$ethers_tmp_file' $!\n";
-
- while (my $line = <$in>) {
- next if $line =~ m/^$mac/;
- print $out $line;
- }
-
- close $in;
- close $out;
-
- move $ethers_tmp_file, $ethers_file;
-
- chmod 0644, $ethers_file;
- };
-
- PVE::Tools::lock_file($ethers_file, 10, $removeFn);
-
- if ($@) {
- warn "Unable to remove $mac from the dnsmasq configuration: $@\n";
- return;
- }
-
- my $service_name = "dnsmasq\@$dhcpid";
- PVE::Tools::run_command(['systemctl', 'reload', $service_name]);
-}
-
sub add_ip_mapping {
my ($class, $dhcpid, $macdb, $mac, $ip4, $ip6) = @_;
diff --git a/src/PVE/Network/SDN/Dhcp/Plugin.pm b/src/PVE/Network/SDN/Dhcp/Plugin.pm
index 8d0f7ba..d05378d 100644
--- a/src/PVE/Network/SDN/Dhcp/Plugin.pm
+++ b/src/PVE/Network/SDN/Dhcp/Plugin.pm
@@ -27,11 +27,6 @@ sub add_ip_mapping {
die 'implement in sub class';
}
-sub del_ip_mapping {
- my ($class, $dhcp_config, $mac) = @_;
- die 'implement in sub class';
-}
-
sub configure_range {
my ($class, $dhcp_config, $subnet_config, $range_config) = @_;
die 'implement in sub class';
--
2.39.2
More information about the pve-devel
mailing list