summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/global.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/global.c b/src/global.c
index 1e6bf82f9..55b31196e 100644
--- a/src/global.c
+++ b/src/global.c
@@ -73,6 +73,13 @@ static void shutdown_ssl(void)
static void init_ssl(void)
{
#ifdef GIT_SSL
+ long ssl_opts = SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3;
+
+ /* Older OpenSSL and MacOS OpenSSL doesn't have this */
+#ifdef SSL_OP_NO_COMPRESSION
+ ssl_opts |= SSL_OP_NO_COMPRESSION;
+#endif
+
SSL_load_error_strings();
OpenSSL_add_ssl_algorithms();
/*
@@ -82,13 +89,7 @@ static void init_ssl(void)
* to speak TLSv1 to perform the encryption itself.
*/
git__ssl_ctx = SSL_CTX_new(SSLv23_method());
- SSL_CTX_set_options(git__ssl_ctx,
- SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3
- /* Older OpenSSL and MacOS OpenSSL doesn't have this */
-# ifdef SSL_OP_NO_COMPRESSION
- | SSL_OP_NO_COMPRESSION
-# endif
- );
+ SSL_CTX_set_options(git__ssl_ctx, ssl_opts);
SSL_CTX_set_mode(git__ssl_ctx, SSL_MODE_AUTO_RETRY);
SSL_CTX_set_verify(git__ssl_ctx, SSL_VERIFY_NONE, NULL);
if (!SSL_CTX_set_default_verify_paths(git__ssl_ctx)) {