From 775f258fbd1895ba669be22f108faf817247a47a Mon Sep 17 00:00:00 2001 From: Helge Deller Date: Tue, 1 Oct 2019 17:06:05 +0200 Subject: kexec-tools: Fix possible out-of-bounds access in ifdown Fix a possible out-of-bounds access in function ifdown(): ifdown.c: In function 'ifdown': ifdown.c:56:4: warning: 'strncpy' specified bound 16 equals destination size [-Wstringop-truncation] 56 | strncpy(ifr.ifr_name, ifp->if_name, IFNAMSIZ); Signed-off-by: Helge Deller Signed-off-by: Simon Horman --- kexec/ifdown.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kexec/ifdown.c b/kexec/ifdown.c index 9679ad7..3ac19c1 100644 --- a/kexec/ifdown.c +++ b/kexec/ifdown.c @@ -53,7 +53,8 @@ int ifdown(void) if (strchr(ifp->if_name, ':') != NULL) continue; - strncpy(ifr.ifr_name, ifp->if_name, IFNAMSIZ); + strncpy(ifr.ifr_name, ifp->if_name, IFNAMSIZ-1); + ifr.ifr_name[IFNAMSIZ-1] = 0; if (ioctl(fd, SIOCGIFFLAGS, &ifr) < 0) { fprintf(stderr, "ifdown: shutdown "); perror(ifp->if_name); -- cgit