lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sun, 11 Oct 2020 11:31:25 -0700 From: Jakub Kicinski <kuba@...nel.org> To: Willem de Bruijn <willemdebruijn.kernel@...il.com> Cc: David Wilder <dwilder@...ibm.com>, Network Development <netdev@...r.kernel.org>, tlfalcon@...ux.ibm.com, cris.forno@....com, pradeeps@...ux.vnet.ibm.com, wilder@...ibm.com Subject: Re: [ PATCH v1 2/2] ibmveth: Identify ingress large send packets. On Sat, 10 Oct 2020 12:51:30 -0400 Willem de Bruijn wrote: > > > @@ -1385,7 +1386,17 @@ static int ibmveth_poll(struct napi_struct *napi, int budget) > > > skb_put(skb, length); > > > skb->protocol = eth_type_trans(skb, netdev); > > > > > > - if (length > netdev->mtu + ETH_HLEN) { > > > + /* PHYP without PLSO support places a -1 in the ip > > > + * checksum for large send frames. > > > + */ > > > + if (be16_to_cpu(skb->protocol) == ETH_P_IP) { You can byteswap the constant, so its done at compilation time. > > > + struct iphdr *iph = (struct iphdr *)skb->data; > > > + > > > + iph_check = iph->check; > > > > Check against truncated/bad packets. > > .. unless I missed context. Other code in this driver seems to peek in > the network and transport layer headers without additional geometry > and integrity checks, too. Good catch, even if we trust the hypervisor to only forward valid frames this needs to be at least mentioned in the commit message. Also please add Fixes tags to both patches.
Powered by blists - more mailing lists