Netdev List
 help / color / mirror / Atom feed
* [PATCH v3 0/2] selftests: openvswitch: add SCTP flow key and NAT tests
@ 2026-09-06 16:52 Minxi Hou
  2026-09-06 16:52 ` [PATCH v3 1/2] selftests/net/openvswitch: add SCTP flow key test over IPv6 Minxi Hou
  2026-09-06 16:52 ` [PATCH v3 2/2] selftests/net/openvswitch: add SCTP NAT test with port translation Minxi Hou
  0 siblings, 2 replies; 4+ messages in thread
From: Minxi Hou @ 2026-09-06 16:52 UTC (permalink / raw)
  To: netdev
  Cc: aconole, echaudro, i.maximets, davem, kuba, pabeni, edumazet,
	horms, shuah, linux-kselftest, dev, Minxi Hou

Two new OVS selftests for SCTP:

- patch 1 adds an SCTP flow-key test over IPv6: a client/server
  association is driven through three pipeline phases and the payload
  is checked on the receiver, so a broken SCTP key extract breaks the
  match and the delivery both.
- patch 2 adds SCTP conntrack NAT coverage with port translation:
  DNAT rewrites the destination to 172.31.110.20:5555, the reply comes
  back through the CT inverse tuple, and both post-recirc directions
  are matched on the translated ports. This exercises the SCTP branch
  of ovs_nat_update_key(), which a plain address-only NAT rule never
  reaches.

Both tests probe for the kernel features they need and skip with
$ksft_skip when conntrack/NAT support is missing.

Changes in v3 (review findings from the Sashiko pass on v2):
- restore the tab alignment of the new usage() entries
- wait for the receiver payload with ovs_wait in both tests; a bare
  grep can race the background socat writing the file
- add CONFIG_NF_CT_PROTO_SCTP to the selftest config fragment; without
  it the conntrack table never sees the SCTP association
- probe with ct(commit,nat) so a kernel without NAT support skips the
  test instead of failing when the real flows are added
- translate the destination port in the NAT test (4443 to 5555) so the
  SCTP port-rewrite path in ovs_nat_update_key() is actually covered
- correct the commit logs: drop the INIT/DATA chunk claim (the flow
  key only carries the ports), drop the parse_ipv6hdr coverage claim,
  and point patch 2 at ovs_nat_update_key() instead of
  ovs_flow_key_update_l3l4() which only runs on the defrag path


Minxi Hou (2):
  selftests/net/openvswitch: add SCTP flow key test over IPv6
  selftests/net/openvswitch: add SCTP NAT test with port translation

 .../testing/selftests/net/openvswitch/config  |   1 +
 .../selftests/net/openvswitch/openvswitch.sh  | 182 ++++++++++++++++++
 2 files changed, 183 insertions(+)


base-commit: d0ec95a8a4e79f2fd6063fc8932415db8c227689
-- 
2.55.0


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

end of thread, other threads:[~2026-09-09 14:28 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-06 16:52 [PATCH v3 0/2] selftests: openvswitch: add SCTP flow key and NAT tests Minxi Hou
2026-09-06 16:52 ` [PATCH v3 1/2] selftests/net/openvswitch: add SCTP flow key test over IPv6 Minxi Hou
2026-09-09 14:28   ` Aaron Conole
2026-09-06 16:52 ` [PATCH v3 2/2] selftests/net/openvswitch: add SCTP NAT test with port translation Minxi Hou

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox