The new version with tag 2023_02_27.c538ee8 includes the following changes:
c538ee8 util: Add own prototype for __clone2() on ia64
b1b75bd contrib/apparmor: Split profile into abstractions, use them
0d547a5 qrap: Generate -netdev as JSON
4f2341f qrap: Introduce machine-specific PCI address base
8828a63 qrap: Drop args in JSON format
16f19c8 qrap: Fix support for pc machines
9cec430 qrap: Fix limits for PCI addresses
d2df763 log, conf, tap: Define die() as err() plus exit(), drop cppcheck workarounds
fb05a71 doc/demo: Fix and suppress ShellCheck warnings
26a0e4d Fix definitions of SOCKET_MAX, TCP_MAX_CONNS
4f523c3 tcp: Avoid (theoretical) resource leak (CWE-772) Coverity warning
a1d5537 tcp: Avoid false (but convoluted) positive Coverity CWE-476 warning
5474bc5 tcp, tcp_splice: Get rid of false positive CWE-394 Coverity warning from fls()
a48c5c2 treewide: Disable gcc strict aliasing rules as needed, drop workarounds
da46fda tcp: Suppress knownConditionTrueFalse cppcheck false positive
834b9a3 log: Send identifier string in log messages, openlog() won't work for us
bad2526 conf, udp: Allow any loopback address to be used as resolver
8ca907a conf: Split add_dns{4,6}() out of get_dns()
ddf7097 udp: Actually use host resolver to forward DNS queries
https://passt.top/passt/log/?qt=range&q=2023_02_22.4ddbcb9..2023_02_27.c538…
Packages:
- Debian tracker:
https://tracker.debian.org/pkg/passt
- Copr (CentOS Stream, EPEL, Fedora, Mageia, openSUSE):
https://copr.fedorainfracloud.org/coprs/sbrivio/passt/build/5574807/
permanent mirror: https://passt.top/builds/copr/0^20230227.gc538ee8/
- Fedora updates:
https://bodhi.fedoraproject.org/updates/?packages=passt
- Ubuntu tracker:
https://packages.ubuntu.com/lunar/passt
- Static builds:
- Package for other RPM-based distributions, x86_64 only:
https://passt.top/builds/latest/x86_64/passt-gc538ee8-1.x86_64.rpm
- x86_64 static binaries:
https://passt.top/builds/latest/x86_64/
- Debian package, from x86_64 static build:
https://passt.top/builds/latest/x86_64/passt_0c538ee8-1_all.deb
--
Stefano
The new version with tag 2023_02_16.4663ccc includes the following changes:
4663ccc conf: Fix typo and logic in conf_ports() check for port binding
36f0199 conf, tap: Silence two false positive invalidFunctionArg from cppcheck
89e0fbf tcp: Remove 'zero_len' goto from tcp_data_from_sock
83b2061 tcp: Remove 'recvmsg' goto from tcp_data_from_sock
42bfd21 tap: Eliminate goto from tap_handler()
b62ed9c tap: Don't pcap frames that didn't get sent
d957796 passt.1: Fix typo, improve wording in examples of port forwarding specifiers
77a6d97 dhcp: Fix netmask calculation for option 1 from prefix length
7564b58 tap: Use single counter for iov elements in tap_send_frames_pasta()
3d0de2c conf, tcp, udp: Exit if we fail to bind sockets for all given ports
b4f13c2 log: Don't duplicate messages on stderr before daemonising
c9af6f9 convert all remaining err() followed by exit() to die()
a1ab1ca log a detailed error (not usage()) when there are extra non-option arguments
60bd93e make conf_netns_opt() exit immediately after logging error
ead4a98 make conf_ugid() exit immediately after logging error
fe2a54e make conf_pasta_ns() exit immediately after logging error
b20fe11 make conf_ports() exit immediately after logging error
c864c60 eliminate most calls to usage() in conf()
dac4af8 add die() to log an error message and exit with a single call
193385b log to stderr until process is daemonized, even if a log file is set
dccc2ff test: Fedora 32-35 have moved to the archives
64325a0 test: Update location for Debian ppc64 images
6ccab72 tcp: Improve handling of fallback if socket pool is empty on new splice
dc467d5 tcp: Split pool lookup from creating new sockets in tcp_conn_new_sock()
912d37c tcp: Move socket pool declarations around
c899347 tcp: Split init and ns cases for tcp_sock_refill()
e456c1c tcp: Make a helper to refill each socket pool
ee8353c Makefile: Explict int type in FALLOC_FL_COLLAPSE_RANGE probe
67920b8 test/pasta_options: Ignore failures on shell 'exit'
a234407 pasta: propagate exit code from child command
04dfc5b pasta: correctly exit when execvp() fails
3487b5f pasta: do not leak netlink sock into child
7a8ed94 Make assertions actually useful
cc6d828 tcp: Reset ACK_FROM_TAP_DUE flag only as needed, update timer
ac15359 tap: Send frames after the first one in tap_send_frames_pasta()
d8921da pasta: Wait for tap to be set up before spawning command
54502cc udp: Use tap_send_frames()
2d553b5 tap: Improve handling of partial frame sends
97d1ca2 udp: Use abstracted tap header
0fb7b2b tap: Use different io vector bases depending on tap type
2416310 tcp: Use abstracted tap header
4b3d38a tap: Add "tap headers" abstraction
e4443ba tcp: Consolidate calculation of total frame size
dcea260 tcp: Remove redundant and incorrect initialization from *_iov_init()
716a926 util: Parameterize ethernet header initializer macro
67afaab tcp, udp: Use named field initializers in iov_init functions
f5a9501 util: Introduce hton*_constant() in place of #ifdefs
6d011c1 tap, tcp: Move tap send path to tap.c
e21ee41 tcp: Combine two parts of pasta tap send path together
a79e774 tcp: Improve interface to tcp_l2_buf_flush()
f1d2d35 tcp: Don't compute total bytes in a message until we need it
99f0be3 tcp: Combine two parts of passt tap send path together
d3089eb pcap: Replace pcapm() with pcap_multiple()
cb3c1ce pcap: Introduce pcap_frame() helper
b93d025 udp: Don't use separate sockets to listen for spliced packets
8d503e8 udp: Decide whether to "splice" per datagram rather than per socket
8a10f23 udp: Unify udp_sock_handler_splice() with udp_sock_handler()
f1ed8db udp: Pre-populate msg_names with local address
c9e193b udp: Don't handle tap receive batch size calculation within a #define
4eb54fd udp: Split receive from preparation and send in udp_sock_handler()
09c00f1 udp: Split sending to passt tap interface into separate function
a6e919a udp: Move sending pasta tap frames to the end of udp_sock_handler()
c196953 test/perf/pasta_tcp: Add host to namespace cases for traffic via tap
37f82cc tcp: Explicitly check option length field values in tcp_opt_get()
08c01f5 test/perf/pasta_udp: Add host to namespace cases for traffic via tap
310bdbd udp: Factor out control structure management from udp_sock_fill_data_v[46]
https://passt.top/passt/log/?qt=range&q=2022_11_16.ace074c..2023_02_16.4663…
Packages:
- Debian tracker:
https://tracker.debian.org/pkg/passt
- Copr (CentOS Stream, EPEL, Fedora, Mageia, openSUSE):
https://copr.fedorainfracloud.org/coprs/sbrivio/passt/build/5536686/
permanent mirror: https://passt.top/builds/copr/0^20230216.g4663ccc/
- Debian package, from x86_64 static build:
https://passt.top/builds/latest/x86_64/passt_4663ccc-1_all.deb
- Fedora updates:
https://bodhi.fedoraproject.org/updates/?packages=passt
- Ubuntu tracker:
https://packages.ubuntu.com/lunar/passt
- Static builds:
- Package for other RPM-based distributions, x86_64 only:
https://passt.top/builds/latest/x86_64/passt-g4663ccc-1.x86_64.rpm
- x86_64 static binaries:
https://passt.top/builds/latest/x86_64/
- Debian package, from x86_64 static build:
https://passt.top/builds/latest/x86_64/passt_4663ccc-1_all.deb
--
Stefano