From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [IPv6:2a0f:8001:1:32::40]) by lore.proxmox.com (Postfix) with ESMTPS id D608B1FF0AE for ; Tue, 13 Oct 2026 14:23:16 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 120582161F; Tue, 13 Oct 2026 14:22:38 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.10.3 smtp.infra.comaite.com B001C62C0F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comaite.com; s=377A38C6-3A8D-11E5-A0EC-E97757B27CB3; t=1791893674; bh=ovnLAWcHMPJ/iDkGgNEbjpUc391yxzddDg7evgwyOM8=; h=From:To:Date:Message-ID:MIME-Version; b=GY3u16JTMH4lU27yGtb3mbDP/W9o9xVhu7+ZbP8NkjkxXJSRFFtntVnuDlUn6jr7k AixCVidTftzH1iF8rZgaM/QwSlvDfZ+0IOMzdq+/xTJbkry5marh/DpZ2qxhQYrkqt 4C7u6x1WkBZhyuWl2I93x9CaLMMLBmJNXi5ixGRvLvtyJaFg6s++vN20a+WSCOYNHU ZFhScwwI3iNeV6eD3hCtMwPQ37icly8f4/cfNwoa1Cv0sY79lgg8K27qm8PjT6dQvv 7xdh1qVPVCDWGHX7cHJ05thjeLmvM9h+79YvSywds5RIbQYhFkVkoMPPERh2tfl712 nPXcCbowQ2F/g== From: =?UTF-8?q?R=C3=A9mi=20PAETA?= To: pve-devel@lists.proxmox.com Subject: [RFC PATCH manager 14/16] ui: sdn: vnet: add port security for ovn zones Date: Tue, 13 Oct 2026 14:14:30 +0200 Message-ID: <20261013121432.2642979-15-remi.paeta@comaite.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20261013121432.2642979-1-remi.paeta@comaite.com> References: <1116090294.1714263.1791537779868.JavaMail.zimbra@comaite.com> <20261013121432.2642979-1-remi.paeta@comaite.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.625 Adjusted score from AWL reputation of From: address DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain DMARC_PASS -0.1 DMARC pass policy 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: ROK2EFYMSWJ57AAQ6BTF77TBA4LFQ353 X-Message-ID-Hash: ROK2EFYMSWJ57AAQ6BTF77TBA4LFQ353 X-MailFrom: remi.paeta@comaite.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: Vnets of OVN zones can override the port security level of their zone. The field is only shown for OVN zones, the only ones supporting it, and gets removed from the vnet when moving it to another zone type. Signed-off-by: Rémi PAETA --- www/manager6/sdn/VnetEdit.js | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/www/manager6/sdn/VnetEdit.js b/www/manager6/sdn/VnetEdit.js index 2c2b454a..36638e10 100644 --- a/www/manager6/sdn/VnetEdit.js +++ b/www/manager6/sdn/VnetEdit.js @@ -32,6 +32,9 @@ Ext.define('PVE.sdn.VnetInputPanel', { if (me.down('#sdnVnetVlanAwareField').isDisabled()) { addDelete('vlanaware'); } + if (me.down('#sdnVnetPortSecurityField').isDisabled()) { + addDelete('port-security'); + } return values; }, @@ -95,6 +98,23 @@ Ext.define('PVE.sdn.VnetInputPanel', { deleteEmpty: '{!isCreate}', }, }, + { + xtype: 'proxmoxKVComboBox', + itemId: 'sdnVnetPortSecurityField', + name: 'port-security', + value: '', + emptyText: gettext('Zone default'), + comboItems: [ + ['off', gettext('Off')], + ['mac', 'MAC'], + ['mac-ip', 'MAC + IP'], + ], + fieldLabel: gettext('Port Security'), + allowBlank: true, + cbind: { + deleteEmpty: '{!isCreate}', + }, + }, ], advancedItems: [ { @@ -142,6 +162,12 @@ Ext.define('PVE.sdn.VnetInputPanel', { } else { vlanField.setDisabled(false); } + + // only OVN zones filter the traffic of the guest ports + let portSecurityField = me.down('#sdnVnetPortSecurityField'); + let isOvn = zoneType === 'ovn'; + portSecurityField.setHidden(!isOvn); + portSecurityField.setDisabled(!isOvn); }, }); -- 2.47.3