Compared to v18: - add save and restore of permitted SACK and timestamps - return ENOBUFS if pending queues are too large, not ENOMEM - print SO_PEEK_OFF state from v18 9/9 - fix headers of rampstream_in and rampstream_out tests - filter out non-established TCP flows - fix SELinux rule for queue ioctl(): it's getattr, not ioctl Still missing: - reasonable error handling, and "empty flows" if target expects them but we fail to fetch them - tests with half-closed sockets Stefano Brivio (2): migrate: Migrate TCP flows test: Add migration tests contrib/selinux/passt.te | 4 +- flow.c | 260 ++++++++++ flow.h | 8 + migrate.c | 19 + passt.c | 6 +- repair.c | 1 - tcp.c | 916 ++++++++++++++++++++++++++++++++++++ tcp_conn.h | 103 ++++ test/lib/layout | 55 ++- test/lib/setup | 138 +++++- test/lib/test | 48 ++ test/migrate/basic | 59 +++ test/migrate/bidirectional | 64 +++ test/migrate/iperf3_bidir6 | 58 +++ test/migrate/iperf3_in4 | 50 ++ test/migrate/iperf3_in6 | 58 +++ test/migrate/iperf3_out4 | 50 ++ test/migrate/iperf3_out6 | 58 +++ test/migrate/rampstream_in | 10 +- test/migrate/rampstream_out | 6 +- test/run | 29 ++ 21 files changed, 1984 insertions(+), 16 deletions(-) create mode 100644 test/migrate/basic create mode 100644 test/migrate/bidirectional create mode 100644 test/migrate/iperf3_bidir6 create mode 100644 test/migrate/iperf3_in4 create mode 100644 test/migrate/iperf3_in6 create mode 100644 test/migrate/iperf3_out4 create mode 100644 test/migrate/iperf3_out6 -- 2.43.0