Ah so many thanks for your suggestions, Please forgive me,
I've always used ncat to write test cases.

I will re-spin this patch.

Ilya Maximets <[email protected]> 于2026年7月13日周一 10:39写道:

> On 7/7/26 5:47 AM, Minxi Hou wrote:
> > Register OVS_KEY_ATTR_SCTP in the flow key parser so that sctp()
> > can be used in flow specifications. The ovs_key_sctp class already
> > exists (with src/dst fields matching the TCP/UDP siblings) but was
> > not wired into the parser, so the token was silently dropped and the
> > kernel rejected the flow.
> >
> > Add test_sctp_connect_v4 exercising the SCTP flow key with
> > port-specific matching: sctp(dst=4443) for client-to-server and
> > sctp(src=4443) for server-to-client.
> >
> > Wait for ncat readiness with ovs_wait instead of a fixed sleep so
> > the test does not race against ncat startup. Use grep -c on the
> > listening message to distinguish between successive ncat instances
> > that share the same stderr log. Kill the previous server before
> > respawning to avoid EADDRINUSE on the SCTP port.
> >
> > Signed-off-by: Minxi Hou <[email protected]>
> > ---
> > v1 -> v2: replace sleep with ovs_wait on ncat listening output,
> >           kill previous ncat server before respawning to avoid
> >           port conflict (Aaron review feedback)
> >
> >  .../selftests/net/openvswitch/openvswitch.sh  | 102 ++++++++++++++++++
> >  .../selftests/net/openvswitch/ovs-dpctl.py    |   5 +
> >  2 files changed, 107 insertions(+)
> >
> > diff --git a/tools/testing/selftests/net/openvswitch/openvswitch.sh
> b/tools/testing/selftests/net/openvswitch/openvswitch.sh
> > index 2954245129a2..9c364eeb2ec2 100755
> > --- a/tools/testing/selftests/net/openvswitch/openvswitch.sh
> > +++ b/tools/testing/selftests/net/openvswitch/openvswitch.sh
> > @@ -32,6 +32,7 @@ tests="
> >       dec_ttl                                 ttl: dec_ttl decrements IP
> TTL
> >       flow_set                                flow-set: Flow modify
> >       action_set                              set: SET action rewrites
> fields
> > +     sctp_connect_v4                         sctp: SCTP flow key
> matching
> >       psample                                 psample: Sampling packets
> with psample"
> >
> >  info() {
> > @@ -443,6 +444,107 @@ test_action_set() {
> >       return 0
> >  }
> >
> > +# sctp_connect_v4 test
> > +# - sctp(dst=4443) matches client-to-server INIT
> > +# - sctp(src=4443) matches server-to-client INIT-ACK
> > +# - remove flows and verify connection fails, reinstall and recover
> > +test_sctp_connect_v4() {
> > +     local t="test_sctp_connect_v4"
> > +
> > +     which ncat >/dev/null 2>&1 || return $ksft_skip
>
> Not a full review, but can we avoid ncat?  We already use nc in other
> tests, using different implementations of the same thing in different
> tests doesn't sound like a good idea.  On mnay systems nc and ncat
> will be different implementations with different options and behavior.
>
> Best regards, Ilya Maximets.
>
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to