diff options
author | Helge Deller <deller@gmx.de> | 2019-10-01 17:06:05 +0200 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2019-10-03 10:10:24 +0200 |
commit | 775f258fbd1895ba669be22f108faf817247a47a (patch) | |
tree | d857133ded8ea713750a22cb896f3d5d2ffc2010 | |
parent | 470d5c445e11dfa8443a5bc1d7dd5788f5fc5dd2 (diff) | |
download | kexec-tools-775f258fbd1895ba669be22f108faf817247a47a.tar.gz |
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 <deller@gmx.de>
Signed-off-by: Simon Horman <horms@verge.net.au>
-rw-r--r-- | kexec/ifdown.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kexec/ifdown.c b/kexec/ifdown.c index 9679ad75..3ac19c1a 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); |