blob: ceb0ac2b0eb6c03da7c38d99cdcb0652d4be706a [file] [log] [blame]
9487f7f2011-08-03 07:05:30 -07001/*****************************************************************************
2 */
3
4#include <stdio.h>
5
6#include <curl/curl.h>
7#include <curl/types.h>
8#include <curl/easy.h>
9
10static size_t wrfu(void *ptr, size_t size, size_t nmemb, void *stream)
11{
12 return size * nmemb;
13}
14int main(int argc, char **argv)
15{
16 CURL *curl;
17 CURLcode res;
18
19 curl_global_init(CURL_GLOBAL_DEFAULT);
20
21 curl = curl_easy_init();
22 if(curl) {
23 curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/");
24
25 curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, wrfu);
26
27 curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
28 curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
29
30 curl_easy_setopt(curl, CURLOPT_VERBOSE, 0L);
31 curl_easy_setopt(curl, CURLOPT_CERTINFO, 1L);
32
33 res = curl_easy_perform(curl);
34
35 if(!res) {
36 struct curl_certinfo *ci = NULL;
37
38 res = curl_easy_getinfo(curl, CURLINFO_CERTINFO, &ci);
39
40 if(!res && ci) {
41 int i;
42 printf("%d certs!\n", ci->num_of_certs);
43
44 for(i=0; i<ci->num_of_certs; i++) {
45 struct curl_slist *slist;
46
47 for(slist = ci->certinfo[i]; slist; slist = slist->next)
48 printf("%s\n", slist->data);
49
50 }
51 }
52
53 }
54
55
56 curl_easy_cleanup(curl);
57 }
58
59 curl_global_cleanup();
60
61 return 0;
62}