summaryrefslogtreecommitdiff
path: root/user/glib-networking/glib-networking-2.60-new-gnutls-cert-error-fix.patch
blob: ab04dae3ea008c32013111bd65b61767308b7023 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
From 1ce6b40da8ecbf997c5522a592a122e805aa81c4 Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@igalia.com>
Date: Wed, 3 Apr 2019 18:00:55 -0500
Subject: [PATCH] gnutls: Handle new GNUTLS_E_CERTIFICATE_REQUIRED

This new error in GnuTLS 3.6.7 should correspond to
G_TLS_ERROR_CERTIFICATE_REQUIRED. This fixes our client auth tests when
run with GnuTLS 3.6.7.

Fixes #70
---
 tls/gnutls/gtlsconnection-gnutls.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tls/gnutls/gtlsconnection-gnutls.c b/tls/gnutls/gtlsconnection-gnutls.c
index 27bbbcd..774d668 100644
--- a/tls/gnutls/gtlsconnection-gnutls.c
+++ b/tls/gnutls/gtlsconnection-gnutls.c
@@ -1062,7 +1062,11 @@ end_gnutls_io (GTlsConnectionGnutls  *gnutls,
       else
         return 0;
     }
-  else if (status == GNUTLS_E_NO_CERTIFICATE_FOUND)
+  else if (status == GNUTLS_E_NO_CERTIFICATE_FOUND
+#ifdef GNUTLS_E_CERTIFICATE_REQUIRED
+           || status == GNUTLS_E_CERTIFICATE_REQUIRED /* Added in GnuTLS 3.6.7 */
+#endif
+          )
     {
       g_set_error_literal (error, G_TLS_ERROR, G_TLS_ERROR_CERTIFICATE_REQUIRED,
                            _("TLS connection peer did not send a certificate"));