summaryrefslogtreecommitdiff
path: root/tools/lib/python
diff options
context:
space:
mode:
authorJosef Bacik <josef@toxicpanda.com>2026-10-07 17:29:34 +0000
committerJakub Kicinski <kuba@kernel.org>2026-10-08 10:57:41 -0700
commitab9414ed70bd783e902a85c350620dee269bcb2b (patch)
treeaf7cabc8b5b64cb4b88c52dc191be184822f64e0 /tools/lib/python
parent2b82e16d6084cbc651e3c902198f1945408ee1a5 (diff)
downloadlinux-next-ab9414ed70bd783e902a85c350620dee269bcb2b.tar.gz
linux-next-ab9414ed70bd783e902a85c350620dee269bcb2b.zip
net: skbuff: don't leave stale bytes in skb_copy_and_csum_bits()
When skb_copy_and_csum_bits() reaches unreadable frags it returns 0 after copying only the linear part, and the rest of the caller's buffer is left as it was. The callers copy into a buffer that is about to go out on the wire: an ICMP error quoting the offending packet, or a driver's TX bounce buffer in skb_copy_and_csum_dev(). Neither buffer is zeroed beforehand, so whatever was in memory there gets sent. Zero the part of the buffer we didn't fill. The checksum usually won't match the data any more, so the receiver will usually drop the packet, but either way it no longer carries anything it shouldn't. Only zero for a positive @len, a negative one from a broken caller must not turn into a huge memset(). Fixes: 65249feb6b3d ("net: add support for skbs with unreadable frags") Cc: stable@vger.kernel.org Signed-off-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: Mina Almasry <almasrymina@google.com> Link: https://patch.msgid.link/20261007-b4-skb-copy-csum-stale-bytes-v1-1-adbbde033fb3@toxicpanda.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'tools/lib/python')
0 files changed, 0 insertions, 0 deletions