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

Configure Feed

Select the types of activity you want to include in your feed.

mtd: sm_ftl: Replace deprecated strncpy with sysfs_emit in sm_attr_show

strncpy() is deprecated [1] for NUL-terminated destination buffers
because it does not guarantee NUL termination. It also unnecessarily
NUL-pads the destination buffer if the source is shorter. Replace it
with sysfs_emit() using the "%.*s" format specifier and supply the
length 'sm_attr->len' to improve sm_attr_show().

Return the number of characters actually written to 'buf' instead of
'sm_attr->len'.

Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings [1]
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>

authored by

Thorsten Blum and committed by
Miquel Raynal
f3dc4d98 c909fec6

+1 -2
+1 -2
drivers/mtd/sm_ftl.c
··· 44 44 struct sm_sysfs_attribute *sm_attr = 45 45 container_of(attr, struct sm_sysfs_attribute, dev_attr); 46 46 47 - strncpy(buf, sm_attr->data, sm_attr->len); 48 - return sm_attr->len; 47 + return sysfs_emit(buf, "%.*s", sm_attr->len, sm_attr->data); 49 48 } 50 49 51 50