* [pve-devel] [PATCH pve-network] sdn: require mac in IPAM API calls
@ 2023-11-23 14:54 Stefan Lendl
2023-11-23 16:19 ` Stefan Lendl
0 siblings, 1 reply; 2+ messages in thread
From: Stefan Lendl @ 2023-11-23 14:54 UTC (permalink / raw)
To: pve-devel
standard_option for 'mac-addr' is declared in EVPN where mac-addr is optional.
The DELETE endpoint did actually delete from IPAM without a MAC but it would
remain in macs.db which brings ends up in a bad state.
Signed-off-by: Stefan Lendl <s.lendl@proxmox.com>
---
src/PVE/API2/Network/SDN/Ips.pm | 18 +++++++++++++++---
src/PVE/Network/SDN/Subnets.pm | 6 ++----
2 files changed, 17 insertions(+), 7 deletions(-)
diff --git a/src/PVE/API2/Network/SDN/Ips.pm b/src/PVE/API2/Network/SDN/Ips.pm
index 0003b2a..0edabd8 100644
--- a/src/PVE/API2/Network/SDN/Ips.pm
+++ b/src/PVE/API2/Network/SDN/Ips.pm
@@ -27,7 +27,11 @@ __PACKAGE__->register_method ({
properties => {
zone => get_standard_option('pve-sdn-zone-id'),
vnet => get_standard_option('pve-sdn-vnet-id'),
- mac => get_standard_option('mac-addr'),
+ mac => {
+ type => 'string',
+ description => "MAC Address of the IP to delete",
+ format => 'mac-addr'
+ },
ip => {
type => 'string',
format => 'ip',
@@ -66,7 +70,11 @@ __PACKAGE__->register_method ({
properties => {
zone => get_standard_option('pve-sdn-zone-id'),
vnet => get_standard_option('pve-sdn-vnet-id'),
- mac => get_standard_option('mac-addr'),
+ mac => {
+ type => 'string',
+ description => "MAC Address of the IP to add",
+ format => 'mac-addr'
+ },
ip => {
type => 'string',
format => 'ip',
@@ -104,7 +112,11 @@ __PACKAGE__->register_method ({
vmid => get_standard_option('pve-vmid', {
optional => 1,
}),
- mac => get_standard_option('mac-addr'),
+ mac => {
+ type => 'string',
+ description => "MAC Address of the IP to update",
+ format => 'mac-addr'
+ },
ip => {
type => 'string',
format => 'ip',
diff --git a/src/PVE/Network/SDN/Subnets.pm b/src/PVE/Network/SDN/Subnets.pm
index 3b08dcd..fe4f71b 100644
--- a/src/PVE/Network/SDN/Subnets.pm
+++ b/src/PVE/Network/SDN/Subnets.pm
@@ -402,10 +402,8 @@ sub del_ip {
my $plugin = PVE::Network::SDN::Ipams::Plugin->lookup($plugin_config->{type});
$plugin->del_ip($plugin_config, $subnetid, $subnet, $ip);
- if ($mac) {
- eval { PVE::Network::SDN::Ipams::del_cache_mac_ip($mac, $ip) };
- warn $@ if $@;
- }
+ eval { PVE::Network::SDN::Ipams::del_cache_mac_ip($mac, $ip) };
+ warn $@ if $@;
}
eval {
--
2.42.0
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [pve-devel] [PATCH pve-network] sdn: require mac in IPAM API calls
2023-11-23 14:54 [pve-devel] [PATCH pve-network] sdn: require mac in IPAM API calls Stefan Lendl
@ 2023-11-23 16:19 ` Stefan Lendl
0 siblings, 0 replies; 2+ messages in thread
From: Stefan Lendl @ 2023-11-23 16:19 UTC (permalink / raw)
To: pve-devel
sent v2
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-11-23 16:19 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-11-23 14:54 [pve-devel] [PATCH pve-network] sdn: require mac in IPAM API calls Stefan Lendl
2023-11-23 16:19 ` Stefan Lendl
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal