From c8e7f842b002f6c5081ff1519a9fe40d81cdeadd Mon Sep 17 00:00:00 2001 From: Hugo Landau Date: Thu, 5 Jan 2023 10:51:14 +0000 Subject: [PATCH] QUIC TSERVER: Fix probable nondeterminism in some OS network stacks Reviewed-by: Tomas Mraz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/19897) --- test/quic_tserver_test.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/test/quic_tserver_test.c b/test/quic_tserver_test.c index c6c5c719e97..e743adbeab4 100644 --- a/test/quic_tserver_test.c +++ b/test/quic_tserver_test.c @@ -214,11 +214,18 @@ static int test_tserver(void) if (!TEST_false(ret)) goto err; - if (!TEST_int_eq(SSL_get_error(c_ssl, ret), SSL_ERROR_ZERO_RETURN)) - goto err; + /* + * Allow the implementation to take as long as it wants to finally + * notice EOS. Account for varied timings in OS networking stacks. + */ + if (SSL_get_error(c_ssl, ret) != SSL_ERROR_WANT_READ) { + if (!TEST_int_eq(SSL_get_error(c_ssl, ret), + SSL_ERROR_ZERO_RETURN)) + goto err; - /* DONE */ - break; + /* DONE */ + break; + } } /* -- 2.47.2