]> git.ipfire.org Git - thirdparty/linux.git/commit
Fix write to cloned skb in ipv6_hop_ioam()
authorJustin Iurman <justin.iurman@uliege.be>
Mon, 19 Feb 2024 13:52:54 +0000 (14:52 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 22 Feb 2024 08:28:03 +0000 (09:28 +0100)
commitf198d933c2e4f8f89e0620fbaf1ea7eac384a0eb
tree52e851fa5eb318d30a1e410e2b557ebf651a7e4d
parent7d2a894d7f487dcb894df023e9d3014cf5b93fe5
Fix write to cloned skb in ipv6_hop_ioam()

ioam6_fill_trace_data() writes inside the skb payload without ensuring
it's writeable (e.g., not cloned). This function is called both from the
input and output path. The output path (ioam6_iptunnel) already does the
check. This commit provides a fix for the input path, inside
ipv6_hop_ioam(). It also updates ip6_parse_tlv() to refresh the network
header pointer ("nh") when returning from ipv6_hop_ioam().

Fixes: 9ee11f0fff20 ("ipv6: ioam: Data plane support for Pre-allocated Trace")
Reported-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Justin Iurman <justin.iurman@uliege.be>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
net/ipv6/exthdrs.c