|
@@ -0,0 +1,41 @@
|
|
1
|
+From 2c30fa7eb71b24f05b55ff03d6c81fc8572a6f4d Mon Sep 17 00:00:00 2001
|
|
2
|
+From: Daniel Golle <daniel@makrotopia.org>
|
|
3
|
+Date: Mon, 29 Jun 2015 18:36:01 +0200
|
|
4
|
+Subject: [PATCH] gnutls: use default system trust storage if no other CA is
|
|
5
|
+ set
|
|
6
|
+
|
|
7
|
+Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|
8
|
+---
|
|
9
|
+ lib/vtls/gtls.c | 21 +++++++++++++++++++++
|
|
10
|
+ 1 file changed, 21 insertions(+)
|
|
11
|
+
|
|
12
|
+--- a/lib/vtls/gtls.c
|
|
13
|
++++ b/lib/vtls/gtls.c
|
|
14
|
+@@ -420,6 +420,27 @@ gtls_connect_step1(struct connectdata *c
|
|
15
|
+ return CURLE_SSL_CONNECT_ERROR;
|
|
16
|
+ }
|
|
17
|
+
|
|
18
|
++ if(
|
|
19
|
++#ifdef USE_TLS_SRP
|
|
20
|
++ data->set.ssl.authtype != CURL_TLSAUTH_SRP &&
|
|
21
|
++#endif
|
|
22
|
++#ifdef HAS_CAPATH
|
|
23
|
++ !data->set.ssl.CApath &&
|
|
24
|
++#endif
|
|
25
|
++ !data->set.ssl.CAfile) {
|
|
26
|
++ /* add default system trust on supported systems */
|
|
27
|
++ rc = gnutls_certificate_set_x509_system_trust(conn->ssl[sockindex].cred);
|
|
28
|
++
|
|
29
|
++ if(rc < 0) {
|
|
30
|
++ infof(data, "error importing system trust storage (%s)\n",
|
|
31
|
++ gnutls_strerror(rc));
|
|
32
|
++ if(data->set.ssl.verifypeer)
|
|
33
|
++ return CURLE_SSL_CACERT;
|
|
34
|
++ }
|
|
35
|
++ else
|
|
36
|
++ infof(data, "found %d certificates in system trust storage\n", rc);
|
|
37
|
++ }
|
|
38
|
++
|
|
39
|
+ #ifdef USE_TLS_SRP
|
|
40
|
+ if(data->set.ssl.authtype == CURL_TLSAUTH_SRP) {
|
|
41
|
+ infof(data, "Using TLS-SRP username: %s\n", data->set.ssl.username);
|