summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2013-03-11 13:23:10 -0400
committerNick Mathewson <nickm@torproject.org>2013-03-11 13:23:10 -0400
commitfdafe11a25ad3e7ca8893c8630f86973431217b9 (patch)
tree8f80919d27fabf12ca186f462afdf4aa57a6829a
parent0196647970a91d2bdb052f38b3749dd0e99348e4 (diff)
downloadtor-fdafe11a25ad3e7ca8893c8630f86973431217b9.tar.gz
tor-fdafe11a25ad3e7ca8893c8630f86973431217b9.zip
Give an #error when we want threads and OpenSSL has disabled threads
Fixes ticket 6673.
-rw-r--r--changes/bug66734
-rw-r--r--src/common/crypto.c6
2 files changed, 10 insertions, 0 deletions
diff --git a/changes/bug6673 b/changes/bug6673
new file mode 100644
index 0000000000..506b449892
--- /dev/null
+++ b/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.
diff --git a/src/common/crypto.c b/src/common/crypto.c
index 22d57c7c8a..3d8b1ba4ff 100644
--- a/src/common/crypto.c
+++ b/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)