libgcalを Windowsで使ったり相当品を作ったりしたとき、https通信を行う必要があるのだけど Windows版の libcurlには必要な証明書が含まれていないために CURLE_SSL_CACERT(=60)で失敗してしまう。
当初は「curl_easy_setopt(m_Curl,CURLOPT_SSL_VERIFYPEER,FALSE);」なんて事をやって逃げていた。
やはりそういう逃げは駄目だろうと正攻法を探した。
すぐに見つかるのは「curl-ca-bundle.crt」をカレントディレクトリの類におくという方法だけど、これは curl.exeに証明書ファイルを指定する方法なので今回は使えない。
正解は curl_easy_setopt(m_Curl,CURLOPT_CAINFO,”c:\\cacert.pem”);ってな感じ。
ただ、cacert.pemをどう調達するのかがよくわからない。
「http://curl.haxx.se/ca/cacert.pemをダウンロード」なんてお手軽な方法で本当に良いのか???
Slackwareに含まれている「/usr/share/curl/ca-bundle.crt*1 」でも大丈夫*2 で、こいつなら信用できるかなぁ?