summaryrefslogtreecommitdiffstats
path: root/net/sched
diff options
context:
space:
mode:
authorVlad Yasevich <vyasevich@gmail.com>2015-05-14 20:34:08 -0400
committerDavid S. Miller <davem@davemloft.net>2015-05-14 22:27:03 -0400
commite87a468eb97da35d8dc00e8fa9828b4de4ab69d0 (patch)
tree5ca5fa212bb94d7ec193e8903233967a4f4f9bae /net/sched
parent91dd93f956b9ea9ecf47fd4b9acd2d2e7f980303 (diff)
downloadop-kernel-dev-e87a468eb97da35d8dc00e8fa9828b4de4ab69d0.zip
op-kernel-dev-e87a468eb97da35d8dc00e8fa9828b4de4ab69d0.tar.gz
ipv6: Fix udp checksums with raw sockets
It was reported that trancerout6 would cause a kernel to crash when trying to compute checksums on raw UDP packets. The cause was the check in __ip6_append_data that would attempt to use partial checksums on the packet. However, raw sockets do not initialize partial checksum fields so partial checksums can't be used. Solve this the same way IPv4 does it. raw sockets pass transhdrlen value of 0 to ip_append_data which causes the checksum to be computed in software. Use the same check in ip6_append_data (check transhdrlen). Reported-by: Wolfgang Walter <linux@stwm.de> CC: Wolfgang Walter <linux@stwm.de> CC: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: Vladislav Yasevich <vyasevic@redhat.com> Acked-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud