From 8c63a6e22b09bf6c6cc37a7e83af86481d6a756c Mon Sep 17 00:00:00 2001 From: Markus Volk Date: Tue, 14 Jan 2020 21:22:46 +0100 Subject: [PATCH] libnet: avoid unterminated strings Signed-off-by: MarkusVolk Origin commit data ------------------ Commit: https://github.com/neutrino-images/ni-neutrino/commit/6a51539434681d297099c6c6ef488899cd6218ce Author: Markus Volk Date: 2020-01-14 (Tue, 14 Jan 2020) --- lib/libnet/libnet.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libnet/libnet.cpp b/lib/libnet/libnet.cpp index 5af7eb7bf..8c683f76e 100644 --- a/lib/libnet/libnet.cpp +++ b/lib/libnet/libnet.cpp @@ -102,7 +102,7 @@ void netGetIP(std::string &dev, std::string &ip, std::string &mask, std::string memset(&req,0,sizeof(req)); - strncpy(req.ifr_name, dev.c_str(), sizeof(req.ifr_name)); + strncpy(req.ifr_name, dev.c_str(), sizeof(req.ifr_name)-1); saddr = (struct sockaddr_in *) &req.ifr_addr; addr= (unsigned char*) &saddr->sin_addr.s_addr; @@ -290,7 +290,7 @@ void netGetMacAddr(std::string &ifname, unsigned char *mac) return; ifr.ifr_addr.sa_family = AF_INET; - strncpy(ifr.ifr_name, ifname.c_str(), sizeof(ifr.ifr_name)); + strncpy(ifr.ifr_name, ifname.c_str(), sizeof(ifr.ifr_name)-1); if(ioctl(fd, SIOCGIFHWADDR, &ifr) < 0) return;