summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2016-12-05 08:04:04 -0500
committerNick Mathewson <nickm@torproject.org>2016-12-05 08:04:04 -0500
commit5b336f2e0b792b2927b1d3bdc521d81221c5e157 (patch)
treef9d89bd64889f4c798791f0f1159aafdb374ddbb
parenteede3a171a2b07b49270c1494576c2823ea8b6e2 (diff)
parent2a365413ebc7ab0055bd4c2fc11697666fc90f7b (diff)
downloadtor-5b336f2e0b792b2927b1d3bdc521d81221c5e157.tar.gz
tor-5b336f2e0b792b2927b1d3bdc521d81221c5e157.zip
Merge branch 'maint-0.2.8' into release-0.2.8
-rw-r--r--changes/bug205883
-rw-r--r--src/common/aes.c9
2 files changed, 11 insertions, 1 deletions
diff --git a/changes/bug20588 b/changes/bug20588
new file mode 100644
index 0000000000..be199b2de0
--- /dev/null
+++ b/changes/bug20588
@@ -0,0 +1,3 @@
+ o Minor bugfixes (portability):
+ - Fix compilation with OpenSSL 1.1 and less commonly-used
+ CPU architectures. Closes ticket 20588.
diff --git a/src/common/aes.c b/src/common/aes.c
index 15970a73f0..8edfc5d334 100644
--- a/src/common/aes.c
+++ b/src/common/aes.c
@@ -73,7 +73,14 @@
* gives us, and the best possible counter-mode implementation, and combine
* them.
*/
-#if OPENSSL_VERSION_NUMBER >= OPENSSL_V_NOPATCH(1,0,1) && \
+#if OPENSSL_VERSION_NUMBER >= OPENSSL_V_NOPATCH(1,1,0)
+
+/* With newer OpenSSL versions, the older fallback modes don't compile. So
+ * don't use them, even if we lack specific acceleration. */
+
+#define USE_EVP_AES_CTR
+
+#elif OPENSSL_VERSION_NUMBER >= OPENSSL_V_NOPATCH(1,0,1) && \
(defined(__i386) || defined(__i386__) || defined(_M_IX86) || \
defined(__x86_64) || defined(__x86_64__) || \
defined(_M_AMD64) || defined(_M_X64) || defined(__INTEL__)) \