Messages in this thread | | | Date | Fri, 16 Apr 2004 22:25:41 +0100 | From | viro@parcelfa ... | Subject | Re: baycom_par dereference before check. |
| |
On Fri, Apr 16, 2004 at 10:20:04PM +0100, Dave Jones wrote: > > --- linux-2.6.5/drivers/net/hamradio/baycom_par.c~ 2004-04-16 22:18:53.000000000 +0100 > +++ linux-2.6.5/drivers/net/hamradio/baycom_par.c 2004-04-16 22:19:33.000000000 +0100 > @@ -272,9 +272,13 @@ > static void par96_interrupt(int irq, void *dev_id, struct pt_regs *regs) > { > struct net_device *dev = (struct net_device *)dev_id; > - struct baycom_state *bc = netdev_priv(dev); > + struct baycom_state *bc; > > - if (!dev || !bc || bc->hdrv.magic != HDLCDRV_MAGIC) > + if (!dev) > + return; > + > + bc = netdev_priv(dev);
That's OK - netdev_priv(p) just adds a constant offset to p; no problem with doing that to NULL. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |