bianbu-linux-6.6/net/mptcp
Matthieu Baerts (NGI0) 26e0f27405 mptcp: pm: reset MPC endp ID when re-added
commit dce1c6d1e92535f165219695a826caedcca4e9b9 upstream.

The initial subflow has a special local ID: 0. It is specific per
connection.

When a global endpoint is deleted and re-added later, it can have a
different ID -- most services managing the endpoints automatically don't
force the ID to be the same as before. It is then important to track
these modifications to be consistent with the ID being used for the
address used by the initial subflow, not to confuse the other peer or to
send the ID 0 for the wrong address.

Now when removing an endpoint, msk->mpc_endpoint_id is reset if it
corresponds to this endpoint. When adding a new endpoint, the same
variable is updated if the address match the one of the initial subflow.

Fixes: 3ad14f54bd ("mptcp: more accurate MPC endpoint tracking")
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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-09-04 13:28:20 +02:00
..
bpf.c bpf: Add update_socket_protocol hook 2023-08-16 10:22:16 -07:00
crypto.c kunit: mptcp: adhere to KUNIT formatting standard 2021-04-16 17:10:40 -07:00
crypto_test.c mptcp: move crypto test to KUNIT 2020-06-26 16:21:39 -07:00
ctrl.c mptcp: only allow set existing scheduler for net.mptcp.scheduler 2024-05-17 12:02:30 +02:00
diag.c mptcp: correct MPTCP_SUBFLOW_ATTR_SSN_OFFSET reserved size 2024-08-29 17:33:19 +02:00
fastopen.c mptcp: corner case locking for rx path fields initialization 2024-03-01 13:34:57 +01:00
Kconfig kunit: mptcp: adhere to KUNIT formatting standard 2021-04-16 17:10:40 -07:00
Makefile mptcp: add struct mptcp_sched_ops 2023-08-22 17:31:18 -07:00
mib.c mptcp: mib: count MPJ with backup flag 2024-08-11 12:47:27 +02:00
mib.h mptcp: mib: count MPJ with backup flag 2024-08-11 12:47:27 +02:00
mptcp_diag.c tcp: Access &tcp_hashinfo via net. 2022-09-20 10:21:49 -07:00
options.c mptcp: fully established after ADD_ADDR echo on MPJ 2024-08-14 13:59:01 +02:00
pm.c mptcp: pm: only in-kernel cannot have entries with ID 0 2024-08-29 17:33:56 +02:00
pm_netlink.c mptcp: pm: reset MPC endp ID when re-added 2024-09-04 13:28:20 +02:00
pm_userspace.c mptcp: pm: fix backup support in signal endpoints 2024-08-14 13:59:01 +02:00
protocol.c mptcp: sched: check both backup in retrans 2024-09-04 13:28:20 +02:00
protocol.h mptcp: pm: remove mptcp_pm_remove_subflow() 2024-08-29 17:33:55 +02:00
sched.c mptcp: register default scheduler 2023-08-22 17:31:19 -07:00
sockopt.c mptcp: prevent BPF accessing lowat from a subflow socket. 2024-08-11 12:47:28 +02:00
subflow.c mptcp: close subflow when receiving TCP+FIN 2024-09-04 13:28:20 +02:00
syncookies.c mptcp: don't return sockets in foreign netns 2021-09-24 10:51:36 +01:00
token.c mptcp: add statistics for mptcp socket in use 2023-01-09 07:30:50 +00:00
token_test.c mptcp: init sk->sk_prot in build_msk() 2023-01-09 07:30:50 +00:00