RE: [PATCH] of: fix of_property_read_string

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Rob Herring [mailto:robherring2@xxxxxxxxx]
> Sent: Wednesday, April 08, 2015 10:26 PM
> To: Liu Shengzhou-B36685
> Cc: devicetree@xxxxxxxxxxxxxxx; Grant Likely
> Subject: Re: [PATCH] of: fix of_property_read_string
> 
> On Wed, Apr 8, 2015 at 1:29 AM, Shengzhou.Liu@xxxxxxxxxxxxx
> <Shengzhou.Liu@xxxxxxxxxxxxx> wrote:
> >> On Tue, Apr 7, 2015 at 5:11 AM, Shengzhou Liu
> >> <Shengzhou.Liu@xxxxxxxxxxxxx> wrote:
> >> > In of_property_read_string function, strnlen(prop->value,
> >> > prop->length) is always less or equal to prop->length, and we
> >> > prop->should
> >> allow the '=='
> >> > condition, so let's remove the original unreasonable condition.
> >>
> >> I believe we don't want to allow equal because prop->length should
> >> include the \0 termination while strnlen will not.
> >>
> >> Rob
> >
> > Yes, I thought so, ideally prop->length should be assigned with
> > strlen(value)+1, but unfortunately in u-boot and kernel there are too
> > many callers that have prop->length assigned with strlen(value) instead of
> > strlen(value)+1, in practice, we can allow equal.
> > 
> 
> No one should touch prop->length and it comes from the DTB directly.
> It doesn't come from strlen.
> 
e.g.  u-boot changes prop->length dynamically by fdt_setprop().
we can fix it by using strlen()+1 instead of strlen() in u-boot.
well, let's drop the patch.




��.n��������+%������w��{.n����z�{��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux