[CVE-2010-4263 Lucid] igb: only use vlan_gro_receive if vlans are registered, CVE-2010-4263
Brad Figg
brad.figg at canonical.com
Thu Mar 17 21:29:32 UTC 2011
On 03/17/2011 11:47 AM, Leann Ogasawara wrote:
> The following changes since commit 78006f719c80cc01424fb9a9d3bbd06eeba4dd13:
> Stefan Bader (1):
> Linux 2.6.32.33+drm33.15
>
> are available in the git repository at:
>
> git://kernel.ubuntu.com/ogasawara/ubuntu-lucid.git CVE-2010-4263
>
> Alexander Duyck (1):
> igb: only use vlan_gro_receive if vlans are registered, CVE-2010-4263
>
> drivers/net/igb/igb_main.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> From 6ca830ea2699dc4456805c1fa42795d892265e08 Mon Sep 17 00:00:00 2001
> From: Alexander Duyck<alexander.h.duyck at intel.com>
> Date: Tue, 23 Mar 2010 18:35:18 +0000
> Subject: [PATCH] igb: only use vlan_gro_receive if vlans are registered, CVE-2010-4263
>
> CVE-2010-4263
>
> BugLink: http://bugs.launchpad.net/bugs/737024
>
> This change makes it so that vlan_gro_receive is only used if vlans have been
> registered to the adapter structure. Previously we were just sending all vlan
> tagged frames in via this function but this results in a null pointer
> dereference when vlans are not registered.
>
> [ This fixes bugzilla entry 15582 -Eric Dumazet]
>
> Signed-off-by: Alexander Duyck<alexander.h.duyck at intel.com>
> Signed-off-by: Jeff Kirsher<jeffrey.t.kirsher at intel.com>
> Acked-by: Eric Dumazet<eric.dumazet at gmail.com>
> Signed-off-by: David S. Miller<davem at davemloft.net>
> (cherry picked from commit 31b24b955c3ebbb6f3008a6374e61cf7c05a193c)
>
> Signed-off-by: Leann Ogasawara<leann.ogasawara at canonical.com>
> ---
> drivers/net/igb/igb_main.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c
> index 4d0534d..4370842 100644
> --- a/drivers/net/igb/igb_main.c
> +++ b/drivers/net/igb/igb_main.c
> @@ -5011,7 +5011,7 @@ static void igb_receive_skb(struct igb_q_vector *q_vector,
> {
> struct igb_adapter *adapter = q_vector->adapter;
>
> - if (vlan_tag)
> + if (vlan_tag&& adapter->vlgrp)
> vlan_gro_receive(&q_vector->napi, adapter->vlgrp,
> vlan_tag, skb);
> else
Acked-by: Brad Figg <brad.figg at canonical.com>
--
Brad Figg brad.figg at canonical.com http://www.canonical.com
More information about the kernel-team
mailing list