public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH proxmox-ve-rs] ve-config: avoid panicing if fabric node id does not match expected pattern
@ 2026-01-16 10:07 Hannes Laimer
  2026-01-16 11:28 ` Gabriel Goller
  0 siblings, 1 reply; 2+ messages in thread
From: Hannes Laimer @ 2026-01-16 10:07 UTC (permalink / raw)
  To: pve-devel

Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
---
randomly ran into this, usually we generate this config, but technically
manually editing it is possible. so we should not panic

 proxmox-ve-config/src/sdn/fabric/section_config/node.rs | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/proxmox-ve-config/src/sdn/fabric/section_config/node.rs b/proxmox-ve-config/src/sdn/fabric/section_config/node.rs
index 17d2f0b..e6d41d9 100644
--- a/proxmox-ve-config/src/sdn/fabric/section_config/node.rs
+++ b/proxmox-ve-config/src/sdn/fabric/section_config/node.rs
@@ -79,7 +79,9 @@ impl std::str::FromStr for NodeSectionId {
     type Err = anyhow::Error;
 
     fn from_str(value: &str) -> Result<Self, Self::Err> {
-        let (fabric_id, node_id) = value.split_once("_").unwrap();
+        let (fabric_id, node_id) = value
+            .split_once("_")
+            .ok_or_else(|| anyhow::anyhow!("node id must be <fabric>_<node>"))?;
 
         Ok(Self {
             fabric_id: FabricId::from_string(fabric_id.to_string())?,
-- 
2.47.3



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-01-16 11:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-01-16 10:07 [pve-devel] [PATCH proxmox-ve-rs] ve-config: avoid panicing if fabric node id does not match expected pattern Hannes Laimer
2026-01-16 11:28 ` Gabriel Goller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal