]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Fix compilation with no-compression OpenSSL builds and forks
authorNick Mathewson <nickm@torproject.org>
Thu, 17 Jul 2014 09:25:56 +0000 (11:25 +0200)
committerNick Mathewson <nickm@torproject.org>
Thu, 17 Jul 2014 09:25:56 +0000 (11:25 +0200)
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.

changes/bug12602 [new file with mode: 0644]
src/common/tortls.c

diff --git a/changes/bug12602 b/changes/bug12602
new file mode 100644 (file)
index 0000000..29fa49a
--- /dev/null
@@ -0,0 +1,5 @@
+  o Minor bugfixes (portability):
+    - Compile correctly with builds and forks of OpenSSL (such as
+      LibreSSL) that disable compression. Fixes bug 12602; bugfix on
+      0.2.1.1-alpha. Patch from "dhill".
+
index 8f3f6a7130b2ab0bf0d0be87487471f5c34ba7d4..751856d973bdc31603751ac2d87fc26a1a387eb4 100644 (file)
@@ -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