aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2022-09-29 17:49:56 +0200
committerLinus Jahn <lnj@kaidan.im>2022-09-29 17:49:56 +0200
commit2f4677abbf46e669c56e185b3113ba2bdfa2ccf8 (patch)
treeb0669e8e1e221885a999f6854cdb037f5d4a29b0
parentfb37b750b54b275a240d42d939e9ae874cf4e67c (diff)
downloadqxmpp-2f4677abbf46e669c56e185b3113ba2bdfa2ccf8.tar.gz
FileEncryption: EncryptionDevice: Implement atEnd()
Required for using in QNetworkAccessManager::put().
-rw-r--r--src/client/QXmppFileEncryption.cpp5
-rw-r--r--src/client/QXmppFileEncryption.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/client/QXmppFileEncryption.cpp b/src/client/QXmppFileEncryption.cpp
index 99ccd474..ba78821e 100644
--- a/src/client/QXmppFileEncryption.cpp
+++ b/src/client/QXmppFileEncryption.cpp
@@ -220,6 +220,11 @@ qint64 EncryptionDevice::writeData(const char *, qint64)
return 0;
}
+bool EncryptionDevice::atEnd() const
+{
+ return m_finalized && m_outputBuffer.empty();
+}
+
DecryptionDevice::DecryptionDevice(std::unique_ptr<QIODevice> input,
Cipher config,
const QByteArray &key,
diff --git a/src/client/QXmppFileEncryption.h b/src/client/QXmppFileEncryption.h
index b1108b22..5bd52c7e 100644
--- a/src/client/QXmppFileEncryption.h
+++ b/src/client/QXmppFileEncryption.h
@@ -40,6 +40,7 @@ public:
qint64 size() const override;
qint64 readData(char *data, qint64 maxlen) override;
qint64 writeData(const char *data, qint64 len) override;
+ bool atEnd() const override;
private:
Cipher m_cipherConfig;