From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id BD68C1FF13B for ; Wed, 20 May 2026 17:10:20 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 0E675D96F; Wed, 20 May 2026 17:10:19 +0200 (CEST) From: Gabriel Goller To: pve-devel@lists.proxmox.com Subject: [PATCH network] sdn: fabrics: make ip_prefix and ip6_prefix deletable Date: Wed, 20 May 2026 17:09:59 +0200 Message-ID: <20260520151010.394164-1-g.goller@proxmox.com> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1779289799462 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.029 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: VENKTJRDV2ATX3QE7KUNUUPWV4Z3MDBE X-Message-ID-Hash: VENKTJRDV2ATX3QE7KUNUUPWV4Z3MDBE X-MailFrom: g.goller@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: This allows us to update (and remove) the prefixes of fabrics which don't have any nodes configured. There still has to be at least one ipv6 or ipv4 prefix on the fabric. This is validated in the frontend and in the backend (rust). Signed-off-by: Gabriel Goller --- src/PVE/Network/SDN/Fabrics.pm | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/PVE/Network/SDN/Fabrics.pm b/src/PVE/Network/SDN/Fabrics.pm index b828d3d6ddff..87f7c44c572e 100644 --- a/src/PVE/Network/SDN/Fabrics.pm +++ b/src/PVE/Network/SDN/Fabrics.pm @@ -614,7 +614,13 @@ sub fabric_properties { 'instance-types' => ['openfabric'], items => { type => 'string', - enum => ['hello_interval', 'csnp_interval', 'route_filter'], + enum => [ + 'ip_prefix', + 'ip6_prefix', + 'hello_interval', + 'csnp_interval', + 'route_filter', + ], }, optional => 1, }, @@ -623,7 +629,14 @@ sub fabric_properties { 'instance-types' => ['bgp'], items => { type => 'string', - enum => ['redistribute', 'route_filter', 'route_map_in', 'route_map_out'], + enum => [ + 'ip_prefix', + 'ip6_prefix', + 'redistribute', + 'route_filter', + 'route_map_in', + 'route_map_out', + ], }, optional => 1, }, -- 2.47.3