summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorGeliang Tang <geliang.tang@suse.com>2022-01-06 14:06:37 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-01-27 11:03:59 +0100
commite1652f70e8964218c916ae4b6da3056b8f3c6e11 (patch)
treecca1318a51121e459a445c4c4ffc7c9c04602171 /net
parent72aba03ba836c7b72b29cbec1c8ddc61b57edada (diff)
mptcp: fix a DSS option writing error
[ Upstream commit 110b6d1fe98fd7af9893992459b651594d789293 ] 'ptr += 1;' was omitted in the original code. If the DSS is the last option -- which is what we have most of the time -- that's not an issue. But it is if we need to send something else after like a RM_ADDR or an MP_PRIO. Fixes: 1bff1e43a30e ("mptcp: optimize out option generation") Reviewed-by: Matthieu Baerts <matthieu.baerts@tessares.net> Signed-off-by: Geliang Tang <geliang.tang@suse.com> Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'net')
-rw-r--r--net/mptcp/options.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/mptcp/options.c b/net/mptcp/options.c
index f69a1cadb13f..e515ba9ccb5d 100644
--- a/net/mptcp/options.c
+++ b/net/mptcp/options.c
@@ -1321,6 +1321,7 @@ void mptcp_write_options(__be32 *ptr, const struct tcp_sock *tp,
put_unaligned_be32(mpext->data_len << 16 |
TCPOPT_NOP << 8 | TCPOPT_NOP, ptr);
}
+ ptr += 1;
}
} else if ((OPTION_MPTCP_MPC_SYN | OPTION_MPTCP_MPC_SYNACK |
OPTION_MPTCP_MPC_ACK) & opts->suboptions) {