mptcp: add deny_join_id0 in mptcp_options_received
authorGeliang Tang <geliangtang@gmail.com>
Tue, 22 Jun 2021 19:25:20 +0000 (12:25 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 22 Jun 2021 21:36:01 +0000 (14:36 -0700)
commitdf377be38725ced628251c1a3b954ef932a5586e
treee0725441657f35da0aa427c5d1b521852d732e27
parentbab6b88e056038f618b2fb977d95b05ad3da8d0c
mptcp: add deny_join_id0 in mptcp_options_received

This patch added a new flag named deny_join_id0 in struct
mptcp_options_received. Set it when MP_CAPABLE with the flag
MPTCP_CAP_DENYJOIN_ID0 is received.

Also add a new flag remote_deny_join_id0 in struct mptcp_pm_data. When the
flag deny_join_id0 is set, set this remote_deny_join_id0 flag.

In mptcp_pm_create_subflow_or_signal_addr, if the remote_deny_join_id0 flag
is set, and the remote address id is zero, stop this connection.

Suggested-by: Florian Westphal <fw@strlen.de>
Acked-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/mptcp/options.c
net/mptcp/pm.c
net/mptcp/pm_netlink.c
net/mptcp/protocol.h
net/mptcp/subflow.c