Module Name: src
Committed By: martin
Date: Mon Jan 27 21:30:18 UTC 2020
Modified Files:
src/usr.sbin/sysinst: net.c
Log Message:
Use a few strlcpy() instead of strncpy() for network ioctl structs.
We seem to have no formal documentation stating the various
char if*_name[IFNAMSIZ]; /* if name, e.g. "en0" */
elements in ioctls are nul terminated, but the peanut gallery claims
it is so - and at least half of the code in-tree touching them agrees.
To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 src/usr.sbin/sysinst/net.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.sbin/sysinst/net.c
diff -u src/usr.sbin/sysinst/net.c:1.34 src/usr.sbin/sysinst/net.c:1.35
--- src/usr.sbin/sysinst/net.c:1.34 Sat Nov 16 20:26:59 2019
+++ src/usr.sbin/sysinst/net.c Mon Jan 27 21:30:17 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: net.c,v 1.34 2019/11/16 20:26:59 martin Exp $ */
+/* $NetBSD: net.c,v 1.35 2020/01/27 21:30:17 martin Exp $ */
/*
* Copyright 1997 Piermont Information Systems Inc.
@@ -279,7 +279,7 @@ do_ifreq(struct ifreq *ifr, unsigned lon
return -1;
memset(ifr, 0, sizeof *ifr);
- strncpy(ifr->ifr_name, net_dev, sizeof ifr->ifr_name);
+ strlcpy(ifr->ifr_name, net_dev, sizeof ifr->ifr_name);
rval = ioctl(sock, cmd, ifr);
close(sock);
@@ -297,7 +297,7 @@ do_ifmreq(struct ifmediareq *ifmr, unsig
return -1;
memset(ifmr, 0, sizeof *ifmr);
- strncpy(ifmr->ifm_name, net_dev, sizeof ifmr->ifm_name);
+ strlcpy(ifmr->ifm_name, net_dev, sizeof ifmr->ifm_name);
rval = ioctl(sock, cmd, ifmr);
close(sock);
@@ -539,7 +539,7 @@ again:
network_up = 1;
dhcp_config = 0;
- strncpy(net_dev, net_devs[selected_net].if_dev, STRSIZE);
+ strlcpy(net_dev, net_devs[selected_net].if_dev, sizeof net_dev);
if (!handle_license(net_dev))
goto done;