Files
ports/security/distcache/files/patch-ssl__swamp__swamp.c
Alexey Dokuchaev 475c4b91c0 - Unbreak the build against contemporary versions of OpenSSL
- Hoop up a simple test to our framework so we know it works

PR:	236820
2020-07-07 10:07:49 +00:00

46 lines
1.5 KiB
C

--- ssl/swamp/swamp.c.orig 2004-04-30 12:58:00 UTC
+++ ssl/swamp/swamp.c
@@ -105,10 +105,14 @@ static SSL_CTX *ossl_setup_ssl_ctx(const swamp_config
switch(config->sslmeth) {
case SWAMP_SSLMETH_NORMAL:
sslmethod = SSLv23_client_method(); break;
+#if OPENSSL_VERSION_NUMBER < 0x10100000L && !defined(OPENSSL_NO_SSL2)
case SWAMP_SSLMETH_SSLv2:
sslmethod = SSLv2_client_method(); break;
+#endif
+#ifndef OPENSSL_NO_SSL3_METHOD
case SWAMP_SSLMETH_SSLv3:
sslmethod = SSLv3_client_method(); break;
+#endif
case SWAMP_SSLMETH_TLSv1:
sslmethod = TLSv1_client_method(); break;
default:
@@ -151,7 +155,7 @@ static SSL_CTX *ossl_setup_ssl_ctx(const swamp_config
fp = NULL;
}
if(x509) {
- if(!X509_STORE_add_cert(ctx->cert_store, x509))
+ if(!X509_STORE_add_cert(SSL_CTX_get_cert_store(ctx), x509))
return NULL;
/* Reference counts */
X509_free(x509);
@@ -444,13 +448,16 @@ possible_reconnect:
}
}
if(ctx->config->output_sessions) {
+ const unsigned char *session_id;
+ unsigned int session_id_length;
temp_session = SSL_get1_session(item->ssl);
/* debug some stuff :-) */
SYS_fprintf(SYS_stderr, "session-id[conn:%i]:", loop);
- for(tmp = 0; tmp < (int)temp_session->session_id_length;
+ session_id = SSL_SESSION_get_id(temp_session, &session_id_length);
+ for(tmp = 0; tmp < session_id_length;
tmp++)
SYS_fprintf(SYS_stderr, "%02X",
- temp_session->session_id[tmp]);
+ session_id[tmp]);
SYS_fprintf(SYS_stderr, "\n");
SSL_SESSION_free(temp_session);
}