summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2017-09-21 23:30:48 +0200
committerDaniel Stenberg <daniel@haxx.se>2017-09-22 12:09:13 +0200
commitb8e0fe19ec3bd3b673a14043a4b5e656d9c26d06 (patch)
tree3b39a3325b56db905891fd624753484c802a18c0
parentee56fdb6910f6bf215eecede9e2e9bfc83cb5f29 (diff)
downloadcurl-b8e0fe19ec3bd3b673a14043a4b5e656d9c26d06.tar.gz
vtls: provide curl_global_sslset() even in non-SSL builds
... it just returns error: Bug: https://github.com/curl/curl/commit/1328f69d53f2f2e937696ea954c480412b018451#commitcomment-24470367 Reported-by: Marcel Raad Closes #1906
-rw-r--r--docs/libcurl/curl_global_sslset.37
-rw-r--r--include/curl/curl.h3
-rw-r--r--lib/vtls/vtls.c12
3 files changed, 18 insertions, 4 deletions
diff --git a/docs/libcurl/curl_global_sslset.3 b/docs/libcurl/curl_global_sslset.3
index b438f8ad0..cee84458f 100644
--- a/docs/libcurl/curl_global_sslset.3
+++ b/docs/libcurl/curl_global_sslset.3
@@ -85,10 +85,13 @@ support for choosing SSL backends at runtime.
If this function returns CURLSSLSET_OK, the backend was successfully selected.
If the chosen backend is unknown (or support for the chosed backend has not
-been compiled into libcurl), the function returns CURLSSLSET_UNKNOWN_BACKEND.
+been compiled into libcurl), the function returns \fICURLSSLSET_UNKNOWN_BACKEND\fP.
If the backend had been configured previously, or if \fIcurl_global_init(3)\fP
-has already been called, the function returns CURLSSLSET_TOO_LATE.
+has already been called, the function returns \fICURLSSLSET_TOO_LATE\fP.
+
+If this libcurl was built completely without SSL support, with no backends at
+all, this function returns \fICURLSSLSET_NO_BACKENDS\fP.
.SH "SEE ALSO"
.BR curl_global_init "(3), "
.BR libcurl "(3) "
diff --git a/include/curl/curl.h b/include/curl/curl.h
index 8b153fef9..501e3d19b 100644
--- a/include/curl/curl.h
+++ b/include/curl/curl.h
@@ -2370,7 +2370,8 @@ typedef struct {
typedef enum {
CURLSSLSET_OK = 0,
CURLSSLSET_UNKNOWN_BACKEND,
- CURLSSLSET_TOO_LATE
+ CURLSSLSET_TOO_LATE,
+ CURLSSLSET_NO_BACKENDS /* libcurl was built without any SSL support */
} CURLsslset;
CURL_EXTERN CURLsslset curl_global_sslset(curl_sslbackend id, const char *name,
diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c
index 6e230ee22..56eb7ebf1 100644
--- a/lib/vtls/vtls.c
+++ b/lib/vtls/vtls.c
@@ -1296,4 +1296,14 @@ CURLsslset curl_global_sslset(curl_sslbackend id, const char *name,
return CURLSSLSET_UNKNOWN_BACKEND;
}
-#endif /* USE_SSL */
+#else /* USE_SSL */
+CURLsslset curl_global_sslset(curl_sslbackend id, const char *name,
+ const curl_ssl_backend ***avail)
+{
+ (void)id;
+ (void)name;
+ (void)avail;
+ return CURLSSLSET_NO_BACKENDS;
+}
+
+#endif /* !USE_SSL */