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);