--- /dev/null
+From stable+bounces-73611-greg=kroah.com@vger.kernel.org Thu Sep 5 16:44:27 2024
+From: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>
+Date: Thu, 5 Sep 2024 16:43:08 +0200
+Subject: selftests: mptcp: fix backport issues
+To: mptcp@lists.linux.dev, stable@vger.kernel.org, gregkh@linuxfoundation.org
+Cc: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>
+Message-ID: <20240905144306.1192409-6-matttbe@kernel.org>
+
+From: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>
+
+By accident, some patches modifying the MPTCP selftests have been
+applied twice, using different versions of the patch [1].
+
+These patches have been dropped, but it looks like quilt incorrectly
+handled that by placing the new subtests at the wrong place: in
+userspace_tests() instead of endpoint_tests(). That caused a few other
+patches not to apply properly.
+
+Not to have to revert and re-apply patches, this issue can be fixed by
+moving some code around.
+
+Link: https://lore.kernel.org/fc21db4a-508d-41db-aa45-e3bc06d18ce7@kernel.org [1]
+Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ tools/testing/selftests/net/mptcp/mptcp_join.sh | 138 ++++++++++++------------
+ 1 file changed, 69 insertions(+), 69 deletions(-)
+
+--- a/tools/testing/selftests/net/mptcp/mptcp_join.sh
++++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh
+@@ -3236,75 +3236,6 @@ userspace_tests()
+ chk_join_nr 1 1 1
+ chk_rm_nr 0 1
+ fi
+-
+- # remove and re-add
+- if reset "delete re-add signal" &&
+- mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
+- pm_nl_set_limits $ns1 0 3
+- pm_nl_set_limits $ns2 3 3
+- pm_nl_add_endpoint $ns1 10.0.2.1 id 1 flags signal
+- # broadcast IP: no packet for this address will be received on ns1
+- pm_nl_add_endpoint $ns1 224.0.0.1 id 2 flags signal
+- pm_nl_add_endpoint $ns1 10.0.1.1 id 42 flags signal
+- run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_20 2>/dev/null &
+- local tests_pid=$!
+-
+- wait_mpj $ns2
+- chk_subflow_nr needtitle "before delete" 2
+-
+- pm_nl_del_endpoint $ns1 1 10.0.2.1
+- pm_nl_del_endpoint $ns1 2 224.0.0.1
+- sleep 0.5
+- chk_subflow_nr "" "after delete" 1
+-
+- pm_nl_add_endpoint $ns1 10.0.2.1 id 1 flags signal
+- pm_nl_add_endpoint $ns1 10.0.3.1 id 2 flags signal
+- wait_mpj $ns2
+- chk_subflow_nr "" "after re-add" 3
+-
+- pm_nl_del_endpoint $ns1 42 10.0.1.1
+- sleep 0.5
+- chk_subflow_nr "" "after delete ID 0" 2
+-
+- pm_nl_add_endpoint $ns1 10.0.1.1 id 99 flags signal
+- wait_mpj $ns2
+- chk_subflow_nr "" "after re-add" 3
+- kill_tests_wait
+-
+- chk_join_nr 4 4 4
+- chk_add_nr 5 5
+- chk_rm_nr 3 2 invert
+- fi
+-
+- # flush and re-add
+- if reset_with_tcp_filter "flush re-add" ns2 10.0.3.2 REJECT OUTPUT &&
+- mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
+- pm_nl_set_limits $ns1 0 2
+- pm_nl_set_limits $ns2 1 2
+- # broadcast IP: no packet for this address will be received on ns1
+- pm_nl_add_endpoint $ns1 224.0.0.1 id 2 flags signal
+- pm_nl_add_endpoint $ns2 10.0.3.2 id 3 flags subflow
+- run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_20 2>/dev/null &
+- local tests_pid=$!
+-
+- wait_attempt_fail $ns2
+- chk_subflow_nr needtitle "before flush" 1
+-
+- pm_nl_flush_endpoint $ns2
+- pm_nl_flush_endpoint $ns1
+- wait_rm_addr $ns2 0
+- ip netns exec "${ns2}" ${iptables} -D OUTPUT -s "10.0.3.2" -p tcp -j REJECT
+- pm_nl_add_endpoint $ns2 10.0.3.2 id 3 flags subflow
+- wait_mpj $ns2
+- pm_nl_add_endpoint $ns1 10.0.3.1 id 2 flags signal
+- wait_mpj $ns2
+- kill_wait "${tests_pid}"
+- kill_tests_wait
+-
+- chk_join_nr 2 2 2
+- chk_add_nr 2 2
+- chk_rm_nr 1 0 invert
+- fi
+ }
+
+ endpoint_tests()
+@@ -3375,6 +3306,75 @@ endpoint_tests()
+ chk_join_nr 6 6 6
+ chk_rm_nr 4 4
+ fi
++
++ # remove and re-add
++ if reset "delete re-add signal" &&
++ mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
++ pm_nl_set_limits $ns1 0 3
++ pm_nl_set_limits $ns2 3 3
++ pm_nl_add_endpoint $ns1 10.0.2.1 id 1 flags signal
++ # broadcast IP: no packet for this address will be received on ns1
++ pm_nl_add_endpoint $ns1 224.0.0.1 id 2 flags signal
++ pm_nl_add_endpoint $ns1 10.0.1.1 id 42 flags signal
++ run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_20 2>/dev/null &
++ local tests_pid=$!
++
++ wait_mpj $ns2
++ chk_subflow_nr needtitle "before delete" 2
++
++ pm_nl_del_endpoint $ns1 1 10.0.2.1
++ pm_nl_del_endpoint $ns1 2 224.0.0.1
++ sleep 0.5
++ chk_subflow_nr "" "after delete" 1
++
++ pm_nl_add_endpoint $ns1 10.0.2.1 id 1 flags signal
++ pm_nl_add_endpoint $ns1 10.0.3.1 id 2 flags signal
++ wait_mpj $ns2
++ chk_subflow_nr "" "after re-add" 3
++
++ pm_nl_del_endpoint $ns1 42 10.0.1.1
++ sleep 0.5
++ chk_subflow_nr "" "after delete ID 0" 2
++
++ pm_nl_add_endpoint $ns1 10.0.1.1 id 99 flags signal
++ wait_mpj $ns2
++ chk_subflow_nr "" "after re-add" 3
++ kill_tests_wait
++
++ chk_join_nr 4 4 4
++ chk_add_nr 5 5
++ chk_rm_nr 3 2 invert
++ fi
++
++ # flush and re-add
++ if reset_with_tcp_filter "flush re-add" ns2 10.0.3.2 REJECT OUTPUT &&
++ mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
++ pm_nl_set_limits $ns1 0 2
++ pm_nl_set_limits $ns2 1 2
++ # broadcast IP: no packet for this address will be received on ns1
++ pm_nl_add_endpoint $ns1 224.0.0.1 id 2 flags signal
++ pm_nl_add_endpoint $ns2 10.0.3.2 id 3 flags subflow
++ run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_20 2>/dev/null &
++ local tests_pid=$!
++
++ wait_attempt_fail $ns2
++ chk_subflow_nr needtitle "before flush" 1
++
++ pm_nl_flush_endpoint $ns2
++ pm_nl_flush_endpoint $ns1
++ wait_rm_addr $ns2 0
++ ip netns exec "${ns2}" ${iptables} -D OUTPUT -s "10.0.3.2" -p tcp -j REJECT
++ pm_nl_add_endpoint $ns2 10.0.3.2 id 3 flags subflow
++ wait_mpj $ns2
++ pm_nl_add_endpoint $ns1 10.0.3.1 id 2 flags signal
++ wait_mpj $ns2
++ kill_wait "${tests_pid}"
++ kill_tests_wait
++
++ chk_join_nr 2 2 2
++ chk_add_nr 2 2
++ chk_rm_nr 1 0 invert
++ fi
+ }
+
+ # [$1: error message]
--- /dev/null
+From stable+bounces-73613-greg=kroah.com@vger.kernel.org Thu Sep 5 16:44:31 2024
+From: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>
+Date: Thu, 5 Sep 2024 16:43:10 +0200
+Subject: selftests: mptcp: join: check re-re-adding ID 0 signal
+To: mptcp@lists.linux.dev, stable@vger.kernel.org, gregkh@linuxfoundation.org
+Cc: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>, Mat Martineau <martineau@kernel.org>, Paolo Abeni <pabeni@redhat.com>
+Message-ID: <20240905144306.1192409-8-matttbe@kernel.org>
+
+From: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>
+
+commit f18fa2abf81099d822d842a107f8c9889c86043c upstream.
+
+This test extends "delete re-add signal" to validate the previous
+commit: when the 'signal' endpoint linked to the initial subflow (ID 0)
+is re-added multiple times, it will re-send the ADD_ADDR with id 0. The
+client should still be able to re-create this subflow, even if the
+add_addr_accepted limit has been reached as this special address is not
+considered as a new address.
+
+The 'Fixes' tag here below is the same as the one from the previous
+commit: this patch here is not fixing anything wrong in the selftests,
+but it validates the previous fix for an issue introduced by this commit
+ID.
+
+Fixes: d0876b2284cf ("mptcp: add the incoming RM_ADDR support")
+Cc: stable@vger.kernel.org
+Reviewed-by: Mat Martineau <martineau@kernel.org>
+Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+[ Conflicts in mptcp_join.sh, because the helpers are different in this
+ version:
+ - run_tests has been modified a few times to reduce the number of
+ positional parameters
+ - no chk_mptcp_info helper
+ - chk_subflow_nr taking an extra parameter
+ - kill_tests_wait instead of mptcp_lib_kill_wait ]
+Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ tools/testing/selftests/net/mptcp/mptcp_join.sh | 32 +++++++++++++++---------
+ 1 file changed, 20 insertions(+), 12 deletions(-)
+
+--- a/tools/testing/selftests/net/mptcp/mptcp_join.sh
++++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh
+@@ -3387,7 +3387,7 @@ endpoint_tests()
+ # broadcast IP: no packet for this address will be received on ns1
+ pm_nl_add_endpoint $ns1 224.0.0.1 id 2 flags signal
+ pm_nl_add_endpoint $ns1 10.0.1.1 id 42 flags signal
+- run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_20 2>/dev/null &
++ run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_5 2>/dev/null &
+ local tests_pid=$!
+
+ wait_mpj $ns2
+@@ -3409,7 +3409,15 @@ endpoint_tests()
+
+ pm_nl_add_endpoint $ns1 10.0.1.1 id 99 flags signal
+ wait_mpj $ns2
+- chk_subflow_nr "" "after re-add" 3
++ chk_subflow_nr "" "after re-add ID 0" 3
++
++ pm_nl_del_endpoint $ns1 99 10.0.1.1
++ sleep 0.5
++ chk_subflow_nr "" "after re-delete ID 0" 2
++
++ pm_nl_add_endpoint $ns1 10.0.1.1 id 88 flags signal
++ wait_mpj $ns2
++ chk_subflow_nr "" "after re-re-add ID 0" 3
+
+ kill_wait "${tests_pid}"
+ kill_events_pids
+@@ -3419,19 +3427,19 @@ endpoint_tests()
+ chk_evt_nr ns1 MPTCP_LIB_EVENT_ESTABLISHED 1
+ chk_evt_nr ns1 MPTCP_LIB_EVENT_ANNOUNCED 0
+ chk_evt_nr ns1 MPTCP_LIB_EVENT_REMOVED 0
+- chk_evt_nr ns1 MPTCP_LIB_EVENT_SUB_ESTABLISHED 4
+- chk_evt_nr ns1 MPTCP_LIB_EVENT_SUB_CLOSED 2
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_SUB_ESTABLISHED 5
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_SUB_CLOSED 3
+
+ chk_evt_nr ns2 MPTCP_LIB_EVENT_CREATED 1
+ chk_evt_nr ns2 MPTCP_LIB_EVENT_ESTABLISHED 1
+- chk_evt_nr ns2 MPTCP_LIB_EVENT_ANNOUNCED 5
+- chk_evt_nr ns2 MPTCP_LIB_EVENT_REMOVED 3
+- chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_ESTABLISHED 4
+- chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_CLOSED 2
+-
+- chk_join_nr 4 4 4
+- chk_add_nr 5 5
+- chk_rm_nr 3 2 invert
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_ANNOUNCED 6
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_REMOVED 4
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_ESTABLISHED 5
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_CLOSED 3
++
++ chk_join_nr 5 5 5
++ chk_add_nr 6 6
++ chk_rm_nr 4 3 invert
+ fi
+
+ # flush and re-add
--- /dev/null
+From stable+bounces-73612-greg=kroah.com@vger.kernel.org Thu Sep 5 16:44:28 2024
+From: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>
+Date: Thu, 5 Sep 2024 16:43:09 +0200
+Subject: selftests: mptcp: join: validate event numbers
+To: mptcp@lists.linux.dev, stable@vger.kernel.org, gregkh@linuxfoundation.org
+Cc: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>, Mat Martineau <martineau@kernel.org>, Paolo Abeni <pabeni@redhat.com>
+Message-ID: <20240905144306.1192409-7-matttbe@kernel.org>
+
+From: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>
+
+commit 20ccc7c5f7a3aa48092441a4b182f9f40418392e upstream.
+
+This test extends "delete and re-add" and "delete re-add signal" to
+validate the previous commit: the number of MPTCP events are checked to
+make sure there are no duplicated or unexpected ones.
+
+A new helper has been introduced to easily check these events. The
+missing events have been added to the lib.
+
+The 'Fixes' tag here below is the same as the one from the previous
+commit: this patch here is not fixing anything wrong in the selftests,
+but it validates the previous fix for an issue introduced by this commit
+ID.
+
+Fixes: b911c97c7dc7 ("mptcp: add netlink event support")
+Cc: stable@vger.kernel.org
+Reviewed-by: Mat Martineau <martineau@kernel.org>
+Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+[ Conflicts in mptcp_join.sh and mptcp_lib.sh, due to commit
+ 38f027fca1b7 ("selftests: mptcp: dump userspace addrs list") -- linked
+ to a new feature, not backportable to stable -- and commit
+ 23a0485d1c04 ("selftests: mptcp: declare event macros in mptcp_lib")
+ -- depending on the previous one -- not in this version. The conflicts
+ in mptcp_join.sh were in the context, because a new helper had to be
+ added after others that are not in this version. The conflicts in
+ mptcp_lib.sh were due to the fact the other MPTCP_LIB_EVENT_*
+ constants were not present. They have all been added in this version
+ to ease future backports if any.
+ In this version, it was also needed to import reset_with_events and
+ kill_events_pids from the newer version, and adapt chk_evt_nr to how
+ the results are printed in this version, plus remove the LISTENER
+ events checks because the linked feature is not available in this
+ kernel version. ]
+Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ tools/testing/selftests/net/mptcp/mptcp_join.sh | 90 +++++++++++++++++++++++-
+ tools/testing/selftests/net/mptcp/mptcp_lib.sh | 15 ++++
+ 2 files changed, 104 insertions(+), 1 deletion(-)
+
+--- a/tools/testing/selftests/net/mptcp/mptcp_join.sh
++++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh
+@@ -394,6 +394,25 @@ reset_with_fail()
+ fi
+ }
+
++start_events()
++{
++ evts_ns1=$(mktemp)
++ evts_ns2=$(mktemp)
++ :> "$evts_ns1"
++ :> "$evts_ns2"
++ ip netns exec "${ns1}" ./pm_nl_ctl events >> "$evts_ns1" 2>&1 &
++ evts_ns1_pid=$!
++ ip netns exec "${ns2}" ./pm_nl_ctl events >> "$evts_ns2" 2>&1 &
++ evts_ns2_pid=$!
++}
++
++reset_with_events()
++{
++ reset "${1}" || return 1
++
++ start_events
++}
++
+ reset_with_tcp_filter()
+ {
+ reset "${1}" || return 1
+@@ -596,6 +615,14 @@ kill_tests_wait()
+ wait
+ }
+
++kill_events_pids()
++{
++ kill_wait $evts_ns1_pid
++ evts_ns1_pid=0
++ kill_wait $evts_ns2_pid
++ evts_ns2_pid=0
++}
++
+ pm_nl_set_limits()
+ {
+ local ns=$1
+@@ -3143,6 +3170,32 @@ fail_tests()
+ fi
+ }
+
++# $1: ns ; $2: event type ; $3: count
++chk_evt_nr()
++{
++ local ns=${1}
++ local evt_name="${2}"
++ local exp="${3}"
++
++ local evts="${evts_ns1}"
++ local evt="${!evt_name}"
++ local count
++
++ evt_name="${evt_name:16}" # without MPTCP_LIB_EVENT_
++ [ "${ns}" == "ns2" ] && evts="${evts_ns2}"
++
++ printf "%-${nr_blank}s %s" " " "event ${ns} ${evt_name} (${exp})"
++
++ count=$(grep -cw "type:${evt}" "${evts}")
++ if [ "${count}" != "${exp}" ]; then
++ echo "[fail] got $count events, expected $exp"
++ fail_test
++ dump_stats
++ else
++ echo "[ ok ]"
++ fi
++}
++
+ userspace_tests()
+ {
+ # userspace pm type prevents add_addr
+@@ -3265,11 +3318,13 @@ endpoint_tests()
+
+ if reset_with_tcp_filter "delete and re-add" ns2 10.0.3.2 REJECT OUTPUT &&
+ mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
++ start_events
+ pm_nl_set_limits $ns1 0 3
+ pm_nl_set_limits $ns2 0 3
+ pm_nl_add_endpoint $ns2 10.0.1.2 id 1 dev ns2eth1 flags subflow
+ pm_nl_add_endpoint $ns2 10.0.2.2 id 2 dev ns2eth2 flags subflow
+ run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_5 2>/dev/null &
++ local tests_pid=$!
+
+ wait_mpj $ns2
+ pm_nl_del_endpoint $ns2 2 10.0.2.2
+@@ -3301,14 +3356,30 @@ endpoint_tests()
+ chk_subflow_nr "" "after re-add id 0 ($i)" 3
+ done
+
++ kill_wait "${tests_pid}"
++ kill_events_pids
+ kill_tests_wait
+
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_CREATED 1
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_ESTABLISHED 1
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_ANNOUNCED 0
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_REMOVED 4
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_SUB_ESTABLISHED 6
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_SUB_CLOSED 4
++
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_CREATED 1
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_ESTABLISHED 1
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_ANNOUNCED 0
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_REMOVED 0
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_ESTABLISHED 6
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_CLOSED 5 # one has been closed before estab
++
+ chk_join_nr 6 6 6
+ chk_rm_nr 4 4
+ fi
+
+ # remove and re-add
+- if reset "delete re-add signal" &&
++ if reset_with_events "delete re-add signal" &&
+ mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
+ pm_nl_set_limits $ns1 0 3
+ pm_nl_set_limits $ns2 3 3
+@@ -3339,8 +3410,25 @@ endpoint_tests()
+ pm_nl_add_endpoint $ns1 10.0.1.1 id 99 flags signal
+ wait_mpj $ns2
+ chk_subflow_nr "" "after re-add" 3
++
++ kill_wait "${tests_pid}"
++ kill_events_pids
+ kill_tests_wait
+
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_CREATED 1
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_ESTABLISHED 1
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_ANNOUNCED 0
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_REMOVED 0
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_SUB_ESTABLISHED 4
++ chk_evt_nr ns1 MPTCP_LIB_EVENT_SUB_CLOSED 2
++
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_CREATED 1
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_ESTABLISHED 1
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_ANNOUNCED 5
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_REMOVED 3
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_ESTABLISHED 4
++ chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_CLOSED 2
++
+ chk_join_nr 4 4 4
+ chk_add_nr 5 5
+ chk_rm_nr 3 2 invert
+--- a/tools/testing/selftests/net/mptcp/mptcp_lib.sh
++++ b/tools/testing/selftests/net/mptcp/mptcp_lib.sh
+@@ -4,6 +4,21 @@
+ readonly KSFT_FAIL=1
+ readonly KSFT_SKIP=4
+
++# These variables are used in some selftests, read-only
++declare -rx MPTCP_LIB_EVENT_CREATED=1 # MPTCP_EVENT_CREATED
++declare -rx MPTCP_LIB_EVENT_ESTABLISHED=2 # MPTCP_EVENT_ESTABLISHED
++declare -rx MPTCP_LIB_EVENT_CLOSED=3 # MPTCP_EVENT_CLOSED
++declare -rx MPTCP_LIB_EVENT_ANNOUNCED=6 # MPTCP_EVENT_ANNOUNCED
++declare -rx MPTCP_LIB_EVENT_REMOVED=7 # MPTCP_EVENT_REMOVED
++declare -rx MPTCP_LIB_EVENT_SUB_ESTABLISHED=10 # MPTCP_EVENT_SUB_ESTABLISHED
++declare -rx MPTCP_LIB_EVENT_SUB_CLOSED=11 # MPTCP_EVENT_SUB_CLOSED
++declare -rx MPTCP_LIB_EVENT_SUB_PRIORITY=13 # MPTCP_EVENT_SUB_PRIORITY
++declare -rx MPTCP_LIB_EVENT_LISTENER_CREATED=15 # MPTCP_EVENT_LISTENER_CREATED
++declare -rx MPTCP_LIB_EVENT_LISTENER_CLOSED=16 # MPTCP_EVENT_LISTENER_CLOSED
++
++declare -rx MPTCP_LIB_AF_INET=2
++declare -rx MPTCP_LIB_AF_INET6=10
++
+ # SELFTESTS_MPTCP_LIB_EXPECT_ALL_FEATURES env var can be set when validating all
+ # features using the last version of the kernel and the selftests to make sure
+ # a test is not being skipped by mistake.
mips-cevt-r4k-don-t-call-get_c0_compare_int-if-timer.patch
ata-pata_macio-use-warn-instead-of-bug.patch
nfsv4-add-missing-rescheduling-points-in-nfs_client_.patch
+selftests-mptcp-fix-backport-issues.patch
+selftests-mptcp-join-validate-event-numbers.patch
+selftests-mptcp-join-check-re-re-adding-id-0-signal.patch