aboutsummaryrefslogtreecommitdiff
path: root/src/base
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2022-09-16 19:50:14 +0200
committerLinus Jahn <lnj@kaidan.im>2022-09-24 18:11:58 +0200
commitb71a66f3a7e07427378a23eb42291ed3758e08b2 (patch)
treecf9597958a2112d9d83d1cc9236dfb4fccb816f4 /src/base
parenteb63b18dcbb2ccdf811461a42f120e5d0ab82e88 (diff)
downloadqxmpp-b71a66f3a7e07427378a23eb42291ed3758e08b2.tar.gz
EncryptedFileSource: Move Cipher enum into QXmppGlobal
Diffstat (limited to 'src/base')
-rw-r--r--src/base/QXmppEncryptedFileSource.cpp23
-rw-r--r--src/base/QXmppEncryptedFileSource.h10
-rw-r--r--src/base/QXmppGlobal.h11
3 files changed, 25 insertions, 19 deletions
diff --git a/src/base/QXmppEncryptedFileSource.cpp b/src/base/QXmppEncryptedFileSource.cpp
index 37170492..3b718cda 100644
--- a/src/base/QXmppEncryptedFileSource.cpp
+++ b/src/base/QXmppEncryptedFileSource.cpp
@@ -13,12 +13,13 @@
#include <QDomElement>
#include <QXmlStreamWriter>
-/// \cond
+using namespace QXmpp;
+/// \cond
class QXmppEncryptedFileSourcePrivate : public QSharedData
{
public:
- QXmppEncryptedFileSource::Cipher cipher = QXmppEncryptedFileSource::Aes128GcmNopadding;
+ Cipher cipher = Aes128GcmNoPad;
QByteArray key;
QByteArray iv;
QVector<QXmppHash> hashes;
@@ -27,27 +28,27 @@ public:
QXMPP_PRIVATE_DEFINE_RULE_OF_SIX(QXmppEncryptedFileSource)
-static QString cipherToString(QXmppEncryptedFileSource::Cipher cipher)
+static QString cipherToString(Cipher cipher)
{
switch (cipher) {
- case QXmppEncryptedFileSource::Aes128GcmNopadding:
+ case Aes128GcmNoPad:
return "urn:xmpp:ciphers:aes-128-gcm-nopadding:0";
- case QXmppEncryptedFileSource::Aes256GcmNopadding:
+ case Aes256GcmNoPad:
return "urn:xmpp:ciphers:aes-256-gcm-nopadding:0";
- case QXmppEncryptedFileSource::Aes256CbcPkcs7:
+ case Aes256CbcPkcs7:
return "urn:xmpp:ciphers:aes-256-cbc-pkcs7:0";
}
Q_UNREACHABLE();
}
-static std::optional<QXmppEncryptedFileSource::Cipher> cipherFromString(const QString &cipher)
+static std::optional<Cipher> cipherFromString(const QString &cipher)
{
if (cipher == "urn:xmpp:ciphers:aes-128-gcm-nopadding:0") {
- return QXmppEncryptedFileSource::Aes128GcmNopadding;
+ return Aes128GcmNoPad;
} else if (cipher == "urn:xmpp:ciphers:aes-256-gcm-nopadding:0") {
- return QXmppEncryptedFileSource::Aes256GcmNopadding;
+ return Aes256GcmNoPad;
} else if (cipher == "urn:xmpp:ciphers:aes-256-cbc-pkcs7:0") {
- return QXmppEncryptedFileSource::Aes256CbcPkcs7;
+ return Aes256CbcPkcs7;
}
return {};
}
@@ -67,7 +68,7 @@ QXmppEncryptedFileSource::QXmppEncryptedFileSource()
}
/// Returns the cipher that was used to encrypt the data in this file source
-QXmppEncryptedFileSource::Cipher QXmppEncryptedFileSource::cipher() const
+Cipher QXmppEncryptedFileSource::cipher() const
{
return d->cipher;
}
diff --git a/src/base/QXmppEncryptedFileSource.h b/src/base/QXmppEncryptedFileSource.h
index 3d7a7c90..109ee487 100644
--- a/src/base/QXmppEncryptedFileSource.h
+++ b/src/base/QXmppEncryptedFileSource.h
@@ -20,17 +20,11 @@ class QXmppEncryptedFileSourcePrivate;
class QXMPP_EXPORT QXmppEncryptedFileSource
{
public:
- enum Cipher {
- Aes128GcmNopadding,
- Aes256GcmNopadding,
- Aes256CbcPkcs7,
- };
-
QXmppEncryptedFileSource();
QXMPP_PRIVATE_DECLARE_RULE_OF_SIX(QXmppEncryptedFileSource)
- Cipher cipher() const;
- void setCipher(Cipher newCipher);
+ QXmpp::Cipher cipher() const;
+ void setCipher(QXmpp::Cipher newCipher);
const QByteArray &key() const;
void setKey(const QByteArray &newKey);
diff --git a/src/base/QXmppGlobal.h b/src/base/QXmppGlobal.h
index 1f309112..f2389306 100644
--- a/src/base/QXmppGlobal.h
+++ b/src/base/QXmppGlobal.h
@@ -141,6 +141,17 @@ inline constexpr bool operator&(SceMode mode1, SceMode mode2)
}
///
+/// Cipher for encrypting data streams and files.
+///
+/// \since QXmpp 1.5
+///
+enum Cipher {
+ Aes128GcmNoPad,
+ Aes256GcmNoPad,
+ Aes256CbcPkcs7,
+};
+
+///
/// An empty struct indicating success in results.
///
/// \since QXmpp 1.5