[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <bd3a6343-1e78-1e5b-3ae2-eec10dcfffcc@gmail.com>
Date: Fri, 2 Mar 2018 10:24:59 -0800
From: Florian Fainelli <f.fainelli@...il.com>
To: David Laight <David.Laight@...LAB.COM>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Cc: Andrew Lunn <andrew@...n.ch>,
Vivien Didelot <vivien.didelot@...oirfairelinux.com>,
Woojung Huh <Woojung.Huh@...rochip.com>,
Microchip Linux Driver Support <UNGLinuxDriver@...rochip.com>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH net 3/4] net: dsa: microchip: Utilize strncpy() for
ethtool::get_strings
On 03/02/2018 02:51 AM, David Laight wrote:
> From: Florian Fainelli
>>
>> Do not use memcpy() which is not safe, but instead use strncpy() which
>> will make sure that the string is NUL terminated (in the Linux
>> implementation) if the string is smaller than the length specified. This
>> fixes KASAN out of bounds warnings while fetching port statistics.
>
> You really ought to use a copy function that will truncate the
> string if it is too long.
> Just assuming the string isn't too long is asking for trouble.
> You might (almost) just use strcpy().
>
> strlcpy() will probably work best here.
Right, or if we actually do size the statistics string to be
ETH_GSTRING_LEN bytes, memcpy() can be used, provided that the strings
are initialized correctly (which they are).
--
Florian
Powered by blists - more mailing lists