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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Tue, 14 Aug 2007 16:17:01 +0200
From:	"Kay Sievers" <kay.sievers@...y.org>
To:	"Jean Delvare" <khali@...ux-fr.org>
Cc:	"Markus Rechberger" <markus.rechberger@....com>,
	"Marcel Holtmann" <marcel@...tmann.org>,
	linux-kernel@...r.kernel.org, "Greg KH" <greg@...ah.com>
Subject: Re: [PATCH] Firmware class name collision

On 8/14/07, Jean Delvare <khali@...ux-fr.org> wrote:
> On Mon, 13 Aug 2007 19:20:43 +0200, Markus Rechberger wrote:
> > Marcel Holtmann wrote:
> > > I would prefer if we use "firmware-%s" since the "fw" might collide with
> > > the new Firewire stack. Please change that and I agree.
> >
> > firmware-%s sounds more informative and cannot be mistaken with firewire
> > yes.
> >
> > Signed-off-by: Markus Rechberger <markus.rechberger@....com>
> >
> > http://mcentral.de/~mrec/patches/firmware_class_name_collision_2.diff
> >
> > diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
> > index b24efd4..bfc54a1 100644
> > --- a/drivers/base/firmware_class.c
> > +++ b/drivers/base/firmware_class.c
> > @@ -297,8 +297,7 @@ firmware_class_timeout(u_long data)
> >
> >  static inline void fw_setup_device_id(struct device *f_dev, struct
> > device *dev)
> >  {
> > -       /* XXX warning we should watch out for name collisions */
> > -       strlcpy(f_dev->bus_id, dev->bus_id, BUS_ID_SIZE);
> > +       snprintf(f_dev->bus_id, BUS_ID_SIZE, "firmware-%s", dev->bus_id);
> >  }
>
> Please keep in mind that BUS_ID_SIZE is "only" 20. "firmware-" takes 9
> characters, add one for the trailing zero and this only leaves room for
> 10 characters for the original bus id. While this will be enough for
> the i2c case, I suspect that some other bus IDs won't fit.

Hmm, is there any case where .bus_id is different from .kobj.k_name?
We always do:
  kobject_set_name(&dev->kobj, "%s", dev->bus_id);

Which looks kind of weird, as the kobject (which doesn't have that
name size limitation) is always embedded in the same struct anyway.

Thanks,
Kay
-
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ