From 0fa69eb51de581673ab4dd105be56fb59ef5556c Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Tue, 29 Aug 2017 17:04:52 +0100 Subject: [PATCH] io: fix check for handshake completion in TLS test The TLS I/O channel test had mistakenly used && instead of || when checking for handshake completion. As a result it could terminate the handshake process before it had actually completed. This was harmless before but changes in GNUTLS 3.6.0 exposed this bug and caused the test suite to fail. Reviewed-by: Eric Blake Signed-off-by: Daniel P. Berrange (cherry picked from commit 689ed13e73bdb5a5ca3366524475e3065fae854a) [BR: We're getting failures in qemu-testsuite. This fix either resolves that failure, or has been identified as being a qemu-testsuite failure fix in related code] Signed-off-by: Bruce Rogers --- tests/test-io-channel-tls.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test-io-channel-tls.c b/tests/test-io-channel-tls.c index ff96877323..a210d01ba5 100644 --- a/tests/test-io-channel-tls.c +++ b/tests/test-io-channel-tls.c @@ -218,7 +218,7 @@ static void test_io_channel_tls(const void *opaque) mainloop = g_main_context_default(); do { g_main_context_iteration(mainloop, TRUE); - } while (!clientHandshake.finished && + } while (!clientHandshake.finished || !serverHandshake.finished); g_assert(clientHandshake.failed == data->expectClientFail);