J'ai une application de ligne de commande qui utilise les dll libcurl-4
, et actuellement je peux tout faire fonctionner en plaçant mes certificats CA dans mon répertoire de travail et en passant leurs noms aux CUTLOPT_CAINFO
et CURLOPT_SSLCERT
avec le préfixe ./
à leurs noms. Mais, sur quoi je travaille, cURL n'utilise pas ce qui est dans le répertoire courant et utilise plutôt les certs qui sont stockés dans le système de mon ordinateur. A la lecture de la documentation de cURL, je comprends que si vous le configurez sans donner de valeur par défaut ca-bundle
ou ca-path
qui ti "détectera automatiquement un réglage".Configurer cURL pour utiliser le magasin de certificats système par défaut
Et que le CURLOPT_CAINFO
est par défaut réglé sur « système intégré spécifique »
Alors quelqu'un peut me aider à comprendre: si rien n'est spécifié
au moment de la configuration avec boucle, est le chemin par défaut, il détecte le magasin du système? Ou curl utilise-t-il son propre chemin pour un système de stockage?
quelle valeur donnez-vous à
curl_easy_setopt(m_curlHandle, CURLOPT_CAINFO, *<value>)
pour queCURLOPT_CAINFO
utilise sa valeur par défaut?
Toute aide est appréciée car j'apprends encore comment tout cela fonctionne.
Merci. OpenSSL ne prend pas en charge l'utilisation du "magasin de certificats CA" que Windows possède seul.
Oui, merci pour votre aide. Plus tard, hier, j'ai découvert qu'OpenSSL ne supporte pas le système de stockage et a depuis construit cURL pour utiliser winssl. Cependant, j'ai maintenant des problèmes avec la négociation SSL/TLS et la réception de l'erreur http 35. Après avoir lu le fichier schannel.c, je suis tombé sur ce qui me semble être le problème avec schannel ne voulant pas envoyer le certificat client . (voir ligne 495) –