Module Name:    src
Committed By:   mrg
Date:           Sat Oct  5 23:32:20 UTC 2019

Modified Files:
        src/external/bsd/ipf/dist/lib: load_hash.c
        src/external/bsd/ipf/dist/tools: ipmon.c

Log Message:
use target size in a couple of strncpy() calls:
- load_hash() has already zeroed the structure so final nul is there.
- print_ipflog() copied final byte that was then nul'd.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/external/bsd/ipf/dist/lib/load_hash.c
cvs rdiff -u -r1.8 -r1.9 src/external/bsd/ipf/dist/tools/ipmon.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/bsd/ipf/dist/lib/load_hash.c
diff -u src/external/bsd/ipf/dist/lib/load_hash.c:1.2 src/external/bsd/ipf/dist/lib/load_hash.c:1.3
--- src/external/bsd/ipf/dist/lib/load_hash.c:1.2	Sun Jul 22 14:27:36 2012
+++ src/external/bsd/ipf/dist/lib/load_hash.c	Sat Oct  5 23:32:20 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: load_hash.c,v 1.2 2012/07/22 14:27:36 darrenr Exp $	*/
+/*	$NetBSD: load_hash.c,v 1.3 2019/10/05 23:32:20 mrg Exp $	*/
 
 /*
  * Copyright (C) 2012 by Darren Reed.
@@ -67,8 +67,8 @@ load_hash(iphp, list, iocfunc)
 			}
 	}
 
-	strncpy(iph.iph_name, op.iplo_name, sizeof(op.iplo_name));
-	strncpy(iphp->iph_name, op.iplo_name, sizeof(op.iplo_name));
+	strncpy(iph.iph_name, op.iplo_name, sizeof(iph.iph_name) - 1);
+	strncpy(iphp->iph_name, op.iplo_name, sizeof(iphp->iph_name) - 1);
 
 	if (opts & OPT_VERBOSE) {
 		iph.iph_table = calloc(size, sizeof(*iph.iph_table));

Index: src/external/bsd/ipf/dist/tools/ipmon.c
diff -u src/external/bsd/ipf/dist/tools/ipmon.c:1.8 src/external/bsd/ipf/dist/tools/ipmon.c:1.9
--- src/external/bsd/ipf/dist/tools/ipmon.c:1.8	Sun Feb  4 08:19:42 2018
+++ src/external/bsd/ipf/dist/tools/ipmon.c	Sat Oct  5 23:32:20 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: ipmon.c,v 1.8 2018/02/04 08:19:42 mrg Exp $	*/
+/*	$NetBSD: ipmon.c,v 1.9 2019/10/05 23:32:20 mrg Exp $	*/
 
 /*
  * Copyright (C) 2012 by Darren Reed.
@@ -1097,7 +1097,7 @@ print_ipflog(config_t *conf, const iplog
 	{
 	char	ifname[sizeof(ipf.fl_ifname) + 1];
 
-	strncpy(ifname, ipf.fl_ifname, sizeof(ipf.fl_ifname));
+	strncpy(ifname, ipf.fl_ifname, sizeof(ifname)-1);
 	ifname[sizeof(ipf.fl_ifname)] = '\0';
 	sprintf(t, "%s", ifname);
 	t += strlen(t);

Reply via email to