libCurl を使用して、リモート サーバーからファイルをダウンロードしています。そのリモート サーバーには、クライアント証明書が必要です。私が試したオプションは次のとおりです。
curl_easy_setopt(pCurl, CURLOPT_URL, url);
curl_easy_setopt(pCurl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_easy_setopt(pCurl, CURLOPT_SSL_VERIFYHOST, 2);
curl_easy_setopt(pCurl, CURLOPT_VERBOSE, 1);
curl_easy_setopt(pCurl, CURLOPT_CERTINFO, 1L);
curl_easy_setopt(pCurl, CURLOPT_SSL_VERIFYPEER, 1);
//the following two lines specify the path to my valid client certificate
curl_easy_setopt(pCurl, CURLOPT_CAINFO, "c:\\Delta.p12");
curl_easy_setopt(pCurl, CURLOPT_CAPATH, "c:\\Delta.p12");
Https 要求を行うと、必要な資格情報が指定されていないことを示す 403: Forbidden エラーが表示されます。この証明書はブラウザ経由で機能するため、証明書が有効であることはわかっています。
この作業を行うための助けをいただければ幸いです。ありがとう!