📄 curl_version_info.3
字号:
.\" **************************************************************************.\" * _ _ ____ _.\" * Project ___| | | | _ \| |.\" * / __| | | | |_) | |.\" * | (__| |_| | _ <| |___.\" * \___|\___/|_| \_\_____|.\" *.\" * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel@haxx.se>, et al..\" *.\" * This software is licensed as described in the file COPYING, which.\" * you should have received as part of this distribution. The terms.\" * are also available at http://curl.haxx.se/docs/copyright.html..\" *.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell.\" * copies of the Software, and permit persons to whom the Software is.\" * furnished to do so, under the terms of the COPYING file..\" *.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY.\" * KIND, either express or implied..\" *.\" * $Id: curl_version_info.3,v 1.11 2006-11-02 21:56:43 bagder Exp $.\" **************************************************************************.\".TH curl_version_info 3 "2 Nov 2006" "libcurl 7.16.1" "libcurl Manual".SH NAMEcurl_version_info - returns run-time libcurl version info.SH SYNOPSIS.B #include <curl/curl.h>.sp.BI "curl_version_info_data *curl_version_info( CURLversion "type ");".ad.SH DESCRIPTIONReturns a pointer to a filled in struct with information about variousrun-time features in libcurl. \fItype\fP should be set to the version of thisfunctionality by the time you write your program. This way, libcurl willalways return a proper struct that your program understands, while programs inthe future might get an different struct. CURLVERSION_NOW will be the mostrecent one for the library you have installed: data = curl_version_info(CURLVERSION_NOW);Applications should use this information to judge if things are possible to door not, instead of using compile-time checks, as dynamic/DLL libraries can bechanged independent of applications.The curl_version_info_data struct looks like this.nftypedef struct { CURLversion age; /* see description below */ /* when 'age' is 0 or higher, the members below also exist: */ const char *version; /* human readable string */ unsigned int version_num; /* numeric representation */ const char *host; /* human readable string */ int features; /* bitmask, see below */ char *ssl_version; /* human readable string */ long ssl_version_num; /* not used, always zero */ const char *libz_version; /* human readable string */ const char **protocols; /* list of protocols */ /* when 'age' is 1 or higher, the members below also exist: */ const char *ares; /* human readable string */ int ares_num; /* number */ /* when 'age' is 2 or higher, the member below also exists: */ const char *libidn; /* human readable string */ /* when 'age' is 3 or higher, the members below also exist: */ int iconv_ver_num; /* '_libiconv_version' if iconv support enabled */ const char *libssh_version; /* human readable string */} curl_version_info_data;.fi\fIage\fP describes what age of this struct this is. The number depends on hownew libcurl you're using. You are however guaranteed to get a struct that youhave a matching struct for in the header, as you tell libcurl your "age" withthe input argument.\fIversion\fP is just an ascii string for the libcurl version.\fIversion_num\fP is a 24 bit number created like this: <8 bits major number>| <8 bits minor number> | <8 bits patch number>. Version 7.9.8 is thereforereturned as 0x070908.\fIhost\fP is an ascii string showing what host information that this libcurlwas built for. As discovered by a configure script or set by the buildenvironment.\fIfeatures\fP can have none, one or more bits set, and the currently definedbits are:.RS.IP CURL_VERSION_IPV6supports IPv6.IP CURL_VERSION_KERBEROS4supports kerberos4 (when using FTP).IP CURL_VERSION_SSLsupports SSL (HTTPS/FTPS) (Added in 7.10).IP CURL_VERSION_LIBZsupports HTTP deflate using libz (Added in 7.10).IP CURL_VERSION_NTLMsupports HTTP NTLM (added in 7.10.6).IP CURL_VERSION_GSSNEGOTIATEsupports HTTP GSS-Negotiate (added in 7.10.6).IP CURL_VERSION_DEBUGlibcurl was built with extra debug capabilities built-in. This is mainly ofinterest for libcurl hackers. (added in 7.10.6).IP CURL_VERSION_ASYNCHDNSlibcurl was built with support for asynchronous name lookups, which allowsmore exact timeouts (even on Windows) and less blocking when using the multiinterface. (added in 7.10.7).IP CURL_VERSION_SPNEGOlibcurl was built with support for SPNEGO authentication (Simple and ProtectedGSS-API Negotiation Mechanism, defined in RFC 2478.) (added in 7.10.8).IP CURL_VERSION_LARGEFILElibcurl was built with support for large files. (Added in 7.11.1).IP CURL_VERSION_IDNlibcurl was built with support for IDNA, domain names with internationalletters. (Added in 7.12.0).IP CURL_VERSION_SSPIlibcurl was built with support for SSPI. This is only available on Windows andmakes libcurl use Windows-provided functions for NTLM authentication. It alsoallows libcurl to use the current user and the current user's password withoutthe app having to pass them on. (Added in 7.13.2).IP CURL_VERSION_CONVlibcurl was built with support for character conversions, as provided by theCUURLOPT_CONV_* callbacks. (Added in 7.15.4).RE\fIssl_version\fP is an ascii string for the OpenSSL version used. If libcurlhas no SSL support, this is NULL.\fIssl_version_num\fP is the numerical OpenSSL version value as defined by theOpenSSL project. If libcurl has no SSL support, this is 0.\fIlibz_version\fP is an ascii string (there is no numerical version). Iflibcurl has no libz support, this is NULL.\fIprotocols\fP is a pointer to an array of char * pointers, containing thenames protocols that libcurl supports (using lowercase letters). The protocolnames are the same as would be used in URLs. The array is terminated by a NULLentry..SH RETURN VALUEA pointer to a curl_version_info_data struct..SH "SEE ALSO"\fIcurl_version(3)\fP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -