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. I'm sending it early to a) make it more reviewable as a smaller series and b) potentially get in some prepratory work early. Stefan already has a working prototype for adding WireGuard as a new SDN fabric type, built on top of this. One of the bigger topics next up will be wiring up actual section config support for the fabric, which involves some challenges around proper key handling. History ======= v1: https://lore.proxmox.com/pve-devel/[email protected]/ 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 ======== proxmox: Christoph Heiss (6): serde: implement ini serializer 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 | 2 + proxmox-network-types/src/endpoint.rs | 154 +++++ proxmox-network-types/src/lib.rs | 3 +- proxmox-schema/src/api_types.rs | 19 +- proxmox-serde/Cargo.toml | 2 + proxmox-serde/debian/control | 4 + proxmox-serde/src/ini.rs | 901 +++++++++++++++++++++++++ proxmox-serde/src/lib.rs | 94 +++ proxmox-wireguard/Cargo.toml | 28 + 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 +++++++++++ 14 files changed, 1729 insertions(+), 2 deletions(-) create mode 100644 proxmox-network-types/src/endpoint.rs create mode 100644 proxmox-serde/src/ini.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
