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@

Reply via email to