mirror of
https://github.com/curl/curl.git
synced 2024-11-27 05:50:21 +08:00
4c35a40858
into a counter, and thus you can now do multiple curl_global_init() and you are then supposed to do the same amount of calls to curl_global_cleanup(). Bryan also updated the docs accordingly.
60 lines
2.0 KiB
Groff
60 lines
2.0 KiB
Groff
.\" You can view this file with:
|
|
.\" nroff -man [file]
|
|
.\" $Id$
|
|
.\"
|
|
.TH curl_global_init 3 "11 May 2004" "libcurl 7.12" "libcurl Manual"
|
|
.SH NAME
|
|
curl_global_init - Global libcurl initialisation
|
|
.SH SYNOPSIS
|
|
.B #include <curl/curl.h>
|
|
.sp
|
|
.BI "CURLcode curl_global_init(long " flags ");"
|
|
.ad
|
|
.SH DESCRIPTION
|
|
This function sets up the program environment that libcurl needs. Think
|
|
of it as an extension of the library loader.
|
|
|
|
This function must be called at least once within a program (a program is
|
|
all the code that shares a memory space) before the program calls any other
|
|
function in libcurl. The environment it sets up is constant for the life
|
|
of the program and is the same for every program, so multiple calls have
|
|
the same effect as one call.
|
|
|
|
The flags option is a bit pattern that tells libcurl exactly what features to
|
|
init, as described below. Set the desired bits by ORing the values together.
|
|
In normal operation, you must specify CURL_GLOBAL_ALL. Don't use any other
|
|
value unless you are familiar with and mean to control internal operations
|
|
of libcurl.
|
|
|
|
\fBThis function is not thread safe.\fP You must not call it when any
|
|
other thread in the program (i.e. a thread sharing the same memory) is
|
|
running. This doesn't just mean no other thread that is using
|
|
libcurl. Because \fIcurl_global_init()\fP calls functions of other
|
|
libraries that are similarly thread unsafe, it could conflict with any
|
|
other thread that uses these other libraries.
|
|
|
|
See the description in \fBlibcurl\fP(3) of global environment
|
|
requirements for details of how to use this function.
|
|
|
|
.SH FLAGS
|
|
.TP 5
|
|
.B CURL_GLOBAL_ALL
|
|
Initialize everything possible. This sets all known bits.
|
|
.TP
|
|
.B CURL_GLOBAL_SSL
|
|
Initialize SSL
|
|
.TP
|
|
.B CURL_GLOBAL_WIN32
|
|
Initialize the Win32 socket libraries.
|
|
.TP
|
|
.B CURL_GLOBAL_NOTHING
|
|
Initialise nothing extra. This sets no bit.
|
|
.SH RETURN VALUE
|
|
If this function returns non-zero, something went wrong and you cannot use the
|
|
other curl functions.
|
|
.SH "SEE ALSO"
|
|
.BR curl_global_init_mem "(3), "
|
|
.BR curl_global_cleanup "(3), "
|
|
.BR curl_easy_init "(3) "
|
|
.BR libcurl "(3) "
|