Fix format string usage.

This commit is contained in:
joerg 2020-03-23 22:21:34 +00:00
parent 05908f0c00
commit b328a94938
4 changed files with 15 additions and 13 deletions

View File

@ -31,9 +31,9 @@ static void test_diff_header(const char *left, const char *right)
static void test_string_null_empty(const char *m, char c)
{
if (m == NULL)
test_printf_stderr("% 4s %c NULL\n", "", c);
test_printf_stderr("%4s %c NULL\n", "", c);
else
test_printf_stderr("% 4u:%c ''\n", 0u, c);
test_printf_stderr("%4u:%c ''\n", 0u, c);
}
static void test_fail_string_common(const char *prefix, const char *file,
@ -94,18 +94,18 @@ static void test_fail_string_common(const char *prefix, const char *file,
bdiff[i] = '\0';
}
if (n1 == n2 && !diff) {
test_printf_stderr("% 4u: '%s'\n", cnt, n2 > n1 ? b2 : b1);
test_printf_stderr("%4u: '%s'\n", cnt, n2 > n1 ? b2 : b1);
} else {
if (cnt == 0 && (m1 == NULL || *m1 == '\0'))
test_string_null_empty(m1, '-');
else if (n1 > 0)
test_printf_stderr("% 4u:- '%s'\n", cnt, b1);
test_printf_stderr("%4u:- '%s'\n", cnt, b1);
if (cnt == 0 && (m2 == NULL || *m2 == '\0'))
test_string_null_empty(m2, '+');
else if (n2 > 0)
test_printf_stderr("% 4u:+ '%s'\n", cnt, b2);
test_printf_stderr("%4u:+ '%s'\n", cnt, b2);
if (diff && i > 0)
test_printf_stderr("% 4s %s\n", "", bdiff);
test_printf_stderr("%4s %s\n", "", bdiff);
}
m1 += n1;
m2 += n2;
@ -410,7 +410,7 @@ void test_output_bignum(const char *name, const BIGNUM *bn)
static void test_memory_null_empty(const unsigned char *m, char c)
{
if (m == NULL)
test_printf_stderr("% 4s %c%s\n", "", c, "NULL");
test_printf_stderr("%4s %c%s\n", "", c, "NULL");
else
test_printf_stderr("%04x %c%s\n", 0u, c, "empty");
}
@ -494,7 +494,7 @@ static void test_fail_memory_common(const char *prefix, const char *file,
else if (n2 > 0)
test_printf_stderr("%04x:+%s\n", cnt, b2);
if (diff && i > 0)
test_printf_stderr("% 4s %s\n", "", bdiff);
test_printf_stderr("%4s %s\n", "", bdiff);
}
m1 += n1;
m2 += n2;

View File

@ -25,7 +25,7 @@ static void check_arg_usage(void)
for (i = 0; i < n; i++)
if (!arg_used[i+1])
test_printf_stderr("Warning ignored command-line argument %d: %s\n",
test_printf_stderr("Warning ignored command-line argument %zu: %s\n",
i, args[i+1]);
if (i < arg_count)
test_printf_stderr("Warning arguments %zu and later unchecked\n", i);

View File

@ -11,6 +11,7 @@
# define OSSL_TESTUTIL_OUTPUT_H
#include <stdarg.h>
#include "../testutil.h"
/*
* The basic I/O functions used internally by the test framework. These
@ -19,14 +20,14 @@
void test_open_streams(void);
void test_close_streams(void);
/* The following ALL return the number of characters written */
int test_vprintf_stdout(const char *fmt, va_list ap);
int test_vprintf_stderr(const char *fmt, va_list ap);
int test_vprintf_stdout(const char *fmt, va_list ap) PRINTF_FORMAT(1, 0);
int test_vprintf_stderr(const char *fmt, va_list ap) PRINTF_FORMAT(1, 0);
/* These return failure or success */
int test_flush_stdout(void);
int test_flush_stderr(void);
/* Commodity functions. There's no need to override these */
int test_printf_stdout(const char *fmt, ...);
int test_printf_stderr(const char *fmt, ...);
int test_printf_stdout(const char *fmt, ...) PRINTF_FORMAT(1, 2);
int test_printf_stderr(const char *fmt, ...) PRINTF_FORMAT(1, 2);
#endif /* OSSL_TESTUTIL_OUTPUT_H */

View File

@ -72,6 +72,7 @@ static void test_fail_message(const char *prefix, const char *file, int line,
const char *fmt, ...)
PRINTF_FORMAT(8, 9);
PRINTF_FORMAT(8, 0)
static void test_fail_message_va(const char *prefix, const char *file,
int line, const char *type,
const char *left, const char *right,