projects
/
platform
/
kernel
/
linux-starfive.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
57ced2e
)
mptcp: add validity check for sending RM_ADDR
author
Geliang Tang
<geliang.tang@suse.com>
Mon, 13 Nov 2023 23:16:15 +0000
(
00:16
+0100)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Tue, 28 Nov 2023 17:20:13 +0000
(17:20 +0000)
commit
8df220b29282e8b450ea57be62e1eccd4996837c
upstream.
This patch adds the validity check for sending RM_ADDRs for userspace PM
in mptcp_pm_remove_addrs(), only send a RM_ADDR when the address is in the
anno_list or conn_list.
Fixes:
8b1c94da1e48
("mptcp: only send RM_ADDR in nl_cmd_remove")
Cc: stable@vger.kernel.org
Signed-off-by: Geliang Tang <geliang.tang@suse.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Signed-off-by: Matthieu Baerts <matttbe@kernel.org>
Link:
https://lore.kernel.org/r/20231114-upstream-net-20231113-mptcp-misc-fixes-6-7-rc2-v1-3-7b9cd6a7b7f4@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/mptcp/pm_netlink.c
patch
|
blob
|
history
diff --git
a/net/mptcp/pm_netlink.c
b/net/mptcp/pm_netlink.c
index
9661f38
..
3011bc3
100644
(file)
--- a/
net/mptcp/pm_netlink.c
+++ b/
net/mptcp/pm_netlink.c
@@
-1538,8
+1538,9
@@
void mptcp_pm_remove_addrs(struct mptcp_sock *msk, struct list_head *rm_list)
struct mptcp_pm_addr_entry *entry;
list_for_each_entry(entry, rm_list, list) {
- remove_anno_list_by_saddr(msk, &entry->addr);
- if (alist.nr < MPTCP_RM_IDS_MAX)
+ if ((remove_anno_list_by_saddr(msk, &entry->addr) ||
+ lookup_subflow_by_saddr(&msk->conn_list, &entry->addr)) &&
+ alist.nr < MPTCP_RM_IDS_MAX)
alist.ids[alist.nr++] = entry->addr.id;
}