summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools/qcryptographichash.cpp
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2019-12-13 21:19:26 +0100
committerLinus Jahn <lnj@kaidan.im>2020-07-31 15:05:24 +0200
commitc19bafc60c1c2e9a73cb3d212293462a1be4eb47 (patch)
tree089269cabcc8b75832a6ce3cff8ec5e4020b0de0 /src/corelib/tools/qcryptographichash.cpp
parent5d69aa3ee1214cf689e2357bff8688f2ff138471 (diff)
QtCore: Use system-wide libb2 if present
This adds the option to build Qt with libb2, which is especially recommended, if you care about the performance of the BLAKE2 hashing algorithms. The bundled version is the pure reference C implementation of BLAKE2, while libb2 has many additional hardware optimizations. However, the API of both is the same, so no changes to the code were necessary here. Change-Id: I3563982f4e07be300291fe103c38b16a404b3ebb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'src/corelib/tools/qcryptographichash.cpp')
-rw-r--r--src/corelib/tools/qcryptographichash.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/corelib/tools/qcryptographichash.cpp b/src/corelib/tools/qcryptographichash.cpp
index 9f98475dc0..d5a6c4e5a0 100644
--- a/src/corelib/tools/qcryptographichash.cpp
+++ b/src/corelib/tools/qcryptographichash.cpp
@@ -165,8 +165,12 @@ static inline int SHA384_512AddLength(SHA512Context *context, unsigned int lengt
return SHA384_512AddLengthM(context, length);
}
+#if QT_CONFIG(system_libb2)
+#include <blake2.h>
+#else
#include "../../3rdparty/blake2/src/blake2b-ref.c"
#include "../../3rdparty/blake2/src/blake2s-ref.c"
+#endif
#endif // QT_CRYPTOGRAPHICHASH_ONLY_SHA1
QT_BEGIN_NAMESPACE