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 6DE0E1FF13E for ; Fri, 06 Mar 2026 13:52:39 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 9E08531A62; Fri, 6 Mar 2026 13:53:28 +0100 (CET) From: Gabriel Goller To: pve-devel@lists.proxmox.com Subject: [PATCH proxmox-ve-rs v4 7/8] frr: support custom frr configuration lines Date: Fri, 6 Mar 2026 13:53:01 +0100 Message-ID: <20260306125315.190298-8-g.goller@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260306125315.190298-1-g.goller@proxmox.com> References: <20260306125315.190298-1-g.goller@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1772801572019 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.013 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 RCVD_IN_MSPIKE_H2 0.001 Average reputation (+2) 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: 3MNKIJEPTXHS7APCBPA2IJGDRQQMOUG5 X-Message-ID-Hash: 3MNKIJEPTXHS7APCBPA2IJGDRQQMOUG5 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: When merging the frr.conf.local with the frr.conf, some lines cannot be merged and we need to add custom frr config lines to the rust configuration. Add the vec of lines and just dump them into the template. Co-authored-by: Stefan Hanreich Signed-off-by: Gabriel Goller --- proxmox-frr-templates/templates/frr.conf.jinja | 3 +++ proxmox-frr/src/ser/mod.rs | 2 ++ 2 files changed, 5 insertions(+) diff --git a/proxmox-frr-templates/templates/frr.conf.jinja b/proxmox-frr-templates/templates/frr.conf.jinja index f8802f845332..68c159199f4e 100644 --- a/proxmox-frr-templates/templates/frr.conf.jinja +++ b/proxmox-frr-templates/templates/frr.conf.jinja @@ -1,4 +1,7 @@ {% include "isisd.jinja" %} +{% for line in custom_frr_config %} +{{ line }} +{% endfor %} {% include "fabricd.jinja" %} {% include "ospfd.jinja" %} {% include "access_lists.jinja" %} diff --git a/proxmox-frr/src/ser/mod.rs b/proxmox-frr/src/ser/mod.rs index 55bbe0522cf5..44a54586c7c5 100644 --- a/proxmox-frr/src/ser/mod.rs +++ b/proxmox-frr/src/ser/mod.rs @@ -188,6 +188,8 @@ pub struct FrrConfig { pub routemaps: BTreeMap>, #[serde(default)] pub access_lists: BTreeMap>, + #[serde(default)] + pub custom_frr_config: Vec, } #[derive(Clone, Debug, PartialEq, Eq, Default, Serialize, Deserialize)] -- 2.47.3