[PATCH] add attribute nonstring
Florian Weimer
fweimer@redhat.com
Tue Nov 14 18:21:00 GMT 2017
On 11/14/2017 06:55 PM, Andreas Schwab wrote:
> On Nov 14 2017, Joseph Myers <joseph@codesourcery.com> wrote:
>
>> On Tue, 14 Nov 2017, Florian Weimer wrote:
>>
>>> So this means that we should add the nostring attribute and not the length
>>> check.
>>
>> If the name passed is actually longer than this field, is it undefined
>> behavior or not?
>
> The kernel will always zero-terminate the string at IFNAMSIZ-1, see
> dev_ifname in net/core/dev_ioctl.c.
Yes, Hannes and I went over the code and reached the same conclusion
(for the ioctl interface, netlink is a bit more involved to check).
However, the original patch should really use strnlen or memchr, and not
strlen. As posted, the strlen is either invalid because the array is
not NUL-terminated, or it passes because the string is short enough.
Thanks,
Florian
More information about the Libc-alpha
mailing list