CURLpp: TLS Handshake error
Pregunta
Esta pregunta es similar a otro uno, en relación con pycurl
Tengo el siguiente mensaje de error cuando envía una solicitud POST a una URL segura, utilizando CURLpp https://stackoverflow.com/questions/1942719/pycurl-tls-handshake-error
Ok, por lo que de acuerdo a la respuesta a la pregunta anterior , que debe utilizar con libcurl openSSL. Si me quedo curl -v
, me sale esto:
curl 7.19.7 (i486-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15
Protocols: tftp ftp telnet dict ldap ldaps http file https ftps
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz
Así que debería usar openSSL, y no veo GnuTLS. Así que si intento enviar la misma solicitud a través de rizo directamente con la línea de comandos, que funciona bien, y ver en la salida del comando el resultado que estoy esperando.
Así que resulta cuando cambio a CURLpp, utiliza GnuTLS, en lugar de OpenSSL. ¿Hay algo que tengo que configure, con el fin de especificar que quiero openSSL con CURLpp?
Solución
cURLpp es sólo un envoltorio sobre libcurl, no dicta que SSL utiliza la aplicación libcurl.
No estoy muy seguro de cómo has llegado a la conclusión de when I switch to CURLpp, it uses gnuTLS, instead of openSSL
pero sospecho que tiene instalado libcurl.so múltiple, los usos uno rizo y otra que su aplicación está utilizando (a través de cURLpp).
Como nota al margen, el TLS fatal alert ... received
(mencionado en la pregunta vinculada) fue probablemente el resultado de una mala configuración en el lado del servidor (nombre del servidor no válido extensión TLS, el fracaso para negociar sistemas de cifrado, etc.).