Explorar o código

myri10ge: check fragmentation in LRO get_frag_header()

Add a fragmentation check to myri10ge's LRO get_frag_header() callback.

Signed-off-by: Brice Goglin <brice@myri.com>
Signed-off-by: Andrew Gallatin <gallatin@myri.com> 
Signed-off-by: David S. Miller <davem@davemloft.net>
Brice Goglin %!s(int64=16) %!d(string=hai) anos
pai
achega
bcb09dc276
Modificáronse 1 ficheiros con 2 adicións e 0 borrados
  1. 2 0
      drivers/net/myri10ge/myri10ge.c

+ 2 - 0
drivers/net/myri10ge/myri10ge.c

@@ -2229,6 +2229,8 @@ myri10ge_get_frag_header(struct skb_frag_struct *frag, void **mac_hdr,
 	*ip_hdr = iph;
 	if (iph->protocol != IPPROTO_TCP)
 		return -1;
+	if (iph->frag_off & htons(IP_MF | IP_OFFSET))
+		return -1;
 	*hdr_flags |= LRO_TCP;
 	*tcpudp_hdr = (u8 *) (*ip_hdr) + (iph->ihl << 2);