Procházet zdrojové kódy

Give an #error when we want threads and OpenSSL has disabled threads

Fixes ticket 6673.
Nick Mathewson před 11 roky
rodič
revize
fdafe11a25
2 změnil soubory, kde provedl 10 přidání a 0 odebrání
  1. 4 0
      changes/bug6673
  2. 6 0
      src/common/crypto.c

+ 4 - 0
changes/bug6673

@@ -0,0 +1,4 @@
+  o Minor features (build):
+    - Detect and reject attempts to build Tor with threading support
+      when OpenSSL have been compiled with threading support disabled.
+      Fixes bug 6673.

+ 6 - 0
src/common/crypto.c

@@ -3000,6 +3000,12 @@ memwipe(void *mem, uint8_t byte, size_t sz)
 }
 
 #ifdef TOR_IS_MULTITHREADED
+
+#ifndef OPENSSL_THREADS
+#error OpenSSL has been built without thread support. Tor requires an \
+ OpenSSL library with thread support enabled.
+#endif
+
 /** Helper: OpenSSL uses this callback to manipulate mutexes. */
 static void
 openssl_locking_cb_(int mode, int n, const char *file, int line)