diff mbox series

caif_usb: use strlcpy() instead of strncpy()

Message ID 1515499098-159956-1-git-send-email-wangxiongfeng2@huawei.com
State New
Headers show
Series caif_usb: use strlcpy() instead of strncpy() | expand

Commit Message

Xiongfeng Wang Jan. 9, 2018, 11:58 a.m. UTC
From: Xiongfeng Wang <xiongfeng.wang@linaro.org>


gcc-8 reports

net/caif/caif_usb.c: In function 'cfusbl_device_notify':
./include/linux/string.h:245:9: warning: '__builtin_strncpy' output may
be truncated copying 15 bytes from a string of length 15
[-Wstringop-truncation]

The compiler require that the input param 'len' of strncpy() should be
greater than the length of the src string, so that '\0' is copied as
well. We can just use strlcpy() to avoid this warning.

Signed-off-by: Xiongfeng Wang <xiongfeng.wang@linaro.org>

---
 net/caif/caif_usb.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

-- 
1.8.3.1

Comments

David Miller Jan. 10, 2018, 8:06 p.m. UTC | #1
From: Xiongfeng Wang <wangxiongfeng2@huawei.com>

Date: Tue, 9 Jan 2018 19:58:18 +0800

> From: Xiongfeng Wang <xiongfeng.wang@linaro.org>

> 

> gcc-8 reports

> 

> net/caif/caif_usb.c: In function 'cfusbl_device_notify':

> ./include/linux/string.h:245:9: warning: '__builtin_strncpy' output may

> be truncated copying 15 bytes from a string of length 15

> [-Wstringop-truncation]

> 

> The compiler require that the input param 'len' of strncpy() should be

> greater than the length of the src string, so that '\0' is copied as

> well. We can just use strlcpy() to avoid this warning.

> 

> Signed-off-by: Xiongfeng Wang <xiongfeng.wang@linaro.org>


Applied.
diff mbox series

Patch

diff --git a/net/caif/caif_usb.c b/net/caif/caif_usb.c
index 5cd44f0..1a082a9 100644
--- a/net/caif/caif_usb.c
+++ b/net/caif/caif_usb.c
@@ -176,9 +176,7 @@  static int cfusbl_device_notify(struct notifier_block *me, unsigned long what,
 		dev_add_pack(&caif_usb_type);
 	pack_added = true;
 
-	strncpy(layer->name, dev->name,
-			sizeof(layer->name) - 1);
-	layer->name[sizeof(layer->name) - 1] = 0;
+	strlcpy(layer->name, dev->name, sizeof(layer->name));
 
 	return 0;
 }