aboutsummaryrefslogtreecommitdiffstats
path: root/lang/qt/src/decryptverifyarchivejob.cpp
diff options
context:
space:
mode:
authorIngo Klöcker <[email protected]>2023-06-21 13:24:00 +0000
committerIngo Klöcker <[email protected]>2023-06-21 13:25:11 +0000
commit1c2459a5927866931808141ac6c4157cd5e3a157 (patch)
tree510b6b55fb6fd2553052caf9cd255336635cac2e /lang/qt/src/decryptverifyarchivejob.cpp
parentcore: Support reading the archive to decrypt/verify directly from a file (diff)
downloadgpgme-1c2459a5927866931808141ac6c4157cd5e3a157.tar.gz
gpgme-1c2459a5927866931808141ac6c4157cd5e3a157.zip
qt: Support reading signed/encrypted archives directly from a file
* lang/qt/src/decryptverifyarchivejob.cpp, lang/qt/src/decryptverifyarchivejob.h (DecryptVerifyArchiveJob): Add member functions setInputFile, inputFile. * lang/qt/src/decryptverifyarchivejob_p.h (DecryptVerifyArchiveJobPrivate): Add member m_inputFilePath. * lang/qt/src/qgpgmedecryptverifyarchivejob.cpp (decrypt_verify): Move creation of indata to decrypt_verify_from_io_device. (decrypt_verify_from_io_device, decrypt_verify_from_file_name): New. (QGpgMEDecryptVerifyArchiveJob::start): Use decrypt_verify_from_io_device instead of decrypt_verify. (QGpgMEDecryptVerifyArchiveJobPrivate::startIt): Start the job with the values from member variables. * lang/qt/tests/run-decryptverifyarchivejob.cpp (createInput): Remove. (main): Remove creation of input. Make the job read the archive directly from the given archive name. -- This makes it possible to tell gpgtar to read the signed/encrypted archive directly from a specified file bypassing GpgME's Data IO. GnuPG-bug-id: 6530
Diffstat (limited to '')
-rw-r--r--lang/qt/src/decryptverifyarchivejob.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/lang/qt/src/decryptverifyarchivejob.cpp b/lang/qt/src/decryptverifyarchivejob.cpp
index ebfd36ca..76c1721a 100644
--- a/lang/qt/src/decryptverifyarchivejob.cpp
+++ b/lang/qt/src/decryptverifyarchivejob.cpp
@@ -56,6 +56,18 @@ bool DecryptVerifyArchiveJob::isSupported()
return (gpgVersion >= "2.4.1") || (gpgVersion >= "2.2.42" && gpgVersion < "2.3.0");
}
+void DecryptVerifyArchiveJob::setInputFile(const QString &path)
+{
+ auto d = jobPrivate<DecryptVerifyArchiveJobPrivate>(this);
+ d->m_inputFilePath = path;
+}
+
+QString DecryptVerifyArchiveJob::inputFile() const
+{
+ auto d = jobPrivate<DecryptVerifyArchiveJobPrivate>(this);
+ return d->m_inputFilePath;
+}
+
void DecryptVerifyArchiveJob::setOutputDirectory(const QString &outputDirectory)
{
auto d = jobPrivate<DecryptVerifyArchiveJobPrivate>(this);