[PATCH v4 0/5]

Yureka Lilian
2025-09-23T13:20:36Z

The patches up to and including "vm/sys/net: build against pkgsMusl" can
be applied right away, while the last commit ("vm/sys/net: integrate
xdp-forwarder") does not make sense without the router.

Changes since v3:
- Apply suggestions from Demi in meson recipe, prog_*.c
- Split out the appSupport -> guestSupport rename into a seperate commit
- Split out the switch to pkgsMusl into a separate commit with reasoning
- rename set_router_iface to set-router-iface

Changes since v2:

- Switch xdp-forwarder build to meson
- Add guest build variant of spectrum-tools

Changes since v1:

- rebased
- apply new uncrustify config
- moved xdp-forwarder to tools/
- split integration into separate commit
- use linuxHeaders instead of vmlinux.h
- use original xdp-tutorial {parsing,rewrite}_helpers.h
- inlined the load scripts into /etc/iface/mdev, using /usr/lib/xdp as
fixed prefix for finding the XDP progs
- removed the README, added a paragraph to architecture doc instead

Yureka Lilian (5):
tools: rename guestSupport -> appSupport
tools: add xdp-forwarder
docs/architecture: add paragraph about networking
vm/sys/net: build against pkgsMusl
vm/sys/net: integrate xdp-forwarder

Documentation/about/architecture.adoc | 20 ++
img/app/default.nix | 4 +-
pkgs/default.nix | 8 +-
release/checks/pkg-tests.nix | 3 +-
tools/default.nix | 21 +-
tools/meson.build | 6 +-
tools/meson_options.txt | 7 +-
tools/shell.nix | 2 +-
tools/xdp-forwarder/include/parsing_helpers.h | 274 ++++++++++++++++++
tools/xdp-forwarder/include/rewrite_helpers.h | 146 ++++++++++
tools/xdp-forwarder/meson.build | 48 +++
tools/xdp-forwarder/prog_physical.c | 39 +++
tools/xdp-forwarder/prog_router.c | 43 +++
tools/xdp-forwarder/set_router_iface.c | 30 ++
vm/sys/net/Makefile | 19 +-
vm/sys/net/default.nix | 23 +-
vm/sys/net/image/etc/fstab | 2 +
vm/sys/net/image/etc/mdev/iface | 27 +-
vm/sys/net/image/etc/nftables.conf | 8 -
vm/sys/net/image/etc/s6-rc/connman/type | 1 -
.../net/image/etc/s6-rc/connman/type.license | 2 -
.../net/image/etc/s6-rc/mdevd-coldplug/type | 1 -
.../net/image/etc/s6-rc/nftables/type.license | 2 -
vm/sys/net/image/etc/s6-rc/nftables/up | 6 -
24 files changed, 676 insertions(+), 66 deletions(-)
create mode 100644 tools/xdp-forwarder/include/parsing_helpers.h
create mode 100644 tools/xdp-forwarder/include/rewrite_helpers.h
create mode 100644 tools/xdp-forwarder/meson.build
create mode 100644 tools/xdp-forwarder/prog_physical.c
create mode 100644 tools/xdp-forwarder/prog_router.c
create mode 100644 tools/xdp-forwarder/set_router_iface.c
delete mode 100644 vm/sys/net/image/etc/nftables.conf
delete mode 100644 vm/sys/net/image/etc/s6-rc/connman/type
delete mode 100644 vm/sys/net/image/etc/s6-rc/connman/type.license
delete mode 100644 vm/sys/net/image/etc/s6-rc/mdevd-coldplug/type
delete mode 100644 vm/sys/net/image/etc/s6-rc/nftables/type.license
delete mode 100644 vm/sys/net/image/etc/s6-rc/nftables/up

--
2.51.0