diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2021-07-06 08:12:00 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2021-07-07 23:49:26 +0000 |
commit | e9fffbaf81ec81685cb6a5d75844cd700183ab9e (patch) | |
tree | 4bb6021e7d7040a1d88efd53448271915414024c /src/plugins/tls/shared | |
parent | bd62dc13919556c6dc564df25cbf0ddf456c05e7 (diff) |
Use QCryptographicHash::hash() more widely
... instead of the "usual" rule of three: ctor, addData(), result().
Not only does it generate less code in the caller, it's now also
faster.
Change-Id: I67c7eeb01f527b90e80a08f60c1c7f2ec1e49dd4
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/plugins/tls/shared')
-rw-r--r-- | src/plugins/tls/shared/qsslsocket_qt.cpp | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/src/plugins/tls/shared/qsslsocket_qt.cpp b/src/plugins/tls/shared/qsslsocket_qt.cpp index 128459ea19..8f8a87138f 100644 --- a/src/plugins/tls/shared/qsslsocket_qt.cpp +++ b/src/plugins/tls/shared/qsslsocket_qt.cpp @@ -109,15 +109,11 @@ static QByteArray _q_PKCS12_keygen(char id, const QByteArray &salt, const QStrin QByteArray A; QByteArray B; B.resize(v); - QCryptographicHash hash(QCryptographicHash::Sha1); for (int i = 0; i < c; ++i) { // hash r iterations QByteArray Ai = D + I; - for (int j = 0; j < r; ++j) { - hash.reset(); - hash.addData(Ai); - Ai = hash.result(); - } + for (int j = 0; j < r; ++j) + Ai = QCryptographicHash::hash(Ai, QCryptographicHash::Sha1); for (int j = 0; j < v; ++j) B[j] = Ai[j % u]; |