diff options
author | Mark Tomlinson <mark.tomlinson@alliedtelesis.co.nz> | 2020-08-19 04:53:58 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-08-27 10:31:47 +0300 |
commit | 3f13223bb0b19e978348e38be453ffa810017742 (patch) | |
tree | 56bf3975c52db6b7c39e0c25811724ec34e6c6a8 /lib/mpi/mpi-inline.c | |
parent | 47dcb7fcad1d6dc6942769ec9b0b9b22c7a65f8d (diff) | |
download | linux-3f13223bb0b19e978348e38be453ffa810017742.tar.xz |
gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY
[ Upstream commit 272502fcb7cda01ab07fc2fcff82d1d2f73d43cc ]
When receiving an IPv4 packet inside an IPv6 GRE packet, and the
IP6_TNL_F_RCV_DSCP_COPY flag is set on the tunnel, the IPv4 header would
get corrupted. This is due to the common ip6_tnl_rcv() function assuming
that the inner header is always IPv6. This patch checks the tunnel
protocol for IPv4 inner packets, but still defaults to IPv6.
Fixes: 308edfdf1563 ("gre6: Cleanup GREv6 receive path, call common GRE functions")
Signed-off-by: Mark Tomlinson <mark.tomlinson@alliedtelesis.co.nz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'lib/mpi/mpi-inline.c')
0 files changed, 0 insertions, 0 deletions