certinfo.c
上传用户:coffee44
上传日期:2018-10-23
资源大小:12304k
文件大小:1k
源码类别:

TAPI编程

开发平台:

Visual C++

  1. /*****************************************************************************
  2.  */
  3. #include <stdio.h>
  4. #include <curl/curl.h>
  5. #include <curl/types.h>
  6. #include <curl/easy.h>
  7. static size_t wrfu(void *ptr,  size_t  size,  size_t  nmemb,  void *stream)
  8. {
  9.   return size * nmemb;
  10. }
  11. int main(int argc, char **argv)
  12. {
  13.   CURL *curl;
  14.   CURLcode res;
  15.   curl_global_init(CURL_GLOBAL_DEFAULT);
  16.   curl = curl_easy_init();
  17.   if(curl) {
  18.     curl_easy_setopt(curl, CURLOPT_URL, "https://www.networking4all.com/");
  19.     curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, wrfu);
  20.     curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
  21.     curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
  22.     curl_easy_setopt(curl, CURLOPT_VERBOSE, 0L);
  23.     curl_easy_setopt(curl, CURLOPT_CERTINFO, 1L);
  24.     res = curl_easy_perform(curl);
  25.     if(!res) {
  26.       struct curl_certinfo *ci = NULL;
  27.       res = curl_easy_getinfo(curl, CURLINFO_CERTINFO, &ci);
  28.       if(!res && ci) {
  29.         int i;
  30.         printf("%d certs!n", ci->num_of_certs);
  31.         for(i=0; i<ci->num_of_certs; i++) {
  32.           struct curl_slist *slist;
  33.           for(slist = ci->certinfo[i]; slist; slist = slist->next)
  34.             printf("%sn", slist->data);
  35.         }
  36.       }
  37.     }
  38.     curl_easy_cleanup(curl);
  39.   }
  40.   curl_global_cleanup();
  41.   return 0;
  42. }