RE: [PATCH V4 net-next 7/8] net: hns3: Add Ethtool support to HNS3 driver

From: David Laight
Date: Tue Jul 25 2017 - 05:36:06 EST


From: Rustad, Mark D
> Sent: 24 July 2017 21:32
> > On Jul 23, 2017, at 10:05 AM, Florian Fainelli <f.fainelli@xxxxxxxxx> wrote:
> >> +
> >> + strncpy(drvinfo->version, HNAE_DRIVER_VERSION,
> >> + sizeof(drvinfo->version));
> >> + drvinfo->version[sizeof(drvinfo->version) - 1] = '\0';
> >
> > strlcpy() would probably do that for you.
>
> You need to be careful about strlcpy - it does not completely write the destination buffer as strncpy
> does, and so can result in a kernel memory leak if the destination is not known to already be cleared.

Not only that, strlcpy() is defined to return the size of the
source string.
So if the source buffers isn't '\0' terminated it can fault.
(Not a problem above.)

Neither function is the one you were looking for.

David