tcp: Define IPPROTO_MPTCP

To open a MPTCP socket with socket(AF_INET, SOCK_STREAM, IPPROTO_MPTCP),
IPPROTO_MPTCP needs a value that differs from IPPROTO_TCP. The existing
IPPROTO numbers mostly map directly to IANA-specified protocol numbers.
MPTCP does not have a protocol number allocated because MPTCP packets
use the TCP protocol number. Use private number not used OTA.

Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Mat Martineau 2020-01-09 07:59:16 -08:00 committed by David S. Miller
parent bf9765145b
commit faf391c382
3 changed files with 6 additions and 1 deletions

View File

@ -19,7 +19,8 @@
#define inet_protocol_names \ #define inet_protocol_names \
EM(IPPROTO_TCP) \ EM(IPPROTO_TCP) \
EM(IPPROTO_DCCP) \ EM(IPPROTO_DCCP) \
EMe(IPPROTO_SCTP) EM(IPPROTO_SCTP) \
EMe(IPPROTO_MPTCP)
#define tcp_state_names \ #define tcp_state_names \
EM(TCP_ESTABLISHED) \ EM(TCP_ESTABLISHED) \

View File

@ -76,6 +76,8 @@ enum {
#define IPPROTO_MPLS IPPROTO_MPLS #define IPPROTO_MPLS IPPROTO_MPLS
IPPROTO_RAW = 255, /* Raw IP packets */ IPPROTO_RAW = 255, /* Raw IP packets */
#define IPPROTO_RAW IPPROTO_RAW #define IPPROTO_RAW IPPROTO_RAW
IPPROTO_MPTCP = 262, /* Multipath TCP connection */
#define IPPROTO_MPTCP IPPROTO_MPTCP
IPPROTO_MAX IPPROTO_MAX
}; };
#endif #endif

View File

@ -76,6 +76,8 @@ enum {
#define IPPROTO_MPLS IPPROTO_MPLS #define IPPROTO_MPLS IPPROTO_MPLS
IPPROTO_RAW = 255, /* Raw IP packets */ IPPROTO_RAW = 255, /* Raw IP packets */
#define IPPROTO_RAW IPPROTO_RAW #define IPPROTO_RAW IPPROTO_RAW
IPPROTO_MPTCP = 262, /* Multipath TCP connection */
#define IPPROTO_MPTCP IPPROTO_MPTCP
IPPROTO_MAX IPPROTO_MAX
}; };
#endif #endif