summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorTomas Mraz <tomas@openssl.org>2023-08-15 20:53:32 +0200
committerTomas Mraz <tomas@openssl.org>2023-08-22 12:31:46 +0200
commit608a95f4969202083eccd4c1c7e91dec021ea79b (patch)
tree48c9d93f56d23aa1118a96e5449442da168f9899 /test
parent8fd32a0eda994527668a1e19a29ca9c85b4a35d8 (diff)
qtest: Run both client and server during connect
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21713)
Diffstat (limited to 'test')
-rw-r--r--test/helpers/quictestlib.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/test/helpers/quictestlib.c b/test/helpers/quictestlib.c
index c956296330..be98e205ff 100644
--- a/test/helpers/quictestlib.c
+++ b/test/helpers/quictestlib.c
@@ -251,7 +251,7 @@ static void run_server_thread(void)
int qtest_create_quic_connection(QUIC_TSERVER *qtserv, SSL *clientssl)
{
- int retc = -1, rets = 0, err, abortctr = 0, ret = 0;
+ int retc = -1, rets = 0, abortctr = 0, ret = 0;
int clienterr = 0, servererr = 0;
#if defined(OPENSSL_THREADS) && !defined(CRYPTO_TDEBUG)
/*
@@ -284,17 +284,19 @@ int qtest_create_quic_connection(QUIC_TSERVER *qtserv, SSL *clientssl)
}
do {
- err = SSL_ERROR_WANT_WRITE;
- while (!clienterr && retc <= 0 && err == SSL_ERROR_WANT_WRITE) {
+ if (!clienterr && retc <= 0) {
+ int err;
+
retc = SSL_connect(clientssl);
- if (retc <= 0)
+ if (retc <= 0) {
err = SSL_get_error(clientssl, retc);
- }
- if (!clienterr && retc <= 0 && err != SSL_ERROR_WANT_READ) {
- TEST_info("SSL_connect() failed %d, %d", retc, err);
- TEST_openssl_errors();
- clienterr = 1;
+ if (err != SSL_ERROR_WANT_READ && err != SSL_ERROR_WANT_WRITE) {
+ TEST_info("SSL_connect() failed %d, %d", retc, err);
+ TEST_openssl_errors();
+ clienterr = 1;
+ }
+ }
}
/*