MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


libcurl Manual                               curlversioninfo(3)



NAME
     curlversioninfo - returns run-time libcurl version info

SYNOPSIS
     #include 

     curlversioninfodata    *curlversioninfo(    CURLversion
     type);

DESCRIPTION
     Returns a pointer to a filled  in  struct  with  information
     about  various  run-time features in libcurl. type should be
     set to the version of this functionality  by  the  time  you
     write  your  program. This way, libcurl will always return a
     proper struct that your program understands, while  programs
     in  the future might get a different struct. CURLVERSIONOW
     will be the  most  recent  one  for  the  library  you  have
     installed:

             data = curlversioninfo(CURLVERSIONOW);

     Applications should use this information to judge if  things
     are  possible  to  do  or not, instead of using compile-time
     checks, as dynamic/DL libraries can be changed  independent
     of applications.

     The curlversioninfodata struct looks like this

     typedef 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 versionnum; /* numeric representation */
       const char *host;         /* human readable string */
       int features;             /* bitmask, see below */
       char *sslversion;        /* human readable string */
       long sslversionnum;     /* not used, always zero */
       const char *libzversion; /* 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 aresnum;             /* 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 iconvvernum;       /* 'libiconvversion' if iconv support enabled */

       const char *libsshversion; /* human readable string */



libcurl 7.16.1       Last change: 2 Nov 2006                    1






libcurl Manual                               curlversioninfo(3)



     } curlversioninfodata;

     age describes what the age of this  struct  is.  The  number
     depends on how new the libcurl you're using is. You are how-
     ever guaranteed to get a struct that  you  have  a  matching
     struct  for  in  the  header, as you tell libcurl your "age"
     with the input argument.

     version is just an ascii string for the libcurl version.

     versionnum 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 therefore returned as 0x070908.

     host is an ascii string showing what host  information  that
     this  libcurl  was  built  for. As discovered by a configure
     script or set by the build environment.

     features can have none,  one  or  more  bits  set,  and  the
     currently defined bits are:

          CURLVERSIONIPV6
               supports IPv6

          CURLVERSIONKERBEROS4
               supports kerberos4 (when using FTP)

          CURLVERSIONSL
               supports SL (HTPS/FTPS) (Added in 7.10)

          CURLVERSIONLIBZ
               supports HTP deflate using libz (Added in 7.10)

          CURLVERSIONTLM
               supports HTP NTLM (added in 7.10.6)

          CURLVERSIONGSNEGOTIATE
               supports HTP GS-Negotiate (added in 7.10.6)

          CURLVERSIONDEBUG
               libcurl was built with  extra  debug  capabilities
               built-in.  This  is mainly of interest for libcurl
               hackers. (added in 7.10.6)

          CURLVERSIONASYNCHDNS
               libcurl was built with  support  for  asynchronous
               name  lookups,  which  allows  more exact timeouts
               (even on Windows) and less blocking when using the
               multi interface. (added in 7.10.7)

          CURLVERSIONSPNEGO
               libcurl  was  built  with   support   for   SPNEGO



libcurl 7.16.1       Last change: 2 Nov 2006                    2






libcurl Manual                               curlversioninfo(3)



               authentication (Simple and Protected GS-API Nego-
               tiation Mechanism, defined in RFC 2478.) (added in
               7.10.8)

          CURLVERSIONLARGEFILE
               libcurl was built with support  for  large  files.
               (Added in 7.11.1)

          CURLVERSIONIDN
               libcurl was built with support  for  IDNA,  domain
               names   with   international  letters.  (Added  in
               7.12.0)

          CURLVERSIONSPI
               libcurl was built with support for SPI.  This  is
               only  available  on  Windows and makes libcurl use
               Windows-provided functions  for  NTLM  authentica-
               tion.  It  also  allows libcurl to use the current
               user and the current user's password  without  the
               app having to pass them on. (Added in 7.13.2)

          CURLVERSIONCONV
               libcurl  was  built  with  support  for  character
               conversions,  as  provided  by  the CURLOPTCONV*
               callbacks. (Added in 7.15.4)
     sslversion is an ASCI string for the OpenSL version used.
     If libcurl has no SL support, this is NUL.

     sslversionnum is the numerical OpenSL  version  value  as
     defined  by  the OpenSL project. If libcurl has no SL sup-
     port, this is 0.

     libzversion is an ASCI string (there is no numerical  ver-
     sion). If libcurl has no libz support, this is NUL.

     protocols is a pointer to an array of char * pointers,  con-
     taining  the  names  protocols  that libcurl supports (using
     lowercase letters). The protocol names are the same as would
     be used in URLs. The array is terminated by a NUL entry.

RETURN VALUE
     A pointer to a curlversioninfodata struct.

SEE ALSO
     curlversion(3)


ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:





libcurl 7.16.1       Last change: 2 Nov 2006                    3






libcurl Manual                               curlversioninfo(3)



     
       ATRIBUTE TYPE     ATRIBUTE VALUE
    
     Availability         SUNWcurl       
    
     Interface Stability  Uncommitted    
    

NOTES
     Source for C-URL is available on http:/opensolaris.org.













































libcurl 7.16.1       Last change: 2 Nov 2006                    4



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™