The merged IPv4 SCTP flow-key test covers only IPv4 and only the plain forwarding path. This series adds SCTP over IPv6, and SCTP across conntrack NAT (ovs_nat_update_key() rewrites L4 ports on the recirculated skb). Patch 2 translates the destination port so that SCTP branch is load-bearing; address-only NAT cannot tell a working branch from a missing one.
Full OVS selftest suite is 19/19 OK on a freshly built kernel (sctp_connect_v4, sctp_connect_v6, sctp_nat_connect_v4 included). v5 restores the series title and patch 2 subject to the v1/v2 names. I renamed them in v3 and v4; that was a mistake. v1: https://lore.kernel.org/netdev/[email protected]/ v2: https://lore.kernel.org/netdev/[email protected]/ v3: https://lore.kernel.org/netdev/[email protected]/ v4: https://lore.kernel.org/netdev/[email protected]/ v2: - rebase after net-next reopened (v1 was deferred while the tree was closed). no code change. v3: - usage() tab alignment - wait for the payload with ovs_wait instead of a bare grep - CONFIG_NF_CT_PROTO_SCTP in the config fragment - probe with ct(commit,nat) so kernels without NAT skip - NAT translates the destination port (4443 -> 5555) - commit messages: drop the INIT/DATA claim; point patch 2 at ovs_nat_update_key() v4: - keyless ipv6(proto=132) install must be EINVAL 22 - wrap a few over-80 lines; checkpatch --strict clean - rebase onto 548b86839f7f v5: - TEST_LIST descriptions sit at column 48 with the rest of the file; shortened so expand -t 8 stays under 80 - skip the v6 test when socat has no WITH_IP6 - CONFIG_NF_NAT=m in the ovs fragment so the NAT test is not skipped on the reference config - CONFIG_NETFILTER_ADVANCED=y so CONFIG_NF_CT_PROTO_SCTP is visible (it depends on ADVANCED; without it the symbol is dropped and the NAT test skips) Signed-off-by: Minxi Hou <[email protected]> Minxi Hou (2): selftests/net/openvswitch: add SCTP flow key test over IPv6 selftests/net/openvswitch: add SCTP flow key test across conntrack NAT .../testing/selftests/net/openvswitch/config | 3 + .../selftests/net/openvswitch/openvswitch.sh | 202 ++++++++++++++++++ 2 files changed, 205 insertions(+) base-commit: 548b86839f7fb819a4d6c83b71c73ec378d24275 -- 2.55.0
