summaryrefslogtreecommitdiff
path: root/src/common/tortls.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2014-07-17 11:25:56 +0200
committerNick Mathewson <nickm@torproject.org>2014-07-17 11:25:56 +0200
commit66798dfdc069ffc2ce1a9cb84529d2015dd3cd66 (patch)
tree527b2c0f4dbe2e0ebd32db5100c8073723c607b0 /src/common/tortls.c
parentf5ce580babc5ca8466da02c53669a58bde8f5445 (diff)
downloadtor-66798dfdc069ffc2ce1a9cb84529d2015dd3cd66.tar.gz
tor-66798dfdc069ffc2ce1a9cb84529d2015dd3cd66.zip
Fix compilation with no-compression OpenSSL builds and forks
Found because LibreSSL has OPENSSL_NO_COMP always-on, but this conflicts with the way that _we_ turn off compression. Patch from dhill, who attributes it to "OpenBSD". Fixes bug 12602; bugfix on 0.2.1.1-alpha, which introduced this turn-compression-off code.
Diffstat (limited to 'src/common/tortls.c')
-rw-r--r--src/common/tortls.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/common/tortls.c b/src/common/tortls.c
index 8f3f6a7130..751856d973 100644
--- a/src/common/tortls.c
+++ b/src/common/tortls.c
@@ -1345,10 +1345,12 @@ tor_tls_context_new(crypto_pk_t *identity, unsigned int key_lifetime,
SSL_CTX_set_options(result->ctx,
SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION);
}
+#ifndef OPENSSL_NO_COMP
/* Don't actually allow compression; it uses ram and time, but the data
* we transmit is all encrypted anyway. */
if (result->ctx->comp_methods)
result->ctx->comp_methods = NULL;
+#endif
#ifdef SSL_MODE_RELEASE_BUFFERS
SSL_CTX_set_mode(result->ctx, SSL_MODE_RELEASE_BUFFERS);
#endif