From: Daniel Stenberg Date: Wed, 29 Jun 2016 13:57:44 +0000 (+0200) Subject: curl_global_init.3: expand on the SSL and WIN32 bits purpose X-Git-Tag: curl-7_50_0~20 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=bbd99a277bf05bd8c1f6fa682e20646f29ac1de4;p=curl curl_global_init.3: expand on the SSL and WIN32 bits purpose Reported-by: Richard Gray Bug: https://curl.haxx.se/mail/lib-2016-06/0136.html --- diff --git a/docs/libcurl/curl_global_init.3 b/docs/libcurl/curl_global_init.3 index d56df5b39..01e670793 100644 --- a/docs/libcurl/curl_global_init.3 +++ b/docs/libcurl/curl_global_init.3 @@ -64,10 +64,23 @@ Initialize everything possible. This sets all known bits except \fBCURL_GLOBAL_ACK_EINTR\fP. .TP .B CURL_GLOBAL_SSL -Initialize SSL +Initialize SSL. + +The implication here is that if this bit is not set, the initialization of the +SSL layer needs to be done by the application or at least outside of +libcurl. The exact procedure how to do SSL initializtion depends on the TLS +backend libcurl uses. + +Doing TLS based transfers without having the TLS layer initialized may lead to +unexpected behaviors. .TP .B CURL_GLOBAL_WIN32 Initialize the Win32 socket libraries. + +The implication here is that if this bit is not set, the initialization of +winsock has to be done by the application or you risk getting undefined +behaviors. This option exists for when the initialization is handled outside +of libcurl so there's no need for libcurl to do it again. .TP .B CURL_GLOBAL_NOTHING Initialise nothing extra. This sets no bit.