public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
* [PATCH 00/18] slirp4netns, sandboxing, Podman integration, assorted fixes
@ 2022-02-22  1:34 Stefano Brivio
  2022-02-22  1:34 ` [PATCH 01/18] slirp4netns: Look up pasta command, exit if not found Stefano Brivio
                   ` (18 more replies)
  0 siblings, 19 replies; 20+ messages in thread
From: Stefano Brivio @ 2022-02-22  1:34 UTC (permalink / raw)
  To: passt-dev

[-- Attachment #1: Type: text/plain, Size: 3915 bytes --]

This series:

- completes slirp4netns(1) compatibility of slirp4netns.sh and introduces
  equivalent features in pasta (patches 1/18, 2/18, 6/18, 9/18)

- enables namespace-based sandboxing that's _at least_ equivalent to
  the one implemented by slirp4netns (patches 3/18 and 4/18)

- carries a number of fixes for minor ssues I found while doing this
  (patches 5/18, 7/18, 8/18, 10/18, 11/18)

- introduce a self-quit mechanism for pasta for easier integration with
  container runtimes (patch 12/18)

- fixes a few items in documentation and tests (patches 13/18 to 16/18)

- adds Podman integration as out-of-tree patch (patch 17/18)

- adds a demo for Podman operation with pasta and side-by-side
  comparison with slirp4netns (patch 18/18).

I already ran a demo recording for the Podman demo:
  https://passt.top/builds/latest/web/demo_podman.webm


Stefano Brivio (18):
  slirp4netns: Look up pasta command, exit if not found
  slirp4netns: Add EXIT as condition for trap
  passt, pasta: Namespace-based sandboxing, defer seccomp policy
    application
  passt: Make process not dumpable after sandboxing
  Makefile, conf, passt: Drop passt4netns references, explicit argc
    check
  slirp4netns.sh: Implement API socket option for port forwarding
  conf: Don't print configuration on --quiet
  conf: Given IPv4 address and no netmask, assign RFC 790-style classes
  conf, udp: Introduce basic DNS forwarding
  udp: Allow loopback connections from host using configured unicast
    address
  tcp, udp: Receive batching doesn't pay off when writing single frames
    to tap
  pasta: By default, quit if filesystem-bound net namespace goes away
  test/distro/ubuntu: Use DEBIAN_FRONTEND=noninteractive for apt on
    22.04
  test/perf/passt_udp: Drop threshold for 256B test
  man page: Update REPORTING BUGS section
  README, hooks: Build HTML man page on push, add a link
  contrib: Add patch for Podman integration
  test: Add demo for Podman with pasta

 Makefile                                      |  10 +-
 README.md                                     |  18 +-
 conf.c                                        | 219 +++--
 ...001-libpod-Add-pasta-networking-mode.patch | 542 +++++++++++
 dhcp.c                                        |   5 +-
 dhcpv6.c                                      |   7 +
 hooks/pre-push                                |   3 +
 ndp.c                                         |   6 +-
 passt.1                                       |  92 +-
 passt.c                                       | 140 ++-
 passt.h                                       |  28 +-
 pasta.c                                       | 217 ++---
 pasta.h                                       |   2 +
 pcap.c                                        |   5 +-
 pcap.h                                        |   2 +-
 slirp4netns.sh                                | 198 +++-
 tap.c                                         |  58 +-
 tcp.c                                         |  49 +-
 test/demo/passt                               |   3 +-
 test/demo/pasta                               |   5 +-
 test/demo/podman                              | 843 ++++++++++++++++++
 test/distro/ubuntu                            |   1 +
 test/lib/layout                               |  38 +-
 test/lib/setup                                |  49 +-
 test/lib/term                                 |  10 +
 test/lib/test                                 |  35 +
 test/perf/passt_udp                           |   4 +-
 test/run                                      |   8 +
 udp.c                                         |  76 +-
 util.c                                        | 129 ++-
 util.h                                        |  12 +-
 31 files changed, 2430 insertions(+), 384 deletions(-)
 create mode 100644 contrib/podman/0001-libpod-Add-pasta-networking-mode.patch
 create mode 100644 test/demo/podman

-- 
2.34.1


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

end of thread, other threads:[~2022-02-22  9:07 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-22  1:34 [PATCH 00/18] slirp4netns, sandboxing, Podman integration, assorted fixes Stefano Brivio
2022-02-22  1:34 ` [PATCH 01/18] slirp4netns: Look up pasta command, exit if not found Stefano Brivio
2022-02-22  1:34 ` [PATCH 02/18] slirp4netns: Add EXIT as condition for trap Stefano Brivio
2022-02-22  1:34 ` [PATCH 03/18] passt, pasta: Namespace-based sandboxing, defer seccomp policy application Stefano Brivio
2022-02-22  1:34 ` [PATCH 04/18] passt: Make process not dumpable after sandboxing Stefano Brivio
2022-02-22  1:34 ` [PATCH 05/18] Makefile, conf, passt: Drop passt4netns references, explicit argc check Stefano Brivio
2022-02-22  1:34 ` [PATCH 06/18] slirp4netns.sh: Implement API socket option for port forwarding Stefano Brivio
2022-02-22  1:34 ` [PATCH 07/18] conf: Don't print configuration on --quiet Stefano Brivio
2022-02-22  1:34 ` [PATCH 08/18] conf: Given IPv4 address and no netmask, assign RFC 790-style classes Stefano Brivio
2022-02-22  1:34 ` [PATCH 09/18] conf, udp: Introduce basic DNS forwarding Stefano Brivio
2022-02-22  1:34 ` [PATCH 10/18] udp: Allow loopback connections from host using configured unicast address Stefano Brivio
2022-02-22  1:34 ` [PATCH 11/18] tcp, udp: Receive batching doesn't pay off when writing single frames to tap Stefano Brivio
2022-02-22  1:34 ` [PATCH 12/18] pasta: By default, quit if filesystem-bound net namespace goes away Stefano Brivio
2022-02-22  1:34 ` [PATCH 13/18] test/distro/ubuntu: Use DEBIAN_FRONTEND=noninteractive for apt on 22.04 Stefano Brivio
2022-02-22  1:34 ` [PATCH 14/18] test/perf/passt_udp: Drop threshold for 256B test Stefano Brivio
2022-02-22  1:34 ` [PATCH 15/18] man page: Update REPORTING BUGS section Stefano Brivio
2022-02-22  1:34 ` [PATCH 16/18] README, hooks: Build HTML man page on push, add a link Stefano Brivio
2022-02-22  1:34 ` [PATCH 17/18] contrib: Add patch for Podman integration Stefano Brivio
2022-02-22  1:34 ` [PATCH 18/18] test: Add demo for Podman with pasta Stefano Brivio
2022-02-22  9:07 ` [PATCH 00/18] slirp4netns, sandboxing, Podman integration, assorted fixes Stefano Brivio

Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).