From 535bbef5dd9f759ae1b1bfd640630d6be268a33f Mon Sep 17 00:00:00 2001 From: MarkusVolk Date: Tue, 14 Jan 2020 08:55:44 +0100 Subject: [PATCH] libnet: avoid unterminated strings Signed-off-by: MarkusVolk --- 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;