Blob Blame History Raw
From 3433180ec89195aef3c434d8c8d44d55b0bd6466 Mon Sep 17 00:00:00 2001
From: "Daniel P. Berrange" <berrange@redhat.com>
Date: Tue, 4 Aug 2015 12:26:15 +0100
Subject: [PATCH] tests: extend workaround for gnutls private key loading
 failure

In gnutls 3.4.3 there is a regression in the loading of private
keys via gnutls_x509_privkey_import. We already have a workaround
to deal with failures on older gnutls, but the error code that
the new gnutls returns is different. Extend the workaround so that
is checks for GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE too.

See also gnutls https://bugzilla.redhat.com/show_bug.cgi?id=1250020

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
---
 tests/virnettlshelpers.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/virnettlshelpers.c b/tests/virnettlshelpers.c
index 6e667d1..531d0b9 100644
--- a/tests/virnettlshelpers.c
+++ b/tests/virnettlshelpers.c
@@ -84,7 +84,8 @@ static gnutls_x509_privkey_t testTLSLoadKey(void)
 
     if ((err = gnutls_x509_privkey_import(key, &data,
                                           GNUTLS_X509_FMT_PEM)) < 0) {
-        if (err != GNUTLS_E_BASE64_UNEXPECTED_HEADER_ERROR) {
+        if (err != GNUTLS_E_BASE64_UNEXPECTED_HEADER_ERROR &&
+            err != GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) {
             VIR_WARN("Failed to import key %s", gnutls_strerror(err));
             abort();
         }
-- 
2.4.3