On Wed, Feb 28, 2007 at 10:45:41AM -0800, Jean Tourrilhes wrote: > On Wed, Feb 28, 2007 at 10:34:37AM +0100, Jarek Poplawski wrote: > > On 28-02-2007 02:27, Jean Tourrilhes wrote: > > > Hi all, > > ... > > > Patch for 2.6.20 is attached. The patch was tested on a system > > > running the hotplug scripts, and on another system running udev. > > > > > > Have fun... > > > > > > Jean > > > > > > Signed-off-by: Jean Tourrilhes <[EMAIL PROTECTED]> > > > > > > --------------------------------------------------------- > > ... > > > diff -u -p linux/net/core/net-sysfs.j1.c linux/net/core/net-sysfs.c > > > --- linux/net/core/net-sysfs.j1.c 2007-02-27 15:01:08.000000000 -0800 > > > +++ linux/net/core/net-sysfs.c 2007-02-27 15:06:49.000000000 -0800 > > > @@ -412,6 +412,17 @@ static int netdev_uevent(struct class_de > > > if ((size <= 0) || (i >= num_envp)) > > > return -ENOMEM; > > > > > > + /* pass ifindex to uevent. > > > + * ifindex is useful as it won't change (interface name may change) > > > + * and is what RtNetlink uses natively. */ > > > + envp[i++] = buf; > > > + n = snprintf(buf, size, "IFINDEX=%d", dev->ifindex) + 1; > > > + buf += n; > > > + size -= n; > > > + > > > + if ((size <= 0) || (i >= num_envp)) > > > > Btw.: > > 1. if size == 10 and snprintf returns 9 (without NULL) > > then n == 10 (with NULL), so isn't it enough (here and above): > > > > if ((size < 0) || (i >= num_envp)) > > I just cut'n'pasted the code a few line above. If the original > code is incorrect, it need fixing. And it will need fixing in probably > a lot of places.
I think you're kind of responsible for your part, at least. > > > 2. shouldn't there be (here and above): > > > > envp[--i] = NULL; > > > > No, envp is local, so who cares. But envp[i] isn't (at least here). So, I guess, a caller of this function could care. > > > + if ((size <= 0) || (i >= num_envp)) > > > + return -ENOMEM; And one more thing (not necessarily for you): ENOBUFS is probably more adequate here. Cheers, Jarek P. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html