Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

kobject: Replace strncpy with memcpy

gcc 8.1.0 complains:

lib/kobject.c:128:3: warning:
'strncpy' output truncated before terminating nul copying as many
bytes from a string as its length [-Wstringop-truncation]
lib/kobject.c: In function 'kobject_get_path':
lib/kobject.c:125:13: note: length computed here

Using strncpy() is indeed less than perfect since the length of data to
be copied has already been determined with strlen(). Replace strncpy()
with memcpy() to address the warning and optimize the code a little.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Guenter Roeck and committed by
Greg Kroah-Hartman
77d2a24b 448a5a55

+1 -1
+1 -1
lib/kobject.c
··· 125 125 int cur = strlen(kobject_name(parent)); 126 126 /* back up enough to print this name with '/' */ 127 127 length -= cur; 128 - strncpy(path + length, kobject_name(parent), cur); 128 + memcpy(path + length, kobject_name(parent), cur); 129 129 *(path + --length) = '/'; 130 130 } 131 131