Update of /cvsroot/simplemail/simplemail
In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv24336
Modified Files:
tcp.c
Log Message:
Also display the SSL error message of the last verification failure..
Index: tcp.c
===================================================================
RCS file: /cvsroot/simplemail/simplemail/tcp.c,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -d -r1.59 -r1.60
--- tcp.c 23 Feb 2014 13:23:04 -0000 1.59
+++ tcp.c 23 Feb 2014 13:23:24 -0000 1.60
@@ -297,6 +297,7 @@
unsigned int sha1_size;
unsigned char sha1[EVP_MAX_MD_SIZE];
char sha1_ascii[EVP_MAX_MD_SIZE*3+1];
+ long verify_results;
X509_digest(server_cert, EVP_sha1(), sha1, &sha1_size);
@@ -304,8 +305,12 @@
sm_snprintf(&sha1_ascii[i*3], 4, "%02X ", sha1[i]);
sha1_ascii[sha1_size*3] = 0;
+ verify_results = SSL_get_verify_result(conn->ssl);
+
/* TODO: Use callbacks for proper decoupling */
- rc = thread_call_function_sync(thread_get_main(), sm_request, 4, NULL, _("Certificate verification error\n\nSHA1: %s"), _("Connect anyway|Abort"), sha1_ascii);
+ rc = thread_call_function_sync(thread_get_main(), sm_request, 5,
+ NULL, _("Failed to verify server certificate:\n%s\n\nSHA1: %s"), _("Connect anyway|Abort"),
+ X509_verify_cert_error_string(verify_results), sha1_ascii);
/* Add some checks here */
X509_free(server_cert);
|