aboutsummaryrefslogtreecommitdiff
path: root/tests/util
diff options
context:
space:
mode:
authorRuss Allbery <eagle@eyrie.org>2020-05-17 17:05:30 -0700
committerRuss Allbery <eagle@eyrie.org>2020-05-17 17:05:30 -0700
commitc138111a3c27863308b6552a5527a9e821a3dc11 (patch)
treefe3c16462bf0213708f20d251a63e5b9bbf2d23f /tests/util
parentccfbd34d597318215b979338c4cb5d7e4a3f0d6f (diff)
Update to rra-c-util 8.2 and C TAP Harness 4.7
Update to rra-c-util 8.2: * Implement explicit_bzero with memset if it is not available. * Reformat all C source using clang-format 10. * Work around Test::Strict not skipping .git directories. * Fix warnings with perltidy 20190601 and Perl::Critic 1.134. * Fix warnings with Clang 10, GCC 10, and the Clang static analyzer. Update to C TAP Harness 4.7: * Fix warnings with GCC 10. * Reformat all C source using clang-format 10. * Fixed malloc error checking in bstrndup.
Diffstat (limited to 'tests/util')
-rw-r--r--tests/util/messages-krb5-t.c9
-rw-r--r--tests/util/messages-t.c34
-rwxr-xr-xtests/util/xmalloc-t37
-rw-r--r--tests/util/xmalloc.c12
4 files changed, 49 insertions, 43 deletions
diff --git a/tests/util/messages-krb5-t.c b/tests/util/messages-krb5-t.c
index b22c4cf..e68c57f 100644
--- a/tests/util/messages-krb5-t.c
+++ b/tests/util/messages-krb5-t.c
@@ -5,6 +5,7 @@
* which can be found at <https://www.eyrie.org/~eagle/software/rra-c-util/>.
*
* Written by Russ Allbery <eagle@eyrie.org>
+ * Copyright 2020 Russ Allbery <eagle@eyrie.org>
* Copyright 2010-2011, 2013-2014
* The Board of Trustees of the Leland Stanford Junior University
*
@@ -31,7 +32,7 @@
#include <config.h>
#ifdef HAVE_KRB5
-# include <portable/krb5.h>
+# include <portable/krb5.h>
#endif
#include <portable/system.h>
@@ -39,7 +40,7 @@
#include <tests/tap/process.h>
#include <util/macros.h>
#ifdef HAVE_KRB5
-# include <util/messages-krb5.h>
+# include <util/messages-krb5.h>
#endif
#include <util/messages.h>
#include <util/xmalloc.h>
@@ -58,7 +59,7 @@ main(void)
/*
* Test functions.
*/
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test_warn(void *data UNUSED)
{
krb5_context ctx;
@@ -76,7 +77,7 @@ test_warn(void *data UNUSED)
exit(0);
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test_die(void *data UNUSED)
{
krb5_context ctx;
diff --git a/tests/util/messages-t.c b/tests/util/messages-t.c
index e8a7835..cfb661a 100644
--- a/tests/util/messages-t.c
+++ b/tests/util/messages-t.c
@@ -5,7 +5,7 @@
* which can be found at <https://www.eyrie.org/~eagle/software/rra-c-util/>.
*
* Written by Russ Allbery <eagle@eyrie.org>
- * Copyright 2002, 2004-2005, 2015, 2017 Russ Allbery <eagle@eyrie.org>
+ * Copyright 2002, 2004-2005, 2015, 2017, 2020 Russ Allbery <eagle@eyrie.org>
* Copyright 2009-2012
* The Board of Trustees of the Leland Stanford Junior University
*
@@ -54,7 +54,7 @@ test1(void *data UNUSED)
warn("warning");
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test2(void *data UNUSED)
{
die("fatal");
@@ -67,7 +67,7 @@ test3(void *data UNUSED)
syswarn("permissions");
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test4(void *data UNUSED)
{
errno = EACCES;
@@ -81,7 +81,7 @@ test5(void *data UNUSED)
warn("warning");
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test6(void *data UNUSED)
{
message_program_name = "test6";
@@ -96,7 +96,7 @@ test7(void *data UNUSED)
syswarn("perms %d", 7);
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test8(void *data UNUSED)
{
message_program_name = "test8";
@@ -110,14 +110,14 @@ return10(void)
return 10;
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test9(void *data UNUSED)
{
message_fatal_cleanup = return10;
die("fatal");
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test10(void *data UNUSED)
{
message_program_name = 0;
@@ -126,7 +126,7 @@ test10(void *data UNUSED)
sysdie("fatal perm");
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test11(void *data UNUSED)
{
message_program_name = "test11";
@@ -136,7 +136,7 @@ test11(void *data UNUSED)
sysdie("fatal");
}
-static void __attribute__((__format__(printf, 2, 0)))
+__attribute__((__format__(printf, 2, 0))) static void
log_msg(size_t len, const char *format, va_list args, int error)
{
fprintf(stderr, "%lu %d ", (unsigned long) len, error);
@@ -151,7 +151,7 @@ test12(void *data UNUSED)
warn("warning");
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test13(void *data UNUSED)
{
message_handlers_die(1, log_msg);
@@ -166,7 +166,7 @@ test14(void *data UNUSED)
syswarn("warning");
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test15(void *data UNUSED)
{
message_handlers_die(2, log_msg, log_msg);
@@ -218,22 +218,22 @@ test21(void *data UNUSED)
debug("baz");
}
-static void __attribute__((__noreturn__))
+__attribute__((__noreturn__)) static void
test22(void *data UNUSED)
{
message_handlers_die(0);
die("hi mom!");
}
-static
-void test23(void *data UNUSED)
+static void
+test23(void *data UNUSED)
{
message_handlers_warn(0);
warn("this is a test");
}
-static
-void test24(void *data UNUSED)
+static void
+test24(void *data UNUSED)
{
notice("first");
message_handlers_notice(0);
@@ -305,7 +305,7 @@ main(void)
is_function_output(test20, NULL, 0, "3 0 foo\n", "test20");
is_function_output(test21, NULL, 0, "test23: baz\n", "test21");
- /* Make sure that it's possible to turn off a message type entirely. */
+ /* Make sure that it's possible to turn off a message type entirely. */
is_function_output(test22, NULL, 1, "", "test22");
is_function_output(test23, NULL, 0, "", "test23");
is_function_output(test24, NULL, 0, "first\nthird\n", "test24");
diff --git a/tests/util/xmalloc-t b/tests/util/xmalloc-t
index e73a7c6..b3afa31 100755
--- a/tests/util/xmalloc-t
+++ b/tests/util/xmalloc-t
@@ -6,7 +6,8 @@
# which can be found at <https://www.eyrie.org/~eagle/software/rra-c-util/>.
#
# Written by Russ Allbery <eagle@eyrie.org>
-# Copyright 2000-2001, 2006, 2014, 2016 Russ Allbery <eagle@eyrie.org>
+# Copyright 2000-2001, 2006, 2014, 2016, 2019-2020
+# Russ Allbery <eagle@eyrie.org>
# Copyright 2008-2010, 2012
# The Board of Trustees of the Leland Stanford Junior University
#
@@ -33,7 +34,7 @@
. "$C_TAP_SOURCE/tap/libtap.sh"
cd "$C_TAP_BUILD/util"
-# Run an xmalloc test. Takes the description, the expectd exit status, the
+# Run an xmalloc test. Takes the description, the expected exit status, the
# output, and the arguments.
ok_xmalloc () {
local desc w_status w_output output status
@@ -101,46 +102,46 @@ ok_xmalloc "vasprintf large" 0 "" "v" "30000000" "0"
# We assume that there are enough miscellaneous allocations that an allocation
# exactly as large as the limit will always fail.
ok_xmalloc "malloc fail" 1 \
- "failed to malloc 30000000 bytes at xmalloc.c line 41" \
+ "failed to malloc 30000000 bytes at xmalloc.c line 42" \
"m" "30000000" "30000000"
ok_xmalloc "realloc fail" 1 \
- "failed to realloc 30000000 bytes at xmalloc.c line 69" \
+ "failed to realloc 30000000 bytes at xmalloc.c line 71" \
"r" "30000000" "30000000"
ok_xmalloc "reallocarray fail" 1 \
- "failed to reallocarray 30000000 bytes at xmalloc.c line 99" \
+ "failed to reallocarray 30000000 bytes at xmalloc.c line 100" \
"y" "30000000" "30000000"
ok_xmalloc "strdup fail" 1 \
- "failed to strdup 30000000 bytes at xmalloc.c line 130" \
+ "failed to strdup 30000000 bytes at xmalloc.c line 131" \
"s" "30000000" "30000000"
ok_xmalloc "strndup fail" 1 \
- "failed to strndup 30000000 bytes at xmalloc.c line 176" \
+ "failed to strndup 30000000 bytes at xmalloc.c line 177" \
"n" "30000000" "30000000"
ok_xmalloc "calloc fail" 1 \
- "failed to calloc 30000000 bytes at xmalloc.c line 200" \
+ "failed to calloc 30000000 bytes at xmalloc.c line 201" \
"c" "30000000" "30000000"
ok_xmalloc "asprintf fail" 1 \
- "failed to asprintf 30000000 bytes at xmalloc.c line 224" \
+ "failed to asprintf 30000000 bytes at xmalloc.c line 225" \
"a" "30000000" "30000000"
ok_xmalloc "vasprintf fail" 1 \
- "failed to vasprintf 30000000 bytes at xmalloc.c line 243" \
+ "failed to vasprintf 30000000 bytes at xmalloc.c line 244" \
"v" "30000000" "30000000"
# Check our custom error handler.
-ok_xmalloc "malloc custom" 1 "malloc 30000000 xmalloc.c 41" \
+ok_xmalloc "malloc custom" 1 "malloc 30000000 xmalloc.c 42" \
"M" "30000000" "30000000"
-ok_xmalloc "realloc custom" 1 "realloc 30000000 xmalloc.c 69" \
+ok_xmalloc "realloc custom" 1 "realloc 30000000 xmalloc.c 71" \
"R" "30000000" "30000000"
-ok_xmalloc "reallocarray custom" 1 "reallocarray 30000000 xmalloc.c 99" \
+ok_xmalloc "reallocarray custom" 1 "reallocarray 30000000 xmalloc.c 100" \
"Y" "30000000" "30000000"
-ok_xmalloc "strdup custom" 1 "strdup 30000000 xmalloc.c 130" \
+ok_xmalloc "strdup custom" 1 "strdup 30000000 xmalloc.c 131" \
"S" "30000000" "30000000"
-ok_xmalloc "strndup custom" 1 "strndup 30000000 xmalloc.c 176" \
+ok_xmalloc "strndup custom" 1 "strndup 30000000 xmalloc.c 177" \
"N" "30000000" "30000000"
-ok_xmalloc "calloc custom" 1 "calloc 30000000 xmalloc.c 200" \
+ok_xmalloc "calloc custom" 1 "calloc 30000000 xmalloc.c 201" \
"C" "30000000" "30000000"
-ok_xmalloc "asprintf custom" 1 "asprintf 30000000 xmalloc.c 224" \
+ok_xmalloc "asprintf custom" 1 "asprintf 30000000 xmalloc.c 225" \
"A" "30000000" "30000000"
-ok_xmalloc "vasprintf custom" 1 "vasprintf 30000000 xmalloc.c 243" \
+ok_xmalloc "vasprintf custom" 1 "vasprintf 30000000 xmalloc.c 244" \
"V" "30000000" "30000000"
# Check the smaller ones again just for grins.
diff --git a/tests/util/xmalloc.c b/tests/util/xmalloc.c
index d157bbb..eb6f1d2 100644
--- a/tests/util/xmalloc.c
+++ b/tests/util/xmalloc.c
@@ -4,7 +4,7 @@
* The canonical version of this file is maintained in the rra-c-util package,
* which can be found at <https://www.eyrie.org/~eagle/software/rra-c-util/>.
*
- * Copyright 2000-2001, 2006, 2017 Russ Allbery <eagle@eyrie.org>
+ * Copyright 2000-2001, 2006, 2017, 2020 Russ Allbery <eagle@eyrie.org>
* Copyright 2008, 2012-2014
* The Board of Trustees of the Leland Stanford Junior University
*
@@ -34,10 +34,11 @@
#include <config.h>
#include <portable/system.h>
+#include <assert.h>
#include <ctype.h>
#include <errno.h>
#ifdef HAVE_SYS_TIME_H
-# include <sys/time.h>
+# include <sys/time.h>
#endif
#include <time.h>
@@ -94,6 +95,7 @@ test_realloc(size_t size)
char *buffer;
size_t i;
+ assert(size > 10);
buffer = xmalloc(10);
if (buffer == NULL)
return 0;
@@ -101,8 +103,7 @@ test_realloc(size_t size)
buffer = xrealloc(buffer, size);
if (buffer == NULL)
return 0;
- if (size > 0)
- memset(buffer + 10, 2, size - 10);
+ memset(buffer + 10, 2, size - 10);
for (i = 0; i < 10; i++)
if (buffer[i] != 1)
return 0;
@@ -383,6 +384,7 @@ main(int argc, char *argv[])
#endif
}
+ /* clang-format off */
switch (code) {
case 'c': exit(test_calloc(size) ? willfail : 1);
case 'm': exit(test_malloc(size) ? willfail : 1);
@@ -394,5 +396,7 @@ main(int argc, char *argv[])
case 'v': exit(test_vasprintf(size) ? willfail : 1);
default: die("Unknown mode %c", argv[1][0]);
}
+ /* clang-format on */
+
exit(1);
}