<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in Makefile</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>586d8702 - selftests/net: Add trace events matching to tcp_ao</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#586d8702</link>
        <description>selftests/net: Add trace events matching to tcp_aoSetup trace points, add a new ftrace instance in order to not interferewith the rest of the system, filtering by net namespace cookies.Raise a new background thread that parses trace_pipe, matches them withthe list of expected events.Wiring up trace events to selftests provides another insight if there isanything unexpected happining in the tcp-ao code (i.e. key rotation whenit&apos;s not expected).Note: in real programs libtraceevent should be used instead of thismanual labor of setting ftrace up and parsing. I&apos;m not using it hereas I don&apos;t want to have an .so library dependency that one would have tobring into VM or DUT (Device Under Test). Please, don&apos;t copy it overinto any real world programs, that aren&apos;t tests.Signed-off-by: Dmitry Safonov &lt;0x7f454c46@gmail.com&gt;Link: https://patch.msgid.link/20240823-tcp-ao-selftests-upd-6-12-v4-8-05623636fe8c@gmail.comSigned-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 23 Aug 2024 22:04:58 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;0x7f454c46@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>cc937dad - selftests: centralize -D_GNU_SOURCE= to CFLAGS in lib.mk</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#cc937dad</link>
        <description>selftests: centralize -D_GNU_SOURCE= to CFLAGS in lib.mkCentralize the _GNU_SOURCE definition to CFLAGS in lib.mk.  Removeredundant defines from Makefiles that import lib.mk.  Convert any usage of&quot;#define _GNU_SOURCE 1&quot; to &quot;#define _GNU_SOURCE&quot;.This uses the form &quot;-D_GNU_SOURCE=&quot;, which is equivalent to&quot;#define _GNU_SOURCE&quot;.Otherwise using &quot;-D_GNU_SOURCE&quot; is equivalent to &quot;-D_GNU_SOURCE=1&quot; and&quot;#define _GNU_SOURCE 1&quot;, which is less commonly seen in source code andwould require many changes in selftests to avoid redefinition warnings.Link: https://lkml.kernel.org/r/20240625223454.1586259-2-edliaw@google.comSigned-off-by: Edward Liaw &lt;edliaw@google.com&gt;Suggested-by: John Hubbard &lt;jhubbard@nvidia.com&gt;Acked-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;Reviewed-by: Muhammad Usama Anjum &lt;usama.anjum@collabora.com&gt;Cc: Albert Ou &lt;aou@eecs.berkeley.edu&gt;Cc: Andr&#233; Almeida &lt;andrealmeid@igalia.com&gt;Cc: Darren Hart &lt;dvhart@infradead.org&gt;Cc: Dave Hansen &lt;dave.hansen@linux.intel.com&gt;Cc: Davidlohr Bueso &lt;dave@stgolabs.net&gt;Cc: David S. Miller &lt;davem@davemloft.net&gt;Cc: Eric Dumazet &lt;edumazet@google.com&gt;Cc: Eric W. Biederman &lt;ebiederm@xmission.com&gt;Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;Cc: Ingo Molnar &lt;mingo@redhat.com&gt;Cc: Jakub Kicinski &lt;kuba@kernel.org&gt;Cc: Jarkko Sakkinen &lt;jarkko@kernel.org&gt;Cc: Jason Gunthorpe &lt;jgg@ziepe.ca&gt;Cc: Kees Cook &lt;kees@kernel.org&gt;Cc: Kevin Tian &lt;kevin.tian@intel.com&gt;Cc: Palmer Dabbelt &lt;palmer@dabbelt.com&gt;Cc: Paolo Abeni &lt;pabeni@redhat.com&gt;Cc: Paolo Bonzini &lt;pbonzini@redhat.com&gt;Cc: Paul Walmsley &lt;paul.walmsley@sifive.com&gt;Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;Cc: Reinette Chatre &lt;reinette.chatre@intel.com&gt;Cc: Sean Christopherson &lt;seanjc@google.com&gt;Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Tue, 25 Jun 2024 22:34:45 +0000</pubDate>
        <dc:creator>Edward Liaw &lt;edliaw@google.com&gt;</dc:creator>
    </item>
<item>
        <title>e689a876 - selftests/net/tcp-ao: Use LDLIBS instead of LDFLAGS</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#e689a876</link>
        <description>selftests/net/tcp-ao: Use LDLIBS instead of LDFLAGSThe rules to link selftests are:&gt; $(OUTPUT)/%_ipv4: %.c&gt; 	$(LINK.c) $^ $(LDLIBS) -o $@&gt;&gt; $(OUTPUT)/%_ipv6: %.c&gt; 	$(LINK.c) -DIPV6_TEST $^ $(LDLIBS) -o $@The intel test robot uses only selftest&apos;s Makefile, not the top linuxMakefile:&gt; make W=1 O=/tmp/kselftest -C tools/testing/selftestsSo, $(LINK.c) is determined by environment, rather than by kernelMakefiles. On my machine (as well as other people that ran tcp-aoselftests) GNU/Make implicit definition does use $(LDFLAGS):&gt; [dima@Mindolluin ~]$ make -p -f/dev/null | grep &apos;^LINK.c\&gt;&apos;&gt; make: *** No targets.  Stop.&gt; LINK.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH)But, according to build robot report, it&apos;s not the case for them.While I could just avoid using pre-defined $(LINK.c), it&apos;s also used byselftests/lib.mk by default.Anyways, according to GNU/Make documentation [1], I should have used$(LDLIBS) instead of $(LDFLAGS) in the first place, so let&apos;s just do it:&gt; LDFLAGS&gt;     Extra flags to give to compilers when they are supposed to invoke&gt;     the linker, &#8216;ld&#8217;, such as -L. Libraries (-lfoo) should be added&gt;     to the LDLIBS variable instead.&gt; LDLIBS&gt;     Library flags or names given to compilers when they are supposed&gt;     to invoke the linker, &#8216;ld&#8217;. LOADLIBES is a deprecated (but still&gt;     supported) alternative to LDLIBS. Non-library linker flags, such&gt;     as -L, should go in the LDFLAGS variable.[1]: https://www.gnu.org/software/make/manual/html_node/Implicit-Variables.htmlFixes: cfbab37b3da0 (&quot;selftests/net: Add TCP-AO library&quot;)Reported-by: kernel test robot &lt;lkp@intel.com&gt;Closes: https://lore.kernel.org/oe-kbuild-all/202401011151.veyYTJzq-lkp@intel.com/Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Acked-by: Paolo Abeni &lt;pabeni@redhat.com&gt;Link: https://lore.kernel.org/r/20240110-tcp_ao-selftests-makefile-v1-1-aa07d043f052@arista.comSigned-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Wed, 10 Jan 2024 21:34:10 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>826eb9bc - selftest/tcp-ao: Rectify out-of-tree build</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#826eb9bc</link>
        <description>selftest/tcp-ao: Rectify out-of-tree buildTrivial fix for out-of-tree build that I wasn&apos;t testing previously:1. Create a directory for library object files, fixes:&gt; gcc lib/kconfig.c -Wall -O2 -g -D_GNU_SOURCE -fno-strict-aliasing -I ../../../../../usr/include/ -iquote /tmp/kselftest/kselftest/net/tcp_ao/lib -I ../../../../include/  -o /tmp/kselftest/kselftest/net/tcp_ao/lib/kconfig.o -c&gt; Assembler messages:&gt; Fatal error: can&apos;t create /tmp/kselftest/kselftest/net/tcp_ao/lib/kconfig.o: No such file or directory&gt; make[1]: *** [Makefile:46: /tmp/kselftest/kselftest/net/tcp_ao/lib/kconfig.o] Error 12. Include $(KHDR_INCLUDES) that&apos;s exported by selftests/Makefile, fixes:&gt; In file included from lib/kconfig.c:6:&gt; lib/aolib.h:320:45: warning: &#8216;struct tcp_ao_add&#8217; declared inside parameter list will not be visible outside of this definition or declaration&gt;   320 | extern int test_prepare_key_sockaddr(struct tcp_ao_add *ao, const char *alg,&gt;       |                                             ^~~~~~~~~~...3. While at here, clean-up $(KSFT_KHDR_INSTALL): it&apos;s not needed anymore   since commit f2745dc0ba3d (&quot;selftests: stop using KSFT_KHDR_INSTALL&quot;)4. Also, while at here, drop .DEFAULT_GOAL definition: that has a   self-explaining comment, that was valid when I made these selftests   compile on local v4.19 kernel, but not needed since   commit 8ce72dc32578 (&quot;selftests: fix headers_install circular dependency&quot;)Fixes: cfbab37b3da0 (&quot;selftests/net: Add TCP-AO library&quot;)Reported-by: kernel test robot &lt;lkp@intel.com&gt;Closes: https://lore.kernel.org/oe-kbuild-all/202312190645.q76MmHyq-lkp@intel.com/Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Tue, 19 Dec 2023 02:03:05 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>3c3ead55 - selftests/net: Add TCP-AO key-management test</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#3c3ead55</link>
        <description>selftests/net: Add TCP-AO key-management testCheck multiple keys on a socket:- rotation on closed socket- current/rnext operations shouldn&apos;t be possible on listen sockets- current/rnext key set should be the one, that&apos;s used on connect()- key rotations with pseudo-random generated keys- copying matching keys on connect() and on accept()At this moment there are 3 tests that are &quot;expected&quot; to fail: a kernelfix is needed to improve the situation, they are marked XFAIL.Sample output:&gt; # ./key-management_ipv4&gt; 1..120&gt; # 1601[lib/setup.c:239] rand seed 1700526653&gt; TAP version 13&gt; ok 1 closed socket, delete a key: the key was deleted&gt; ok 2 closed socket, delete all keys: the key was deleted&gt; ok 3 closed socket, delete current key: key deletion was prevented&gt; ok 4 closed socket, delete rnext key: key deletion was prevented&gt; ok 5 closed socket, delete a key + set current/rnext: the key was deleted&gt; ok 6 closed socket, force-delete current key: the key was deleted&gt; ok 7 closed socket, force-delete rnext key: the key was deleted&gt; ok 8 closed socket, delete current+rnext key: key deletion was prevented&gt; ok 9 closed socket, add + change current key&gt; ok 10 closed socket, add + change rnext key&gt; ok 11 listen socket, delete a key: the key was deleted&gt; ok 12 listen socket, delete all keys: the key was deleted&gt; ok 13 listen socket, setting current key not allowed&gt; ok 14 listen socket, setting rnext key not allowed&gt; ok 15 # XFAIL listen() after current/rnext keys set: the socket has current/rnext keys: 100:200&gt; ok 16 # XFAIL listen socket, delete current key from before listen(): failed to delete the key 100:100 -16&gt; ok 17 # XFAIL listen socket, delete rnext key from before listen(): failed to delete the key 200:200 -16&gt; ok 18 listen socket, getsockopt(TCP_AO_REPAIR) is restricted&gt; ok 19 listen socket, setsockopt(TCP_AO_REPAIR) is restricted&gt; ok 20 listen socket, delete a key + set current/rnext: key deletion was prevented&gt; ok 21 listen socket, force-delete current key: key deletion was prevented&gt; ok 22 listen socket, force-delete rnext key: key deletion was prevented&gt; ok 23 listen socket, delete a key: the key was deleted&gt; ok 24 listen socket, add + change current key&gt; ok 25 listen socket, add + change rnext key&gt; ok 26 server: Check current/rnext keys unset before connect(): The socket keys are consistent with the expectations&gt; ok 27 client: Check current/rnext keys unset before connect(): current key 19 as expected&gt; ok 28 client: Check current/rnext keys unset before connect(): rnext key 146 as expected&gt; ok 29 server: Check current/rnext keys unset before connect(): server alive&gt; ok 30 server: Check current/rnext keys unset before connect(): passed counters checks&gt; ok 31 client: Check current/rnext keys unset before connect(): The socket keys are consistent with the expectations&gt; ok 32 server: Check current/rnext keys unset before connect(): The socket keys are consistent with the expectations&gt; ok 33 server: Check current/rnext keys unset before connect(): passed counters checks&gt; ok 34 client: Check current/rnext keys unset before connect(): passed counters checks&gt; ok 35 server: Check current/rnext keys set before connect(): The socket keys are consistent with the expectations&gt; ok 36 server: Check current/rnext keys set before connect(): server alive&gt; ok 37 server: Check current/rnext keys set before connect(): passed counters checks&gt; ok 38 client: Check current/rnext keys set before connect(): current key 10 as expected&gt; ok 39 client: Check current/rnext keys set before connect(): rnext key 137 as expected&gt; ok 40 server: Check current/rnext keys set before connect(): The socket keys are consistent with the expectations&gt; ok 41 client: Check current/rnext keys set before connect(): The socket keys are consistent with the expectations&gt; ok 42 client: Check current/rnext keys set before connect(): passed counters checks&gt; ok 43 server: Check current/rnext keys set before connect(): passed counters checks&gt; ok 44 server: Check current != rnext keys set before connect(): The socket keys are consistent with the expectations&gt; ok 45 server: Check current != rnext keys set before connect(): server alive&gt; ok 46 server: Check current != rnext keys set before connect(): passed counters checks&gt; ok 47 client: Check current != rnext keys set before connect(): current key 10 as expected&gt; ok 48 client: Check current != rnext keys set before connect(): rnext key 132 as expected&gt; ok 49 server: Check current != rnext keys set before connect(): The socket keys are consistent with the expectations&gt; ok 50 client: Check current != rnext keys set before connect(): The socket keys are consistent with the expectations&gt; ok 51 client: Check current != rnext keys set before connect(): passed counters checks&gt; ok 52 server: Check current != rnext keys set before connect(): passed counters checks&gt; ok 53 server: Check current flapping back on peer&apos;s RnextKey request: The socket keys are consistent with the expectations&gt; ok 54 server: Check current flapping back on peer&apos;s RnextKey request: server alive&gt; ok 55 server: Check current flapping back on peer&apos;s RnextKey request: passed counters checks&gt; ok 56 client: Check current flapping back on peer&apos;s RnextKey request: current key 10 as expected&gt; ok 57 client: Check current flapping back on peer&apos;s RnextKey request: rnext key 132 as expected&gt; ok 58 server: Check current flapping back on peer&apos;s RnextKey request: The socket keys are consistent with the expectations&gt; ok 59 client: Check current flapping back on peer&apos;s RnextKey request: The socket keys are consistent with the expectations&gt; ok 60 server: Check current flapping back on peer&apos;s RnextKey request: passed counters checks&gt; ok 61 client: Check current flapping back on peer&apos;s RnextKey request: passed counters checks&gt; ok 62 server: Rotate over all different keys: The socket keys are consistent with the expectations&gt; ok 63 server: Rotate over all different keys: server alive&gt; ok 64 server: Rotate over all different keys: passed counters checks&gt; ok 65 server: Rotate over all different keys: current key 128 as expected&gt; ok 66 client: Rotate over all different keys: rnext key 128 as expected&gt; ok 67 server: Rotate over all different keys: current key 129 as expected&gt; ok 68 client: Rotate over all different keys: rnext key 129 as expected&gt; ok 69 server: Rotate over all different keys: current key 130 as expected&gt; ok 70 client: Rotate over all different keys: rnext key 130 as expected&gt; ok 71 server: Rotate over all different keys: current key 131 as expected&gt; ok 72 client: Rotate over all different keys: rnext key 131 as expected&gt; ok 73 server: Rotate over all different keys: current key 132 as expected&gt; ok 74 client: Rotate over all different keys: rnext key 132 as expected&gt; ok 75 server: Rotate over all different keys: current key 133 as expected&gt; ok 76 client: Rotate over all different keys: rnext key 133 as expected&gt; ok 77 server: Rotate over all different keys: current key 134 as expected&gt; ok 78 client: Rotate over all different keys: rnext key 134 as expected&gt; ok 79 server: Rotate over all different keys: current key 135 as expected&gt; ok 80 client: Rotate over all different keys: rnext key 135 as expected&gt; ok 81 server: Rotate over all different keys: current key 136 as expected&gt; ok 82 client: Rotate over all different keys: rnext key 136 as expected&gt; ok 83 server: Rotate over all different keys: current key 137 as expected&gt; ok 84 client: Rotate over all different keys: rnext key 137 as expected&gt; ok 85 server: Rotate over all different keys: current key 138 as expected&gt; ok 86 client: Rotate over all different keys: rnext key 138 as expected&gt; ok 87 server: Rotate over all different keys: current key 139 as expected&gt; ok 88 client: Rotate over all different keys: rnext key 139 as expected&gt; ok 89 server: Rotate over all different keys: current key 140 as expected&gt; ok 90 client: Rotate over all different keys: rnext key 140 as expected&gt; ok 91 server: Rotate over all different keys: current key 141 as expected&gt; ok 92 client: Rotate over all different keys: rnext key 141 as expected&gt; ok 93 server: Rotate over all different keys: current key 142 as expected&gt; ok 94 client: Rotate over all different keys: rnext key 142 as expected&gt; ok 95 server: Rotate over all different keys: current key 143 as expected&gt; ok 96 client: Rotate over all different keys: rnext key 143 as expected&gt; ok 97 server: Rotate over all different keys: current key 144 as expected&gt; ok 98 client: Rotate over all different keys: rnext key 144 as expected&gt; ok 99 server: Rotate over all different keys: current key 145 as expected&gt; ok 100 client: Rotate over all different keys: rnext key 145 as expected&gt; ok 101 server: Rotate over all different keys: current key 146 as expected&gt; ok 102 client: Rotate over all different keys: rnext key 146 as expected&gt; ok 103 server: Rotate over all different keys: current key 127 as expected&gt; ok 104 client: Rotate over all different keys: rnext key 127 as expected&gt; ok 105 client: Rotate over all different keys: current key 0 as expected&gt; ok 106 client: Rotate over all different keys: rnext key 127 as expected&gt; ok 107 server: Rotate over all different keys: The socket keys are consistent with the expectations&gt; ok 108 client: Rotate over all different keys: The socket keys are consistent with the expectations&gt; ok 109 client: Rotate over all different keys: passed counters checks&gt; ok 110 server: Rotate over all different keys: passed counters checks&gt; ok 111 server: Check accept() =&gt; established key matching: The socket keys are consistent with the expectations&gt; ok 112 Can&apos;t add a key with non-matching ip-address for established sk&gt; ok 113 Can&apos;t add a key with non-matching VRF for established sk&gt; ok 114 server: Check accept() =&gt; established key matching: server alive&gt; ok 115 server: Check accept() =&gt; established key matching: passed counters checks&gt; ok 116 client: Check connect() =&gt; established key matching: current key 0 as expected&gt; ok 117 client: Check connect() =&gt; established key matching: rnext key 128 as expected&gt; ok 118 client: Check connect() =&gt; established key matching: The socket keys are consistent with the expectations&gt; ok 119 server: Check accept() =&gt; established key matching: The socket keys are consistent with the expectations&gt; ok 120 server: Check accept() =&gt; established key matching: passed counters checks&gt; # Totals: pass:120 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:26 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>8c4e8dd0 - selftests/net: Add TCP-AO selfconnect/simultaneous connect test</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#8c4e8dd0</link>
        <description>selftests/net: Add TCP-AO selfconnect/simultaneous connect testCheck that a rare functionality of TCP named self-connect works withTCP-AO. This &quot;under the cover&quot; also checks TCP simultaneous connect(TCP_SYN_RECV socket state), which would be harder to check other ways.In order to verify that it&apos;s indeed TCP simultaneous connect, checkthe counters TCPChallengeACK and TCPSYNChallenge.Sample of the output:&gt; # ./self-connect_ipv6&gt; 1..4&gt; # 1738[lib/setup.c:254] rand seed 1696451931&gt; TAP version 13&gt; ok 1 self-connect(same keyids): connect TCPAOGood 0 =&gt; 24&gt; ok 2 self-connect(different keyids): connect TCPAOGood 26 =&gt; 50&gt; ok 3 self-connect(restore): connect TCPAOGood 52 =&gt; 97&gt; ok 4 self-connect(restore, different keyids): connect TCPAOGood 99 =&gt; 144&gt; # Totals: pass:4 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:25 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>c6df7b23 - selftests/net: Add TCP-AO RST test</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#c6df7b23</link>
        <description>selftests/net: Add TCP-AO RST testCheck that both active and passive reset works and correctly signsegments with TCP-AO or don&apos;t send RSTs if not possible to sign.A listening socket with backlog = 0 gets one connection in acceptqueue, another in syn queue. Once the server/listener socket isforcibly closed, client sockets aren&apos;t connected to anything.In regular situation they would receive RST on any segment, butwith TCP-AO as there&apos;s no listener, no AO-key and unknown ISNs,no RST should be sent.And &quot;passive&quot; reset, where RST is sent on reply for some segment(tcp_v{4,6}_send_reset()) - there use TCP_REPAIR to corrupt SEQ numbers,which later results in TCP-AO signed RST, which will be verified andclient socket will get EPIPE.No TCPAORequired/TCPAOBad segments are expected during these tests.Sample of the output:&gt; # ./rst_ipv4&gt; 1..15&gt; # 1462[lib/setup.c:254] rand seed 1686611171&gt; TAP version 13&gt; ok 1 servered 1000 bytes&gt; ok 2 Verified established tcp connection&gt; ok 3 sk[0] = 7, connection was reset&gt; ok 4 sk[1] = 8, connection was reset&gt; ok 5 sk[2] = 9&gt; ok 6 MKT counters are good on server&gt; ok 7 Verified established tcp connection&gt; ok 8 client connection broken post-seq-adjust&gt; ok 9 client connection was reset&gt; ok 10 No segments without AO sign (server)&gt; ok 11 Signed AO segments (server): 0 =&gt; 30&gt; ok 12 No segments with bad AO sign (server)&gt; ok 13 No segments without AO sign (client)&gt; ok 14 Signed AO segments (client): 0 =&gt; 30&gt; ok 15 No segments with bad AO sign (client)&gt; # Totals: pass:15 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:24 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>0d16eae5 - selftests/net: Add SEQ number extension test</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#0d16eae5</link>
        <description>selftests/net: Add SEQ number extension testCheck that on SEQ number wraparound there is no disruption or TCPAOBadsegments produced.Sample of expected output:&gt; # ./seq-ext_ipv4&gt; 1..7&gt; # 1436[lib/setup.c:254] rand seed 1686611079&gt; TAP version 13&gt; ok 1 server alive&gt; ok 2 post-migrate connection alive&gt; ok 3 TCPAOGood counter increased 1002 =&gt; 3002&gt; ok 4 TCPAOGood counter increased 1003 =&gt; 3003&gt; ok 5 TCPAOBad counter didn&apos;t increase&gt; ok 6 TCPAOBad counter didn&apos;t increase&gt; ok 7 SEQ extension incremented: 1/1999, 1/998999&gt; # Totals: pass:7 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:23 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>3715d32d - selftests/net: Add TCP_REPAIR TCP-AO tests</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#3715d32d</link>
        <description>selftests/net: Add TCP_REPAIR TCP-AO testsThe test plan is:1. check that TCP-AO connection may be restored on another socket2. check restore with wrong send/recv ISN (checking that they are   part of MAC generation)3. check restore with wrong SEQ number extension (checking that   high bytes of it taken into MAC generation)Sample output expected:&gt; # ./restore_ipv4&gt; 1..20&gt; # 1412[lib/setup.c:254] rand seed 1686610825&gt; TAP version 13&gt; ok 1 TCP-AO migrate to another socket: server alive&gt; ok 2 TCP-AO migrate to another socket: post-migrate connection is alive&gt; ok 3 TCP-AO migrate to another socket: counter TCPAOGood increased 23 =&gt; 44&gt; ok 4 TCP-AO migrate to another socket: counter TCPAOGood increased 22 =&gt; 42&gt; ok 5 TCP-AO with wrong send ISN: server couldn&apos;t serve&gt; ok 6 TCP-AO with wrong send ISN: post-migrate connection is broken&gt; ok 7 TCP-AO with wrong send ISN: counter TCPAOBad increased 0 =&gt; 4&gt; ok 8 TCP-AO with wrong send ISN: counter TCPAOBad increased 0 =&gt; 3&gt; ok 9 TCP-AO with wrong receive ISN: server couldn&apos;t serve&gt; ok 10 TCP-AO with wrong receive ISN: post-migrate connection is broken&gt; ok 11 TCP-AO with wrong receive ISN: counter TCPAOBad increased 4 =&gt; 8&gt; ok 12 TCP-AO with wrong receive ISN: counter TCPAOBad increased 5 =&gt; 10&gt; ok 13 TCP-AO with wrong send SEQ ext number: server couldn&apos;t serve&gt; ok 14 TCP-AO with wrong send SEQ ext number: post-migrate connection is broken&gt; ok 15 TCP-AO with wrong send SEQ ext number: counter TCPAOBad increased 9 =&gt; 10&gt; ok 16 TCP-AO with wrong send SEQ ext number: counter TCPAOBad increased 11 =&gt; 19&gt; ok 17 TCP-AO with wrong receive SEQ ext number: post-migrate connection is broken&gt; ok 18 TCP-AO with wrong receive SEQ ext number: server couldn&apos;t serve&gt; ok 19 TCP-AO with wrong receive SEQ ext number: counter TCPAOBad increased 10 =&gt; 18&gt; ok 20 TCP-AO with wrong receive SEQ ext number: counter TCPAOBad increased 20 =&gt; 23&gt; # Totals: pass:20 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:22 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>d1066c9c - selftests/net: Add test/benchmark for removing MKTs</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#d1066c9c</link>
        <description>selftests/net: Add test/benchmark for removing MKTsSample output:&gt; 1..36&gt; # 1106[lib/setup.c:207] rand seed 1660754406&gt; TAP version 13&gt; ok 1   Worst case connect       512 keys: min=0ms max=1ms mean=0.583329ms stddev=0.076376&gt; ok 2 Connect random-search      512 keys: min=0ms max=1ms mean=0.53412ms stddev=0.0516779&gt; ok 3    Worst case delete       512 keys: min=2ms max=11ms mean=6.04139ms stddev=0.245792&gt; ok 4        Add a new key       512 keys: min=0ms max=13ms mean=0.673415ms stddev=0.0820618&gt; ok 5 Remove random-search       512 keys: min=5ms max=9ms mean=6.65969ms stddev=0.258064&gt; ok 6         Remove async       512 keys: min=0ms max=0ms mean=0.041825ms stddev=0.0204512&gt; ok 7   Worst case connect       1024 keys: min=0ms max=2ms mean=0.520357ms stddev=0.0721358&gt; ok 8 Connect random-search      1024 keys: min=0ms max=2ms mean=0.535312ms stddev=0.0517355&gt; ok 9    Worst case delete       1024 keys: min=5ms max=9ms mean=8.27219ms stddev=0.287614&gt; ok 10        Add a new key      1024 keys: min=0ms max=1ms mean=0.688121ms stddev=0.0829531&gt; ok 11 Remove random-search      1024 keys: min=5ms max=9ms mean=8.37649ms stddev=0.289422&gt; ok 12         Remove async      1024 keys: min=0ms max=0ms mean=0.0457096ms stddev=0.0213798&gt; ok 13   Worst case connect      2048 keys: min=0ms max=2ms mean=0.748804ms stddev=0.0865335&gt; ok 14 Connect random-search     2048 keys: min=0ms max=2ms mean=0.782993ms stddev=0.0625697&gt; ok 15    Worst case delete      2048 keys: min=5ms max=10ms mean=8.23106ms stddev=0.286898&gt; ok 16        Add a new key      2048 keys: min=0ms max=1ms mean=0.812988ms stddev=0.0901658&gt; ok 17 Remove random-search      2048 keys: min=8ms max=9ms mean=8.84949ms stddev=0.297481&gt; ok 18         Remove async      2048 keys: min=0ms max=0ms mean=0.0297223ms stddev=0.0172402&gt; ok 19   Worst case connect      4096 keys: min=1ms max=5ms mean=1.53352ms stddev=0.123836&gt; ok 20 Connect random-search     4096 keys: min=1ms max=5ms mean=1.52226ms stddev=0.0872429&gt; ok 21    Worst case delete      4096 keys: min=5ms max=9ms mean=8.25874ms stddev=0.28738&gt; ok 22        Add a new key      4096 keys: min=0ms max=3ms mean=1.67382ms stddev=0.129376&gt; ok 23 Remove random-search      4096 keys: min=5ms max=10ms mean=8.26178ms stddev=0.287433&gt; ok 24         Remove async      4096 keys: min=0ms max=0ms mean=0.0340009ms stddev=0.0184393&gt; ok 25   Worst case connect      8192 keys: min=2ms max=4ms mean=2.86208ms stddev=0.169177&gt; ok 26 Connect random-search     8192 keys: min=2ms max=4ms mean=2.87592ms stddev=0.119915&gt; ok 27    Worst case delete      8192 keys: min=6ms max=11ms mean=7.55291ms stddev=0.274826&gt; ok 28        Add a new key      8192 keys: min=1ms max=5ms mean=2.56797ms stddev=0.160249&gt; ok 29 Remove random-search      8192 keys: min=5ms max=10ms mean=7.14002ms stddev=0.267208&gt; ok 30         Remove async      8192 keys: min=0ms max=0ms mean=0.0320066ms stddev=0.0178904&gt; ok 31   Worst case connect      16384 keys: min=5ms max=6ms mean=5.55334ms stddev=0.235655&gt; ok 32 Connect random-search     16384 keys: min=5ms max=6ms mean=5.52614ms stddev=0.166225&gt; ok 33    Worst case delete      16384 keys: min=5ms max=11ms mean=7.39109ms stddev=0.271866&gt; ok 34        Add a new key      16384 keys: min=2ms max=4ms mean=3.35799ms stddev=0.183248&gt; ok 35 Remove random-search      16384 keys: min=5ms max=8ms mean=6.86078ms stddev=0.261931&gt; ok 36         Remove async      16384 keys: min=0ms max=0ms mean=0.0302384ms stddev=0.0173892&gt; # Totals: pass:36 fail:0 xfail:0 xpass:0 skip:0 error:0&gt;From the output it&apos;s visible that the current simplified approach withlinked-list of MKTs scales quite fine even for thousands of keys.And that also means that the majority of the time for delete is eaten bysynchronize_rcu() [which I can confirm separately by tracing].Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:21 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>6f0c472a - selftests/net: Add TCP-AO + TCP-MD5 + no sign listen socket tests</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#6f0c472a</link>
        <description>selftests/net: Add TCP-AO + TCP-MD5 + no sign listen socket testsThe test plan was (most of tests have all 3 client types):1. TCP-AO listen (INADDR_ANY)2. TCP-MD5 listen (INADDR_ANY)3. non-signed listen (INADDR_ANY)4. TCP-AO + TCP-MD5 listen (prefix)5. TCP-AO subprefix add failure [checked in setsockopt-closed.c]6. TCP-AO out of prefix connect [checked in connect-deny.c]7. TCP-AO + TCP-MD5 on connect()8. TCP-AO intersect with TCP-MD5 failure9. Established TCP-AO: add TCP-MD5 key10. Established TCP-MD5: add TCP-AO key11. Established non-signed: add TCP-AO keyOutput produced:&gt; # ./unsigned-md5_ipv6&gt; 1..72&gt; # 1592[lib/setup.c:239] rand seed 1697567046&gt; TAP version 13&gt; ok 1 AO server (INADDR_ANY): AO client: counter TCPAOGood increased 0 =&gt; 2&gt; ok 2 AO server (INADDR_ANY): AO client: connected&gt; ok 3 AO server (INADDR_ANY): MD5 client&gt; ok 4 AO server (INADDR_ANY): MD5 client: counter TCPMD5Unexpected increased 0 =&gt; 1&gt; ok 5 AO server (INADDR_ANY): no sign client: counter TCPAORequired increased 0 =&gt; 1&gt; ok 6 AO server (INADDR_ANY): unsigned client&gt; ok 7 AO server (AO_REQUIRED): AO client: connected&gt; ok 8 AO server (AO_REQUIRED): AO client: counter TCPAOGood increased 4 =&gt; 6&gt; ok 9 AO server (AO_REQUIRED): unsigned client&gt; ok 10 AO server (AO_REQUIRED): unsigned client: counter TCPAORequired increased 1 =&gt; 2&gt; ok 11 MD5 server (INADDR_ANY): AO client: counter TCPAOKeyNotFound increased 0 =&gt; 1&gt; ok 12 MD5 server (INADDR_ANY): AO client&gt; ok 13 MD5 server (INADDR_ANY): MD5 client: connected&gt; ok 14 MD5 server (INADDR_ANY): MD5 client: no counter checks&gt; ok 15 MD5 server (INADDR_ANY): no sign client&gt; ok 16 MD5 server (INADDR_ANY): no sign client: counter TCPMD5NotFound increased 0 =&gt; 1&gt; ok 17 no sign server: AO client&gt; ok 18 no sign server: AO client: counter TCPAOKeyNotFound increased 1 =&gt; 2&gt; ok 19 no sign server: MD5 client&gt; ok 20 no sign server: MD5 client: counter TCPMD5Unexpected increased 1 =&gt; 2&gt; ok 21 no sign server: no sign client: connected&gt; ok 22 no sign server: no sign client: counter CurrEstab increased 0 =&gt; 1&gt; ok 23 AO+MD5 server: AO client (matching): connected&gt; ok 24 AO+MD5 server: AO client (matching): counter TCPAOGood increased 8 =&gt; 10&gt; ok 25 AO+MD5 server: AO client (misconfig, matching MD5)&gt; ok 26 AO+MD5 server: AO client (misconfig, matching MD5): counter TCPAOKeyNotFound increased 2 =&gt; 3&gt; ok 27 AO+MD5 server: AO client (misconfig, non-matching): counter TCPAOKeyNotFound increased 3 =&gt; 4&gt; ok 28 AO+MD5 server: AO client (misconfig, non-matching)&gt; ok 29 AO+MD5 server: MD5 client (matching): connected&gt; ok 30 AO+MD5 server: MD5 client (matching): no counter checks&gt; ok 31 AO+MD5 server: MD5 client (misconfig, matching AO)&gt; ok 32 AO+MD5 server: MD5 client (misconfig, matching AO): counter TCPMD5Unexpected increased 2 =&gt; 3&gt; ok 33 AO+MD5 server: MD5 client (misconfig, non-matching)&gt; ok 34 AO+MD5 server: MD5 client (misconfig, non-matching): counter TCPMD5Unexpected increased 3 =&gt; 4&gt; ok 35 AO+MD5 server: no sign client (unmatched): connected&gt; ok 36 AO+MD5 server: no sign client (unmatched): counter CurrEstab increased 0 =&gt; 1&gt; ok 37 AO+MD5 server: no sign client (misconfig, matching AO)&gt; ok 38 AO+MD5 server: no sign client (misconfig, matching AO): counter TCPAORequired increased 2 =&gt; 3&gt; ok 39 AO+MD5 server: no sign client (misconfig, matching MD5)&gt; ok 40 AO+MD5 server: no sign client (misconfig, matching MD5): counter TCPMD5NotFound increased 1 =&gt; 2&gt; ok 41 AO+MD5 server: client with both [TCP-MD5] and TCP-AO keys: connect() was prevented&gt; ok 42 AO+MD5 server: client with both [TCP-MD5] and TCP-AO keys: no counter checks&gt; ok 43 AO+MD5 server: client with both TCP-MD5 and [TCP-AO] keys: connect() was prevented&gt; ok 44 AO+MD5 server: client with both TCP-MD5 and [TCP-AO] keys: no counter checks&gt; ok 45 TCP-AO established: add TCP-MD5 key: postfailed as expected&gt; ok 46 TCP-AO established: add TCP-MD5 key: counter TCPAOGood increased 12 =&gt; 14&gt; ok 47 TCP-MD5 established: add TCP-AO key: postfailed as expected&gt; ok 48 TCP-MD5 established: add TCP-AO key: no counter checks&gt; ok 49 non-signed established: add TCP-AO key: postfailed as expected&gt; ok 50 non-signed established: add TCP-AO key: counter CurrEstab increased 0 =&gt; 1&gt; ok 51 TCP-AO key intersects with existing TCP-MD5 key: prefailed as expected: Key was rejected by service&gt; ok 52 TCP-MD5 key intersects with existing TCP-AO key: prefailed as expected: Key was rejected by service&gt; ok 53 TCP-MD5 key + TCP-AO required: prefailed as expected: Key was rejected by service&gt; ok 54 TCP-AO required on socket + TCP-MD5 key: prefailed as expected: Key was rejected by service&gt; ok 55 VRF: TCP-AO key (no l3index) + TCP-MD5 key (no l3index): prefailed as expected: Key was rejected by service&gt; ok 56 VRF: TCP-MD5 key (no l3index) + TCP-AO key (no l3index): prefailed as expected: Key was rejected by service&gt; ok 57 VRF: TCP-AO key (no l3index) + TCP-MD5 key (l3index=0): prefailed as expected: Key was rejected by service&gt; ok 58 VRF: TCP-MD5 key (l3index=0) + TCP-AO key (no l3index): prefailed as expected: Key was rejected by service&gt; ok 59 VRF: TCP-AO key (no l3index) + TCP-MD5 key (l3index=N): prefailed as expected: Key was rejected by service&gt; ok 60 VRF: TCP-MD5 key (l3index=N) + TCP-AO key (no l3index): prefailed as expected: Key was rejected by service&gt; ok 61 VRF: TCP-AO key (l3index=0) + TCP-MD5 key (no l3index): prefailed as expected: Key was rejected by service&gt; ok 62 VRF: TCP-MD5 key (no l3index) + TCP-AO key (l3index=0): prefailed as expected: Key was rejected by service&gt; ok 63 VRF: TCP-AO key (l3index=0) + TCP-MD5 key (l3index=0): prefailed as expected: Key was rejected by service&gt; ok 64 VRF: TCP-MD5 key (l3index=0) + TCP-AO key (l3index=0): prefailed as expected: Key was rejected by service&gt; ok 65 VRF: TCP-AO key (l3index=0) + TCP-MD5 key (l3index=N)&gt; ok 66 VRF: TCP-MD5 key (l3index=N) + TCP-AO key (l3index=0)&gt; ok 67 VRF: TCP-AO key (l3index=N) + TCP-MD5 key (no l3index): prefailed as expected: Key was rejected by service&gt; ok 68 VRF: TCP-MD5 key (no l3index) + TCP-AO key (l3index=N): prefailed as expected: Key was rejected by service&gt; ok 69 VRF: TCP-AO key (l3index=N) + TCP-MD5 key (l3index=0)&gt; ok 70 VRF: TCP-MD5 key (l3index=0) + TCP-AO key (l3index=N)&gt; ok 71 VRF: TCP-AO key (l3index=N) + TCP-MD5 key (l3index=N): prefailed as expected: Key was rejected by service&gt; ok 72 VRF: TCP-MD5 key (l3index=N) + TCP-AO key (l3index=N): prefailed as expected: Key was rejected by service&gt; # Totals: pass:72 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:20 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>b2666053 - selftests/net: Add test for TCP-AO add setsockopt() command</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#b2666053</link>
        <description>selftests/net: Add test for TCP-AO add setsockopt() commandVerify corner-cases for UAPI.Sample output:&gt; # ./setsockopt-closed_ipv4&gt; 1..120&gt; # 1657[lib/setup.c:254] rand seed 1681938184&gt; TAP version 13&gt; ok 1 AO add: minimum size&gt; ok 2 AO add: extended size&gt; ok 3 AO add: null optval&gt; ok 4 AO del: minimum size&gt; ok 5 AO del: extended size&gt; ok 6 AO del: null optval&gt; ok 7 AO set info: minimum size&gt; ok 8 AO set info: extended size&gt; ok 9 AO info get: : extended size&gt; ok 10 AO set info: null optval&gt; ok 11 AO get info: minimum size&gt; ok 12 AO get info: extended size&gt; ok 13 AO get info: null optval&gt; ok 14 AO get info: null optlen&gt; ok 15 AO get keys: minimum size&gt; ok 16 AO get keys: extended size&gt; ok 17 AO get keys: null optval&gt; ok 18 AO get keys: null optlen&gt; ok 19 key add: too big keylen&gt; ok 20 key add: using reserved padding&gt; ok 21 key add: using reserved2 padding&gt; ok 22 key add: wrong address family&gt; ok 23 key add: port (unsupported)&gt; ok 24 key add: no prefix, addr&gt; ok 25 key add: no prefix, any addr&gt; ok 26 key add: prefix, any addr&gt; ok 27 key add: too big prefix&gt; ok 28 key add: too short prefix&gt; ok 29 key add: bad key flags&gt; ok 30 key add: add current key on a listen socket&gt; ok 31 key add: add rnext key on a listen socket&gt; ok 32 key add: add current+rnext key on a listen socket&gt; ok 33 key add: add key and set as current&gt; ok 34 key add: add key and set as rnext&gt; ok 35 key add: add key and set as current+rnext&gt; ok 36 key add: ifindex without TCP_AO_KEYF_IFNINDEX&gt; ok 37 key add: non-existent VRF&gt; ok 38 optmem limit was hit on adding 69 key&gt; ok 39 key add: maclen bigger than TCP hdr&gt; ok 40 key add: bad algo&gt; ok 41 key del: using reserved padding&gt; ok 42 key del: using reserved2 padding&gt; ok 43 key del: del and set current key on a listen socket&gt; ok 44 key del: del and set rnext key on a listen socket&gt; ok 45 key del: del and set current+rnext key on a listen socket&gt; ok 46 key del: bad key flags&gt; ok 47 key del: ifindex without TCP_AO_KEYF_IFNINDEX&gt; ok 48 key del: non-existent VRF&gt; ok 49 key del: set non-exising current key&gt; ok 50 key del: set non-existing rnext key&gt; ok 51 key del: set non-existing current+rnext key&gt; ok 52 key del: set current key&gt; ok 53 key del: set rnext key&gt; ok 54 key del: set current+rnext key&gt; ok 55 key del: set as current key to be removed&gt; ok 56 key del: set as rnext key to be removed&gt; ok 57 key del: set as current+rnext key to be removed&gt; ok 58 key del: async on non-listen&gt; ok 59 key del: non-existing sndid&gt; ok 60 key del: non-existing rcvid&gt; ok 61 key del: incorrect addr&gt; ok 62 key del: correct key delete&gt; ok 63 AO info set: set current key on a listen socket&gt; ok 64 AO info set: set rnext key on a listen socket&gt; ok 65 AO info set: set current+rnext key on a listen socket&gt; ok 66 AO info set: using reserved padding&gt; ok 67 AO info set: using reserved2 padding&gt; ok 68 AO info set: accept_icmps&gt; ok 69 AO info get: accept_icmps&gt; ok 70 AO info set: ao required&gt; ok 71 AO info get: ao required&gt; ok 72 AO info set: ao required with MD5 key&gt; ok 73 AO info set: set non-existing current key&gt; ok 74 AO info set: set non-existing rnext key&gt; ok 75 AO info set: set non-existing current+rnext key&gt; ok 76 AO info set: set current key&gt; ok 77 AO info get: set current key&gt; ok 78 AO info set: set rnext key&gt; ok 79 AO info get: set rnext key&gt; ok 80 AO info set: set current+rnext key&gt; ok 81 AO info get: set current+rnext key&gt; ok 82 AO info set: set counters&gt; ok 83 AO info get: set counters&gt; ok 84 AO info set: no-op&gt; ok 85 AO info get: no-op&gt; ok 86 get keys: no ao_info&gt; ok 87 get keys: proper tcp_ao_get_mkts()&gt; ok 88 get keys: set out-only pkt_good counter&gt; ok 89 get keys: set out-only pkt_bad counter&gt; ok 90 get keys: bad keyflags&gt; ok 91 get keys: ifindex without TCP_AO_KEYF_IFNINDEX&gt; ok 92 get keys: using reserved field&gt; ok 93 get keys: no prefix, addr&gt; ok 94 get keys: no prefix, any addr&gt; ok 95 get keys: prefix, any addr&gt; ok 96 get keys: too big prefix&gt; ok 97 get keys: too short prefix&gt; ok 98 get keys: prefix + addr&gt; ok 99 get keys: get_all + prefix&gt; ok 100 get keys: get_all + addr&gt; ok 101 get keys: get_all + sndid&gt; ok 102 get keys: get_all + rcvid&gt; ok 103 get keys: current + prefix&gt; ok 104 get keys: current + addr&gt; ok 105 get keys: current + sndid&gt; ok 106 get keys: current + rcvid&gt; ok 107 get keys: rnext + prefix&gt; ok 108 get keys: rnext + addr&gt; ok 109 get keys: rnext + sndid&gt; ok 110 get keys: rnext + rcvid&gt; ok 111 get keys: get_all + current&gt; ok 112 get keys: get_all + rnext&gt; ok 113 get keys: current + rnext&gt; ok 114 key add: duplicate: full copy&gt; ok 115 key add: duplicate: any addr key on the socket&gt; ok 116 key add: duplicate: add any addr key&gt; ok 117 key add: duplicate: add any addr for the same subnet&gt; ok 118 key add: duplicate: full copy of a key&gt; ok 119 key add: duplicate: RecvID differs&gt; ok 120 key add: duplicate: SendID differs&gt; # Totals: pass:120 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:19 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>ed9d09b3 - selftests/net: Add a test for TCP-AO keys matching</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#ed9d09b3</link>
        <description>selftests/net: Add a test for TCP-AO keys matchingAdd TCP-AO tests on connect()/accept() pair.SNMP counters exposed by kernel are very useful here to verify theexpected behavior of TCP-AO.Expected output for ipv4 version:&gt; # ./connect-deny_ipv4&gt; 1..19&gt; # 1702[lib/setup.c:254] rand seed 1680553689&gt; TAP version 13&gt; ok 1 Non-AO server + AO client&gt; ok 2 Non-AO server + AO client: counter TCPAOKeyNotFound increased 0 =&gt; 1&gt; ok 3 AO server + Non-AO client&gt; ok 4 AO server + Non-AO client: counter TCPAORequired increased 0 =&gt; 1&gt; ok 5 Wrong password&gt; ok 6 Wrong password: counter TCPAOBad increased 0 =&gt; 1&gt; ok 7 Wrong rcv id&gt; ok 8 Wrong rcv id: counter TCPAOKeyNotFound increased 1 =&gt; 2&gt; ok 9 Wrong snd id&gt; ok 10 Wrong snd id: counter TCPAOGood increased 0 =&gt; 1&gt; ok 11 Server: Wrong addr: counter TCPAOKeyNotFound increased 2 =&gt; 3&gt; ok 12 Server: Wrong addr&gt; ok 13 Client: Wrong addr: connect() was prevented&gt; ok 14 rcv id != snd id: connected&gt; ok 15 rcv id != snd id: counter TCPAOGood increased 1 =&gt; 3&gt; ok 16 Server: prefix match: connected&gt; ok 17 Server: prefix match: counter TCPAOGood increased 4 =&gt; 6&gt; ok 18 Client: prefix match: connected&gt; ok 19 Client: prefix match: counter TCPAOGood increased 7 =&gt; 9&gt; # Totals: pass:19 fail:0 xfail:0 xpass:0 skip:0 error:0Expected output for ipv6 version:&gt; # ./connect-deny_ipv6&gt; 1..19&gt; # 1725[lib/setup.c:254] rand seed 1680553711&gt; TAP version 13&gt; ok 1 Non-AO server + AO client&gt; ok 2 Non-AO server + AO client: counter TCPAOKeyNotFound increased 0 =&gt; 1&gt; ok 3 AO server + Non-AO client: counter TCPAORequired increased 0 =&gt; 1&gt; ok 4 AO server + Non-AO client&gt; ok 5 Wrong password: counter TCPAOBad increased 0 =&gt; 1&gt; ok 6 Wrong password&gt; ok 7 Wrong rcv id: counter TCPAOKeyNotFound increased 1 =&gt; 2&gt; ok 8 Wrong rcv id&gt; ok 9 Wrong snd id: counter TCPAOGood increased 0 =&gt; 1&gt; ok 10 Wrong snd id&gt; ok 11 Server: Wrong addr&gt; ok 12 Server: Wrong addr: counter TCPAOKeyNotFound increased 2 =&gt; 3&gt; ok 13 Client: Wrong addr: connect() was prevented&gt; ok 14 rcv id != snd id: connected&gt; ok 15 rcv id != snd id: counter TCPAOGood increased 1 =&gt; 3&gt; ok 16 Server: prefix match: connected&gt; ok 17 Server: prefix match: counter TCPAOGood increased 5 =&gt; 7&gt; ok 18 Client: prefix match: connected&gt; ok 19 Client: prefix match: counter TCPAOGood increased 8 =&gt; 10&gt; # Totals: pass:19 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:18 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>d11301f6 - selftests/net: Add TCP-AO ICMPs accept test</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#d11301f6</link>
        <description>selftests/net: Add TCP-AO ICMPs accept testReverse to icmps-discard test: the server accepts ICMPs, usingTCP_AO_CMDF_ACCEPT_ICMP and it is expected to fail under ICMPflood from client. Test that the default pre-TCP-AO behaviour functionswhen TCP_AO_CMDF_ACCEPT_ICMP is set.Expected output for ipv4 version (in case it receives ICMP_PROT_UNREACH):&gt; # ./icmps-accept_ipv4&gt; 1..3&gt; # 3209[lib/setup.c:166] rand seed 1642623870&gt; TAP version 13&gt; # 3209[lib/proc.c:207]    Snmp6             Ip6InReceives: 0 =&gt; 1&gt; # 3209[lib/proc.c:207]    Snmp6             Ip6InNoRoutes: 0 =&gt; 1&gt; # 3209[lib/proc.c:207]    Snmp6               Ip6InOctets: 0 =&gt; 76&gt; # 3209[lib/proc.c:207]    Snmp6            Ip6InNoECTPkts: 0 =&gt; 1&gt; # 3209[lib/proc.c:207]      Tcp                    InSegs: 3 =&gt; 23&gt; # 3209[lib/proc.c:207]      Tcp                   OutSegs: 2 =&gt; 22&gt; # 3209[lib/proc.c:207]  IcmpMsg                   InType3: 0 =&gt; 4&gt; # 3209[lib/proc.c:207]     Icmp                    InMsgs: 0 =&gt; 4&gt; # 3209[lib/proc.c:207]     Icmp            InDestUnreachs: 0 =&gt; 4&gt; # 3209[lib/proc.c:207]       Ip                InReceives: 3 =&gt; 27&gt; # 3209[lib/proc.c:207]       Ip                InDelivers: 3 =&gt; 27&gt; # 3209[lib/proc.c:207]       Ip               OutRequests: 2 =&gt; 22&gt; # 3209[lib/proc.c:207]    IpExt                  InOctets: 288 =&gt; 3420&gt; # 3209[lib/proc.c:207]    IpExt                 OutOctets: 124 =&gt; 3244&gt; # 3209[lib/proc.c:207]    IpExt               InNoECTPkts: 3 =&gt; 25&gt; # 3209[lib/proc.c:207]   TcpExt               TCPPureAcks: 1 =&gt; 2&gt; # 3209[lib/proc.c:207]   TcpExt           TCPOrigDataSent: 0 =&gt; 20&gt; # 3209[lib/proc.c:207]   TcpExt              TCPDelivered: 0 =&gt; 19&gt; # 3209[lib/proc.c:207]   TcpExt                 TCPAOGood: 3 =&gt; 23&gt; ok 1 InDestUnreachs delivered 4&gt; ok 2 server failed with -92: Protocol not available&gt; ok 3 TCPAODroppedIcmps counter didn&apos;t change: 0 &gt;= 0&gt; # Totals: pass:3 fail:0 xfail:0 xpass:0 skip:0 error:0Expected output for ipv6 version (in case it receives ADM_PROHIBITED):&gt; # ./icmps-accept_ipv6&gt; 1..3&gt; # 3277[lib/setup.c:166] rand seed 1642624035&gt; TAP version 13&gt; # 3277[lib/proc.c:207]    Snmp6             Ip6InReceives: 6 =&gt; 31&gt; # 3277[lib/proc.c:207]    Snmp6             Ip6InDelivers: 4 =&gt; 29&gt; # 3277[lib/proc.c:207]    Snmp6            Ip6OutRequests: 4 =&gt; 24&gt; # 3277[lib/proc.c:207]    Snmp6               Ip6InOctets: 592 =&gt; 4492&gt; # 3277[lib/proc.c:207]    Snmp6              Ip6OutOctets: 332 =&gt; 3852&gt; # 3277[lib/proc.c:207]    Snmp6            Ip6InNoECTPkts: 6 =&gt; 31&gt; # 3277[lib/proc.c:207]    Snmp6               Icmp6InMsgs: 1 =&gt; 6&gt; # 3277[lib/proc.c:207]    Snmp6       Icmp6InDestUnreachs: 0 =&gt; 5&gt; # 3277[lib/proc.c:207]    Snmp6              Icmp6InType1: 0 =&gt; 5&gt; # 3277[lib/proc.c:207]      Tcp                    InSegs: 3 =&gt; 23&gt; # 3277[lib/proc.c:207]      Tcp                   OutSegs: 2 =&gt; 22&gt; # 3277[lib/proc.c:207]   TcpExt               TCPPureAcks: 1 =&gt; 2&gt; # 3277[lib/proc.c:207]   TcpExt           TCPOrigDataSent: 0 =&gt; 20&gt; # 3277[lib/proc.c:207]   TcpExt              TCPDelivered: 0 =&gt; 19&gt; # 3277[lib/proc.c:207]   TcpExt                 TCPAOGood: 3 =&gt; 23&gt; ok 1 Icmp6InDestUnreachs delivered 5&gt; ok 2 server failed with -13: Permission denied&gt; ok 3 TCPAODroppedIcmps counter didn&apos;t change: 0 &gt;= 0&gt; # Totals: pass:3 fail:0 xfail:0 xpass:0 skip:0 error:0With some luck the server may fail with ECONNREFUSED (depending on whaticmp packet was delivered firstly).For the kernel error handlers see: tab_unreach[] and icmp_err_convert[].Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:17 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>a8fcf8ca - selftests/net: Verify that TCP-AO complies with ignoring ICMPs</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#a8fcf8ca</link>
        <description>selftests/net: Verify that TCP-AO complies with ignoring ICMPsHand-crafted ICMP packets are sent to the server, the server checks forhard/soft errors and fails if any.Expected output for ipv4 version:&gt; # ./icmps-discard_ipv4&gt; 1..3&gt; # 3164[lib/setup.c:166] rand seed 1642623745&gt; TAP version 13&gt; # 3164[lib/proc.c:207]    Snmp6             Ip6InReceives: 0 =&gt; 1&gt; # 3164[lib/proc.c:207]    Snmp6             Ip6InNoRoutes: 0 =&gt; 1&gt; # 3164[lib/proc.c:207]    Snmp6               Ip6InOctets: 0 =&gt; 76&gt; # 3164[lib/proc.c:207]    Snmp6            Ip6InNoECTPkts: 0 =&gt; 1&gt; # 3164[lib/proc.c:207]      Tcp                    InSegs: 2 =&gt; 203&gt; # 3164[lib/proc.c:207]      Tcp                   OutSegs: 1 =&gt; 202&gt; # 3164[lib/proc.c:207]  IcmpMsg                   InType3: 0 =&gt; 543&gt; # 3164[lib/proc.c:207]     Icmp                    InMsgs: 0 =&gt; 543&gt; # 3164[lib/proc.c:207]     Icmp            InDestUnreachs: 0 =&gt; 543&gt; # 3164[lib/proc.c:207]       Ip                InReceives: 2 =&gt; 746&gt; # 3164[lib/proc.c:207]       Ip                InDelivers: 2 =&gt; 746&gt; # 3164[lib/proc.c:207]       Ip               OutRequests: 1 =&gt; 202&gt; # 3164[lib/proc.c:207]    IpExt                  InOctets: 132 =&gt; 61684&gt; # 3164[lib/proc.c:207]    IpExt                 OutOctets: 68 =&gt; 31324&gt; # 3164[lib/proc.c:207]    IpExt               InNoECTPkts: 2 =&gt; 744&gt; # 3164[lib/proc.c:207]   TcpExt               TCPPureAcks: 1 =&gt; 2&gt; # 3164[lib/proc.c:207]   TcpExt           TCPOrigDataSent: 0 =&gt; 200&gt; # 3164[lib/proc.c:207]   TcpExt              TCPDelivered: 0 =&gt; 199&gt; # 3164[lib/proc.c:207]   TcpExt                 TCPAOGood: 2 =&gt; 203&gt; # 3164[lib/proc.c:207]   TcpExt         TCPAODroppedIcmps: 0 =&gt; 541&gt; ok 1 InDestUnreachs delivered 543&gt; ok 2 Server survived 20000 bytes of traffic&gt; ok 3 ICMPs ignored 541&gt; # Totals: pass:3 fail:0 xfail:0 xpass:0 skip:0 error:0Expected output for ipv6 version:&gt; # ./icmps-discard_ipv6&gt; 1..3&gt; # 3186[lib/setup.c:166] rand seed 1642623803&gt; TAP version 13&gt; # 3186[lib/proc.c:207]    Snmp6             Ip6InReceives: 4 =&gt; 568&gt; # 3186[lib/proc.c:207]    Snmp6             Ip6InDelivers: 3 =&gt; 564&gt; # 3186[lib/proc.c:207]    Snmp6            Ip6OutRequests: 2 =&gt; 204&gt; # 3186[lib/proc.c:207]    Snmp6            Ip6InMcastPkts: 1 =&gt; 4&gt; # 3186[lib/proc.c:207]    Snmp6           Ip6OutMcastPkts: 0 =&gt; 1&gt; # 3186[lib/proc.c:207]    Snmp6               Ip6InOctets: 320 =&gt; 70420&gt; # 3186[lib/proc.c:207]    Snmp6              Ip6OutOctets: 160 =&gt; 35512&gt; # 3186[lib/proc.c:207]    Snmp6          Ip6InMcastOctets: 72 =&gt; 336&gt; # 3186[lib/proc.c:207]    Snmp6         Ip6OutMcastOctets: 0 =&gt; 76&gt; # 3186[lib/proc.c:207]    Snmp6            Ip6InNoECTPkts: 4 =&gt; 568&gt; # 3186[lib/proc.c:207]    Snmp6               Icmp6InMsgs: 1 =&gt; 361&gt; # 3186[lib/proc.c:207]    Snmp6              Icmp6OutMsgs: 1 =&gt; 2&gt; # 3186[lib/proc.c:207]    Snmp6       Icmp6InDestUnreachs: 0 =&gt; 360&gt; # 3186[lib/proc.c:207]    Snmp6      Icmp6OutMLDv2Reports: 0 =&gt; 1&gt; # 3186[lib/proc.c:207]    Snmp6              Icmp6InType1: 0 =&gt; 360&gt; # 3186[lib/proc.c:207]    Snmp6           Icmp6OutType143: 0 =&gt; 1&gt; # 3186[lib/proc.c:207]      Tcp                    InSegs: 2 =&gt; 203&gt; # 3186[lib/proc.c:207]      Tcp                   OutSegs: 1 =&gt; 202&gt; # 3186[lib/proc.c:207]   TcpExt               TCPPureAcks: 1 =&gt; 2&gt; # 3186[lib/proc.c:207]   TcpExt           TCPOrigDataSent: 0 =&gt; 200&gt; # 3186[lib/proc.c:207]   TcpExt              TCPDelivered: 0 =&gt; 199&gt; # 3186[lib/proc.c:207]   TcpExt                 TCPAOGood: 2 =&gt; 203&gt; # 3186[lib/proc.c:207]   TcpExt         TCPAODroppedIcmps: 0 =&gt; 360&gt; ok 1 Icmp6InDestUnreachs delivered 360&gt; ok 2 Server survived 20000 bytes of traffic&gt; ok 3 ICMPs ignored 360&gt; # Totals: pass:3 fail:0 xfail:0 xpass:0 skip:0 error:0Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:16 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
<item>
        <title>cfbab37b - selftests/net: Add TCP-AO library</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile#cfbab37b</link>
        <description>selftests/net: Add TCP-AO libraryProvide functions to create selftests dedicated to TCP-AO.They can run in parallel, as they use temporary net namespaces.They can be very specific to the feature being tested.This will allow to create a lot of TCP-AO tests, without complicatingone binary with many --options and to create scenarios, that arehard to put in bash script that uses one binary.Signed-off-by: Dmitry Safonov &lt;dima@arista.com&gt;Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/net/tcp_ao/Makefile</description>
        <pubDate>Fri, 15 Dec 2023 02:36:15 +0000</pubDate>
        <dc:creator>Dmitry Safonov &lt;dima@arista.com&gt;</dc:creator>
    </item>
</channel>
</rss>
