CVSROOT: /cvs Module name: src Changes by: bl...@cvs.openbsd.org 2024/02/14 15:41:48
Modified files: sys/dev/pci : if_bnxt.c if_em.c if_igc.c if_ix.c if_ixl.c sys/dev/pv : if_vio.c sys/net : if_ethersubr.c sys/netinet : if_ether.h Log message: Check IP length in ether_extract_headers(). For LRO with ix(4) it is necessary to detect ethernet padding. Extract ip_len and ip6_plen from the mbuf and provide it to the drivers. Add extended sanitity checks, like IP packet is shorter than TCP header. This prevents offloading to network hardware with bougus packets. Also iphlen of extracted headers contains header length for IPv4 and IPv6, to make code in drivers simpler. OK mglocker@