[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070729043707.GA8343@nd47.coderock.org>
Date: Sun, 29 Jul 2007 06:37:08 +0200
From: Domen Puncer <domen@...erock.org>
To: Jesper Juhl <jesper.juhl@...il.com>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
netdev@...r.kernel.org, Steven Hirsch <shirsch@...lphia.net>,
"David S. Miller" <davem@...emloft.net>,
Franco Venturi <fventuri@...iaone.net>
Subject: Re: [PATCH] sb1000: prevent a potential NULL pointer dereference in sb1000_dev_ioctl()
On 29/07/07 00:02 +0200, Jesper Juhl wrote:
> Hi,
>
> Here's a small patch, prompted by a find by the Coverity checker,
> that removes a potential NULL pointer dereference from
> drivers/net/sb1000.c::sb1000_dev_ioctl().
> The checker spotted that we do a NULL test of 'dev', yet we
> dereference the pointer prior to that check.
> This patch simply moves the dereference after the NULL test.
But... it can't be called without a valid 'dev', no?
A quick 'grep do_ioctl net/' confirms that all calls are in
the form of 'dev->do_ioctl(dev, ...'.
Domen
> @@ -991,11 +991,13 @@ static int sb1000_dev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
> short PID[4];
> int ioaddr[2], status, frequency;
> unsigned int stats[5];
> - struct sb1000_private *lp = netdev_priv(dev);
> + struct sb1000_private *lp;
>
> if (!(dev && dev->flags & IFF_UP))
> return -ENODEV;
>
> + lp = netdev_priv(dev);
> +
> ioaddr[0] = dev->base_addr;
> /* mem_start holds the second I/O address */
> ioaddr[1] = dev->mem_start;
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists