From 4a81a04294b3a0eaa033eb85c4660df037baee39 Mon Sep 17 00:00:00 2001 From: Florian Westphal Date: Sun, 21 Nov 2021 23:33:16 +0100 Subject: mptcp: add subtype matching MPTCP multiplexes the various mptcp signalling data using the first 4 bits of the mptcp option. This allows to match on the mptcp subtype via: tcp option mptcp subtype 1 This misses delinearization support. mptcp subtype is the first tcp option field that has a length of less than one byte. Serialization processing will add a binop for this, but netlink delinearization can't remove them, yet. Also misses a new datatype/symbol table to allow to use mnemonics like 'mp_join' instead of raw numbers. For this reason, no tests are added yet. Signed-off-by: Florian Westphal --- src/tcpopt.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src/tcpopt.c') diff --git a/src/tcpopt.c b/src/tcpopt.c index 5913cd06..641daa73 100644 --- a/src/tcpopt.c +++ b/src/tcpopt.c @@ -116,6 +116,7 @@ static const struct exthdr_desc tcpopt_mptcp = { .templates = { [TCPOPT_MPTCP_KIND] = PHT("kind", 0, 8), [TCPOPT_MPTCP_LENGTH] = PHT("length", 8, 8), + [TCPOPT_MPTCP_SUBTYPE] = PHT("subtype", 16, 4), }, }; #undef PHT -- cgit v1.2.3