[PATCH proxmox v3 0/8] sdn: add wireguard fabric configuration support

Christoph Heiss
2026-03-30T18:29:09Z

This series lays the groundwork with initial primitives and configuration
support for adding WireGuard as a new SDN fabric to our stack in the
future.

Nothing of this code is actively used anywhere in the stack yet, but
Stefan already sent out a series adding WireGuard as a new SDN fabric,
that depends on this series [0].

[0] https://lore.proxmox.com/pve-devel/20260219145649.441418-1-s.hanreich@proxmox.com/

History
=======

v2: https://lore.proxmox.com/all/20260213143601.1424613-1-c.heiss@proxmox.com/
v1: https://lore.proxmox.com/pve-devel/20260116153317.1146323-1-c.heiss@proxmox.com/

Notable changes v2 -> v3:
* split out ini serializer into dedicated `proxmox-ini` crate
* rework ini serialization to avoid nested serializer instances,
instead serializing all values directly in place

Notable changes v1 -> v2:
* key generation (and thus the dependency on proxmox-sys) is now
feature-gated and optional
* dropped proxmox-ve-rs patches, Stefan will be incorporating them
his SDN series

Diffstat
========

Christoph Heiss (6):
ini: add crate for INI serialization
serde: add base64 module for byte arrays
network-types: add ServiceEndpoint type as host/port tuple abstraction
schema: provide integer schema for node ports
schema: api-types: add ed25519 base64 encoded key schema
wireguard: init configuration support crate

Stefan Hanreich (2):
wireguard: implement api for PublicKey
wireguard: make per-peer preshared key optional

Cargo.toml | 4 +
proxmox-ini/Cargo.toml | 18 +
proxmox-ini/debian/changelog | 5 +
proxmox-ini/debian/control | 32 +
proxmox-ini/debian/copyright | 18 +
proxmox-ini/debian/debcargo.toml | 7 +
proxmox-ini/src/lib.rs | 991 +++++++++++++++++++++++++
proxmox-network-types/src/endpoint.rs | 154 ++++
proxmox-network-types/src/lib.rs | 1 +
proxmox-schema/src/api_types.rs | 19 +-
proxmox-serde/src/lib.rs | 91 +++
proxmox-wireguard/Cargo.toml | 29 +
proxmox-wireguard/debian/changelog | 5 +
proxmox-wireguard/debian/control | 86 +++
proxmox-wireguard/debian/copyright | 18 +
proxmox-wireguard/debian/debcargo.toml | 7 +
proxmox-wireguard/src/lib.rs | 408 ++++++++++
17 files changed, 1892 insertions(+), 1 deletion(-)
create mode 100644 proxmox-ini/Cargo.toml
create mode 100644 proxmox-ini/debian/changelog
create mode 100644 proxmox-ini/debian/control
create mode 100644 proxmox-ini/debian/copyright
create mode 100644 proxmox-ini/debian/debcargo.toml
create mode 100644 proxmox-ini/src/lib.rs
create mode 100644 proxmox-network-types/src/endpoint.rs
create mode 100644 proxmox-wireguard/Cargo.toml
create mode 100644 proxmox-wireguard/debian/changelog
create mode 100644 proxmox-wireguard/debian/control
create mode 100644 proxmox-wireguard/debian/copyright
create mode 100644 proxmox-wireguard/debian/debcargo.toml
create mode 100644 proxmox-wireguard/src/lib.rs

--
2.52.0