MPTCP_RST_EMPTCP (reset reason 1) is currently used as a catch-all for
several distinct conditions across subflow setup, authentication, and
data-path validation. This series adds per-event MIB counters at each
of those use sites and extends mptcp_join.sh's chk_rst_nr() to validate
them.
Patch 1 adds six new counters (MD5SigReset, MPJoinSynAckNoMPJoin,
MPJoinAckNoMPJoin, MPJoinAckNoCtx, DssReset, MPJoinNotEstablished) and
increments them in mib.c/mib.h, subflow.c and protocol.c.
Patch 2 extends chk_rst_nr() with named env-var expectations for each
new counter (silent on success, gated on availability) and adds one
test inside signal_address_tests that triggers MPJoinSynAckNoMPJoin
from within the existing ns1/ns2 setup.
v3 (this version):
patch 1: move new SNMP_MIB_ITEM entries and enum values next to
their semantic neighbors instead of appending them in a
single block after MPRst*. No functional change.
patch 2: drop the third-netns approach for triggering
MPJoinSynAckNoMPJoin. ns1 now signals an address that
is already bound on ns2 (10.0.2.2) with a TCP-only
mptcp_connect listener on ns2; the client's MP_JOIN
routes locally to that listener and the SYN/ACK arrives
without MP_JOIN. The test moves into
signal_address_tests. speed=slow dropped (not needed
here), and the local-and-assign that tripped shellcheck
SC2155 is gone with the old test.
v2: https://lore.kernel.org/all/20260509183335.969018-1-shardul.b@mpiricsoftware.com/
v1: https://lore.kernel.org/all/20260421095646.3741956-1-shardul.b@mpiricsoftware.com/
Shardul Bankar (2):
mptcp: add per-event MIB counters for MPTCP_RST_EMPTCP resets
selftests: mptcp: extend chk_rst_nr to validate per-event RST counters
net/mptcp/mib.c | 6 ++
net/mptcp/mib.h | 6 ++
net/mptcp/protocol.c | 1 +
net/mptcp/subflow.c | 9 +++
.../testing/selftests/net/mptcp/mptcp_join.sh | 72 +++++++++++++++++++
5 files changed, 94 insertions(+)
base-commit: 52f68f13d42a1c3752de7a776b6f873988f48401
--
2.34.1