libvncclient/tls_openssl: support openssl 1.1.x

Treat openSSL data structures as opaque to achieve compatibility with
openSSL 1.1.x. While at it, fix order of cleaning up in
open_ssl_connection().

Signed-off-by: Bert van Hall <bert.vanhall@avionic-design.de>
pull/3/head
Bert van Hall 7 years ago
parent 13d8a6c9c2
commit cca9892deb
No known key found for this signature in database
GPG Key ID: F0E5DB1B35ED7C63

@ -189,7 +189,7 @@ ssl_verify (int ok, X509_STORE_CTX *ctx)
ssl = X509_STORE_CTX_get_ex_data (ctx, SSL_get_ex_data_X509_STORE_CTX_idx ()); ssl = X509_STORE_CTX_get_ex_data (ctx, SSL_get_ex_data_X509_STORE_CTX_idx ());
client = SSL_CTX_get_app_data (ssl->ctx); client = SSL_CTX_get_app_data (SSL_get_SSL_CTX(ssl));
cert = X509_STORE_CTX_get_current_cert (ctx); cert = X509_STORE_CTX_get_current_cert (ctx);
err = X509_STORE_CTX_get_error (ctx); err = X509_STORE_CTX_get_error (ctx);
@ -287,11 +287,10 @@ open_ssl_connection (rfbClient *client, int sockfd, rfbBool anonTLS)
{ {
if (wait_for_data(ssl, n, 1) != 1) if (wait_for_data(ssl, n, 1) != 1)
{ {
finished = 1; finished = 1;
if (ssl->ctx) SSL_shutdown(ssl);
SSL_CTX_free (ssl->ctx);
SSL_free(ssl); SSL_free(ssl);
SSL_shutdown (ssl); SSL_CTX_free(ssl_ctx);
return NULL; return NULL;
} }

Loading…
Cancel
Save