diff options
-rw-r--r-- | test/quicapitest.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/test/quicapitest.c b/test/quicapitest.c index 487e6fa936..5f167aa382 100644 --- a/test/quicapitest.c +++ b/test/quicapitest.c @@ -65,13 +65,21 @@ static int test_quic_write_read(int idx) /* Check that sending and receiving app data is ok */ if (!TEST_true(SSL_write_ex(clientquic, msg, msglen, &numbytes))) goto end; - if (idx == 1 && !TEST_true(wait_until_sock_readable(ssock))) - goto end; - ossl_quic_tserver_tick(qtserv); - if (!TEST_true(ossl_quic_tserver_read(qtserv, buf, sizeof(buf), - &numbytes)) - || !TEST_mem_eq(buf, numbytes, msg, msglen)) - goto end; + if (idx == 1) { + do { + if (!TEST_true(wait_until_sock_readable(ssock))) + goto end; + + ossl_quic_tserver_tick(qtserv); + + if (!TEST_true(ossl_quic_tserver_read(qtserv, buf, sizeof(buf), + &numbytes))) + goto end; + } while (numbytes == 0); + + if (!TEST_mem_eq(buf, numbytes, msg, msglen)) + goto end; + } if (!TEST_true(ossl_quic_tserver_write(qtserv, (unsigned char *)msg, msglen, &numbytes))) |