aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Ovechkin <ovov@yandex-team.ru>2021-07-09 18:28:23 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-07-25 14:36:20 +0200
commitb61d8814c4779f7810c96fa1d1d9e68fbd9d91df (patch)
tree850e8208f1b200c224aa14f847568a62492b1a9e
parentf2a062fcfe1d6f1b0a86fa76ae21c277d65f4405 (diff)
downloadkernel_replicant_linux-b61d8814c4779f7810c96fa1d1d9e68fbd9d91df.tar.gz
kernel_replicant_linux-b61d8814c4779f7810c96fa1d1d9e68fbd9d91df.tar.bz2
kernel_replicant_linux-b61d8814c4779f7810c96fa1d1d9e68fbd9d91df.zip
net: send SYNACK packet with accepted fwmark
commit 43b90bfad34bcb81b8a5bc7dc650800f4be1787e upstream. commit e05a90ec9e16 ("net: reflect mark on tcp syn ack packets") fixed IPv4 only. This part is for the IPv6 side. Fixes: e05a90ec9e16 ("net: reflect mark on tcp syn ack packets") Signed-off-by: Alexander Ovechkin <ovov@yandex-team.ru> Acked-by: Dmitry Yakunin <zeil@yandex-team.ru> Reviewed-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--net/ipv6/tcp_ipv6.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
index 3f9bb6dd1f98..1348d6bf04b3 100644
--- a/net/ipv6/tcp_ipv6.c
+++ b/net/ipv6/tcp_ipv6.c
@@ -540,7 +540,7 @@ static int tcp_v6_send_synack(const struct sock *sk, struct dst_entry *dst,
opt = ireq->ipv6_opt;
if (!opt)
opt = rcu_dereference(np->opt);
- err = ip6_xmit(sk, skb, fl6, sk->sk_mark, opt,
+ err = ip6_xmit(sk, skb, fl6, skb->mark ? : sk->sk_mark, opt,
tclass, sk->sk_priority);
rcu_read_unlock();
err = net_xmit_eval(err);