Willem de Bruijn
6cd021a58c
udp: segment looped gso packets correctly
...
Multicast and broadcast packets can be looped from egress to ingress
pre segmentation with dev_loopback_xmit. That function unconditionally
sets ip_summed to CHECKSUM_UNNECESSARY.
udp_rcv_segment segments gso packets in the udp rx path. Segmentation
usually executes on egress, and does not expect packets of this type.
__udp_gso_segment interprets !CHECKSUM_PARTIAL as CHECKSUM_NONE. But
the offsets are not correct for gso_make_checksum.
UDP GSO packets are of type CHECKSUM_PARTIAL, with their uh->check set
to the correct pseudo header checksum. Reset ip_summed to this type.
(CHECKSUM_PARTIAL is allowed on ingress, see comments in skbuff.h)
Reported-by: syzbot <syzkaller@googlegroups.com>
Fixes: cf329aa42b66 ("udp: cope with UDP GRO packet misdirection")
Signed-off-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-01-28 10:56:51 +01:00
..
2019-05-30 11:29:21 -07:00
2020-01-15 22:28:51 +01:00
2019-05-30 11:29:22 -07:00
2020-01-27 08:54:30 +01:00
2020-01-26 10:40:21 +01:00
2019-06-19 17:09:07 +02:00
2019-06-05 17:37:07 +02:00
2019-11-25 14:57:26 -08:00
2019-09-16 09:18:03 +02:00
2019-11-12 12:11:22 -08:00
2019-12-16 16:09:44 -08:00
2019-05-30 11:26:41 -07:00
2019-05-30 11:26:32 -07:00
2019-12-12 17:04:55 -08:00
2019-12-11 15:01:23 -08:00
2019-11-06 16:14:48 -08:00
2019-06-19 17:09:55 +02:00
2019-05-24 17:37:53 +02:00
2019-05-21 11:28:40 +02:00
2019-07-04 12:30:48 -07:00
2019-11-05 17:40:16 -08:00
2019-08-17 23:18:54 +02:00
2019-10-30 17:34:35 -07:00
2019-05-21 11:28:45 +02:00
2019-06-19 17:09:55 +02:00
2020-01-15 09:50:48 +01:00
2019-05-30 11:26:41 -07:00
2019-05-30 11:26:32 -07:00
2019-05-21 11:28:45 +02:00
2019-05-30 11:26:32 -07:00
2019-04-19 14:07:40 -07:00
2019-05-30 11:29:52 -07:00
2019-05-30 11:29:52 -07:00
2020-01-27 11:33:29 +01:00
2019-05-21 11:52:39 +02:00
2019-05-21 11:52:39 +02:00
2019-08-17 12:40:08 -07:00
2020-01-08 16:01:13 -08:00
2019-12-16 16:09:44 -08:00
2019-12-24 22:28:54 -08:00
2019-12-24 22:28:55 -08:00
2019-12-09 09:59:07 +01:00
2019-06-19 17:09:55 +02:00
2019-12-24 22:37:30 -08:00
2019-10-04 11:10:56 -07:00
2019-12-03 11:55:46 -08:00
2019-12-06 20:45:09 -08:00
2019-11-08 09:11:49 +01:00
2019-10-23 20:13:22 -07:00
2019-12-09 10:36:44 -08:00
2019-11-05 18:20:55 -08:00
2019-10-06 15:44:47 +02:00
2019-03-22 12:09:31 -07:00
2019-07-01 10:58:23 -07:00
2019-10-25 16:24:32 -07:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:41 -07:00
2019-08-28 14:43:03 -07:00
2019-04-22 21:50:53 -07:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2019-07-03 13:51:54 -07:00
2019-08-31 23:44:28 -07:00
2019-08-08 15:55:10 -07:00
2019-12-13 21:40:49 -08:00
2019-09-13 21:44:19 +02:00
2019-09-27 12:05:02 +02:00
2019-05-30 11:26:32 -07:00
2020-01-14 18:53:35 -08:00
2019-06-27 21:06:39 -07:00
2019-06-18 20:48:45 -04:00
2020-01-14 18:53:35 -08:00
2019-12-09 10:36:44 -08:00
2019-11-02 13:54:56 -07:00
2019-12-07 11:55:11 -08:00
2019-06-19 11:37:47 -04:00
2019-12-04 12:27:13 -08:00
2020-01-25 08:14:39 +01:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:32 -07:00
2019-10-08 13:23:05 -07:00
2019-04-23 19:42:29 -07:00
2019-11-22 13:36:25 +01:00
2019-05-30 11:26:41 -07:00
2020-01-14 11:31:41 -08:00
2019-05-21 11:28:45 +02:00
2019-06-05 17:36:38 +02:00
2019-06-05 17:36:38 +02:00
2020-01-24 13:44:08 +01:00
2019-12-09 10:36:44 -08:00
2019-11-06 16:14:48 -08:00
2019-12-09 09:48:47 -08:00
2020-01-17 13:25:24 +01:00
2019-05-21 11:28:45 +02:00
2019-12-12 17:07:05 -08:00
2019-11-12 08:18:03 -08:00
2019-04-11 13:59:49 -07:00
2019-09-05 12:35:58 +02:00
2019-11-20 12:34:28 -08:00
2020-01-23 11:38:31 +01:00
2019-05-30 11:26:32 -07:00
2020-01-27 10:51:43 +01:00
2019-09-17 23:51:10 +02:00
2019-05-30 11:26:32 -07:00
2019-09-16 09:18:03 +02:00
2019-05-30 11:26:32 -07:00
2019-10-09 21:34:31 -07:00
2019-11-21 14:45:55 -08:00
2019-04-22 21:47:25 -07:00
2020-01-27 10:51:43 +01:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2019-11-15 12:28:28 -08:00
2019-10-05 16:29:00 -07:00
2019-09-16 09:02:18 +02:00
2020-01-23 08:10:16 +01:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2020-01-23 08:10:16 +01:00
2019-05-30 11:26:32 -07:00
2019-10-04 14:07:07 -07:00
2019-12-19 17:46:51 -08:00
2019-03-29 10:53:45 -07:00
2020-01-28 10:56:51 +01:00
2019-11-14 18:12:17 -08:00
2019-10-24 14:53:49 -07:00
2019-06-05 17:30:29 +02:00
2019-12-09 10:28:43 -08:00
2019-11-16 12:39:10 -08:00
2019-12-20 16:00:09 -08:00
2019-06-19 11:23:13 -04:00
2019-12-09 09:59:07 +01:00