Module Name:    src
Committed By:   mrg
Date:           Tue Aug  1 07:57:18 UTC 2023

Modified Files:
        src/lib/libnpf: npf.c
        src/tests/lib/libc: t_cdb.c
        src/usr.sbin/dev_mkdb: dev_mkdb.c
        src/usr.sbin/npf/npftest: npftest.c

Log Message:
cdbw_output()'s 3rd argument must be a 16-byte char array, so pad the
string literals passed to it with enough nuls to make this true.

found by GCC 12.


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 src/lib/libnpf/npf.c
cvs rdiff -u -r1.2 -r1.3 src/tests/lib/libc/t_cdb.c
cvs rdiff -u -r1.29 -r1.30 src/usr.sbin/dev_mkdb/dev_mkdb.c
cvs rdiff -u -r1.25 -r1.26 src/usr.sbin/npf/npftest/npftest.c

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

Modified files:

Index: src/lib/libnpf/npf.c
diff -u src/lib/libnpf/npf.c:1.50 src/lib/libnpf/npf.c:1.51
--- src/lib/libnpf/npf.c:1.50	Tue Jun  7 16:27:24 2022
+++ src/lib/libnpf/npf.c	Tue Aug  1 07:57:17 2023
@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: npf.c,v 1.50 2022/06/07 16:27:24 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: npf.c,v 1.51 2023/08/01 07:57:17 mrg Exp $");
 
 #include <sys/types.h>
 #include <sys/mman.h>
@@ -1203,7 +1203,7 @@ _npf_table_build_const(nl_table_t *tl)
 	}
 	unlink(sfn);
 
-	if (cdbw_output(cdbw, fd, "npf-table-cdb", NULL) == -1) {
+	if (cdbw_output(cdbw, fd, "npf-table-cdb\0\0", NULL) == -1) {
 		error = errno;
 		goto out;
 	}

Index: src/tests/lib/libc/t_cdb.c
diff -u src/tests/lib/libc/t_cdb.c:1.2 src/tests/lib/libc/t_cdb.c:1.3
--- src/tests/lib/libc/t_cdb.c:1.2	Tue Jan 10 22:24:29 2017
+++ src/tests/lib/libc/t_cdb.c	Tue Aug  1 07:57:17 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: t_cdb.c,v 1.2 2017/01/10 22:24:29 christos Exp $	*/
+/*	$NetBSD: t_cdb.c,v 1.3 2023/08/01 07:57:17 mrg Exp $	*/
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__RCSID("$NetBSD: t_cdb.c,v 1.2 2017/01/10 22:24:29 christos Exp $");
+__RCSID("$NetBSD: t_cdb.c,v 1.3 2023/08/01 07:57:17 mrg Exp $");
 
 #include <atf-c.h>
 
@@ -100,7 +100,7 @@ write_database(size_t len)
 		ATF_REQUIRE(cdbw_put(db, &keys[i], sizeof(keys[i]),
 		    buf, sizeof(buf)) == 0);
 	}
-	ATF_REQUIRE(cdbw_output(db, fd, "test database", arc4random) == 0);
+	ATF_REQUIRE(cdbw_output(db, fd, "test database\0\0", arc4random) == 0);
 	cdbw_close(db);
 	ATF_REQUIRE(close(fd) == 0);
 }

Index: src/usr.sbin/dev_mkdb/dev_mkdb.c
diff -u src/usr.sbin/dev_mkdb/dev_mkdb.c:1.29 src/usr.sbin/dev_mkdb/dev_mkdb.c:1.30
--- src/usr.sbin/dev_mkdb/dev_mkdb.c:1.29	Sun Jun  3 21:42:47 2012
+++ src/usr.sbin/dev_mkdb/dev_mkdb.c	Tue Aug  1 07:57:17 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: dev_mkdb.c,v 1.29 2012/06/03 21:42:47 joerg Exp $	*/
+/*	$NetBSD: dev_mkdb.c,v 1.30 2023/08/01 07:57:17 mrg Exp $	*/
 
 /*-
  * Copyright (c) 1990, 1993
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__RCSID("$NetBSD: dev_mkdb.c,v 1.29 2012/06/03 21:42:47 joerg Exp $");
+__RCSID("$NetBSD: dev_mkdb.c,v 1.30 2023/08/01 07:57:17 mrg Exp $");
 
 #include <sys/queue.h>
 #include <sys/stat.h>
@@ -76,7 +76,7 @@ cdb_close(void)
 	fd = open(db_name_tmp, O_CREAT|O_EXCL|O_WRONLY, FILE_PERMISSION);
 	if (fd == -1)
 		err(1, "opening %s failed", db_name_tmp);
-	if (cdbw_output(db, fd, "NetBSD6 devdb", NULL))
+	if (cdbw_output(db, fd, "NetBSD6 devdb\0\0", NULL))
 		err(1, "failed to write temporary database %s", db_name_tmp);
 	cdbw_close(db);
 	db = NULL;

Index: src/usr.sbin/npf/npftest/npftest.c
diff -u src/usr.sbin/npf/npftest/npftest.c:1.25 src/usr.sbin/npf/npftest/npftest.c:1.26
--- src/usr.sbin/npf/npftest/npftest.c:1.25	Sat May 30 14:16:56 2020
+++ src/usr.sbin/npf/npftest/npftest.c	Tue Aug  1 07:57:17 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: npftest.c,v 1.25 2020/05/30 14:16:56 rmind Exp $	*/
+/*	$NetBSD: npftest.c,v 1.26 2023/08/01 07:57:17 mrg Exp $	*/
 
 /*
  * NPF testing framework.
@@ -147,7 +147,7 @@ generate_test_cdb(size_t *size)
 	if (cdbw_put(cdbw, &addr, alen, &addr, alen) == -1)
 		err(EXIT_FAILURE, "cdbw_put");
 
-	if (cdbw_output(cdbw, fd, "npf-table-cdb", NULL) == -1) {
+	if (cdbw_output(cdbw, fd, "npf-table-cdb\0\0", NULL) == -1) {
 		err(EXIT_FAILURE, "cdbw_output");
 	}
 	cdbw_close(cdbw);

Reply via email to