diff options
author | Bernd Edlinger <bernd.edlinger@hotmail.de> | 2025-01-10 19:58:46 +0100 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2025-01-15 09:16:04 +0100 |
commit | c37f564bb8e25f825ff722642aaf735e8d74abb4 (patch) | |
tree | 7a903061e3c50096b362dedc92b2ecd7c2f8af2e | |
parent | Big and little-endian load and store support (diff) | |
download | openssl-c37f564bb8e25f825ff722642aaf735e8d74abb4.tar.xz openssl-c37f564bb8e25f825ff722642aaf735e8d74abb4.zip |
Fix test failure in 30-test_evp_pkey_provided.t
In this test there is a random test output corruption.
`make test TESTS=test_evp_pkey_provided V=1` has some random output,
that can with a certain probability start a line with "ok" or so:
# Setting up a OSSL_ENCODER context with passphrase
# Testing with no encryption
jLixONcRPi/m64CGie4KKKDuGeTjtYwfima3BNYCGlgbLGeK3yYxBfZb9JjviOJ4
# nHaNsRsONTAKyg==
This happens because large random data is output to bio_out
but some data remains buffered, and then test_note() is used to print
some comments on the bio_err file. This causes output corruption that
confuses the TAP parser.
Fix that by flushing any pending output with test_flush_stdout() first.
Fixes #23992
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/26383)
-rw-r--r-- | test/testutil/tests.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/test/testutil/tests.c b/test/testutil/tests.c index 42afab1ada..c9945325a2 100644 --- a/test/testutil/tests.c +++ b/test/testutil/tests.c @@ -145,6 +145,7 @@ void test_perror(const char *s) void test_note(const char *fmt, ...) { + test_flush_stdout(); if (fmt != NULL) { va_list ap; |