SHA256
1
0
forked from pool/qemu
qemu/0041-io-fix-check-for-handshake-completi.patch
2017-10-03 03:16:40 +00:00

37 lines
1.5 KiB
Diff

From 6b1a06c93a3ff4783c18148a6e538f89d6736e1a Mon Sep 17 00:00:00 2001
From: "Daniel P. Berrange" <berrange@redhat.com>
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 <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
(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 <brogers@suse.com>
---
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);