aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/e2ee/qolmaccount.cpp3
-rw-r--r--lib/e2ee/qolmutility.cpp23
-rw-r--r--lib/e2ee/qolmutility.h4
3 files changed, 8 insertions, 22 deletions
diff --git a/lib/e2ee/qolmaccount.cpp b/lib/e2ee/qolmaccount.cpp
index ccb191f4..1b04dae7 100644
--- a/lib/e2ee/qolmaccount.cpp
+++ b/lib/e2ee/qolmaccount.cpp
@@ -264,6 +264,5 @@ bool Quotient::ed25519VerifySignature(const QString& signingKey,
QByteArray signingKeyBuf = signingKey.toUtf8();
QOlmUtility utility;
auto signatureBuf = signature.toUtf8();
- return utility.ed25519Verify(signingKeyBuf, canonicalJson, signatureBuf)
- .value_or(false);
+ return utility.ed25519Verify(signingKeyBuf, canonicalJson, signatureBuf);
}
diff --git a/lib/e2ee/qolmutility.cpp b/lib/e2ee/qolmutility.cpp
index 84559085..22f9ec0d 100644
--- a/lib/e2ee/qolmutility.cpp
+++ b/lib/e2ee/qolmutility.cpp
@@ -40,23 +40,10 @@ QString QOlmUtility::sha256Utf8Msg(const QString &message) const
return sha256Bytes(message.toUtf8());
}
-QOlmExpected<bool> QOlmUtility::ed25519Verify(const QByteArray& key,
- const QByteArray& message,
- const QByteArray& signature)
+bool QOlmUtility::ed25519Verify(const QByteArray& key, const QByteArray& message,
+ QByteArray signature)
{
- QByteArray signatureBuf(signature.length(), '0');
- std::copy(signature.begin(), signature.end(), signatureBuf.begin());
-
- const auto ret = olm_ed25519_verify(m_utility, key.data(), key.size(),
- message.data(), message.size(), (void *)signatureBuf.data(), signatureBuf.size());
-
- if (ret == olm_error()) {
- auto error = lastError(m_utility);
- if (error == QOlmError::BadMessageMac) {
- return false;
- }
- return error;
- }
-
- return !ret; // ret == 0 means success
+ return olm_ed25519_verify(m_utility, key.data(), key.size(), message.data(),
+ message.size(), signature.data(), signature.size())
+ == 0;
}
diff --git a/lib/e2ee/qolmutility.h b/lib/e2ee/qolmutility.h
index 5f6bcdc5..6c1c8624 100644
--- a/lib/e2ee/qolmutility.h
+++ b/lib/e2ee/qolmutility.h
@@ -29,8 +29,8 @@ public:
//! \param key QByteArray The public part of the ed25519 key that signed the message.
//! \param message QByteArray The message that was signed.
//! \param signature QByteArray The signature of the message.
- QOlmExpected<bool> ed25519Verify(const QByteArray &key,
- const QByteArray &message, const QByteArray &signature);
+ bool ed25519Verify(const QByteArray &key,
+ const QByteArray &message, QByteArray signature);
private:
OlmUtility *m_utility;