From: Greg Kroah-Hartman Date: Mon, 12 Aug 2024 12:45:15 +0000 (+0200) Subject: 6.10-stable patches X-Git-Tag: v6.1.105~52 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b1a1cde012505cb3eb74971b7df9fc323bedeff9;p=thirdparty%2Fkernel%2Fstable-queue.git 6.10-stable patches added patches: mptcp-pm-deny-endp-with-signal-subflow-port.patch --- diff --git a/queue-6.10/mptcp-pm-deny-endp-with-signal-subflow-port.patch b/queue-6.10/mptcp-pm-deny-endp-with-signal-subflow-port.patch new file mode 100644 index 00000000000..7f97f2360ae --- /dev/null +++ b/queue-6.10/mptcp-pm-deny-endp-with-signal-subflow-port.patch @@ -0,0 +1,43 @@ +From 8af1f11865f259c882cce71d32f85ee9004e2660 Mon Sep 17 00:00:00 2001 +From: "Matthieu Baerts (NGI0)" +Date: Wed, 31 Jul 2024 13:05:54 +0200 +Subject: mptcp: pm: deny endp with signal + subflow + port + +From: Matthieu Baerts (NGI0) + +commit 8af1f11865f259c882cce71d32f85ee9004e2660 upstream. + +As mentioned in the 'Fixes' commit, the port flag is only supported by +the 'signal' flag, and not by the 'subflow' one. Then if both the +'signal' and 'subflow' flags are set, the problem is the same: the +feature cannot work with the 'subflow' flag. + +Technically, if both the 'signal' and 'subflow' flags are set, it will +be possible to create the listening socket, but not to establish a +subflow using this source port. So better to explicitly deny it, not to +create some confusions because the expected behaviour is not possible. + +Fixes: 09f12c3ab7a5 ("mptcp: allow to use port and non-signal in set_flags") +Cc: stable@vger.kernel.org +Reviewed-by: Mat Martineau +Signed-off-by: Matthieu Baerts (NGI0) +Link: https://patch.msgid.link/20240731-upstream-net-20240731-mptcp-endp-subflow-signal-v1-2-c8a9b036493b@kernel.org +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + net/mptcp/pm_netlink.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/net/mptcp/pm_netlink.c ++++ b/net/mptcp/pm_netlink.c +@@ -1328,8 +1328,8 @@ int mptcp_pm_nl_add_addr_doit(struct sk_ + if (ret < 0) + return ret; + +- if (addr.addr.port && !(addr.flags & MPTCP_PM_ADDR_FLAG_SIGNAL)) { +- GENL_SET_ERR_MSG(info, "flags must have signal when using port"); ++ if (addr.addr.port && !address_use_port(&addr)) { ++ GENL_SET_ERR_MSG(info, "flags must have signal and not subflow when using port"); + return -EINVAL; + } + diff --git a/queue-6.10/series b/queue-6.10/series index b220f8ce0ee..38dee54ae9f 100644 --- a/queue-6.10/series +++ b/queue-6.10/series @@ -246,3 +246,4 @@ drm-mgag200-set-ddc-timeout-in-milliseconds.patch drm-mgag200-bind-i2c-lifetime-to-drm-device.patch drm-radeon-remove-__counted_by-from-statearray.states.patch mptcp-fully-established-after-add_addr-echo-on-mpj.patch +mptcp-pm-deny-endp-with-signal-subflow-port.patch