svn commit: r299867 - head/usr.sbin/rtadvd
Don Lewis
truckman at FreeBSD.org
Sun May 15 22:06:23 UTC 2016
Author: truckman
Date: Sun May 15 22:06:21 2016
New Revision: 299867
URL: https://svnweb.freebsd.org/changeset/base/299867
Log:
Use strlcpy() instead of strncpy() when copying ifname to ensure
that it is NUL terminated. Additional NUL padding is not required
for short names.
MFC after: 1 week
Modified:
head/usr.sbin/rtadvd/config.c
head/usr.sbin/rtadvd/if.c
Modified: head/usr.sbin/rtadvd/config.c
==============================================================================
--- head/usr.sbin/rtadvd/config.c Sun May 15 21:45:04 2016 (r299866)
+++ head/usr.sbin/rtadvd/config.c Sun May 15 22:06:21 2016 (r299867)
@@ -640,7 +640,7 @@ getconfig_free_pfx:
exit(1);
}
memset(&ndi, 0, sizeof(ndi));
- strncpy(ndi.ifname, ifi->ifi_ifname, sizeof(ndi.ifname));
+ strlcpy(ndi.ifname, ifi->ifi_ifname, sizeof(ndi.ifname));
if (ioctl(s, SIOCGIFINFO_IN6, (caddr_t)&ndi) < 0)
syslog(LOG_INFO, "<%s> ioctl:SIOCGIFINFO_IN6 at %s: %s",
__func__, ifi->ifi_ifname, strerror(errno));
Modified: head/usr.sbin/rtadvd/if.c
==============================================================================
--- head/usr.sbin/rtadvd/if.c Sun May 15 21:45:04 2016 (r299866)
+++ head/usr.sbin/rtadvd/if.c Sun May 15 22:06:21 2016 (r299867)
@@ -387,7 +387,7 @@ update_ifinfo_nd_flags(struct ifinfo *if
}
/* ND flags */
memset(&nd, 0, sizeof(nd));
- strncpy(nd.ifname, ifi->ifi_ifname,
+ strlcpy(nd.ifname, ifi->ifi_ifname,
sizeof(nd.ifname));
error = ioctl(s, SIOCGIFINFO_IN6, (caddr_t)&nd);
if (error) {
@@ -516,7 +516,7 @@ update_ifinfo(struct ifilist_head_t *ifi
if (ifi->ifi_phymtu == 0) {
memset(&ifr, 0, sizeof(ifr));
ifr.ifr_addr.sa_family = AF_INET6;
- strncpy(ifr.ifr_name, ifi->ifi_ifname,
+ strlcpy(ifr.ifr_name, ifi->ifi_ifname,
sizeof(ifr.ifr_name));
error = ioctl(s, SIOCGIFMTU, (caddr_t)&ifr);
if (error) {
More information about the svn-src-all
mailing list