aboutsummaryrefslogtreecommitdiffstats
path: root/lang/qt/src/qgpgmeimportjob.cpp
diff options
context:
space:
mode:
authorIngo Klöcker <[email protected]>2024-06-12 11:34:41 +0200
committerIngo Klöcker <[email protected]>2024-06-12 11:34:41 +0200
commit2187a4de8c1731d8621a4b056baf84ee29e0ff00 (patch)
tree5e24f6e767143f6d0c1093a6dc63986ac41b5419 /lang/qt/src/qgpgmeimportjob.cpp
parenttests: Add --import-filter option to usage info of run-import (diff)
downloadgpgme-2187a4de8c1731d8621a4b056baf84ee29e0ff00.tar.gz
gpgme-2187a4de8c1731d8621a4b056baf84ee29e0ff00.zip
qt: Allow specifying import options when importing keys
* lang/qt/src/importjob.cpp, lang/qt/src/importjob.h (class ImportJob): Add member functions setImportOptions and importOptions. * lang/qt/src/importjob_p.h (struct ImportJobPrivate): Add member m_importOptions. * lang/qt/src/qgpgmeimportjob.cpp (import_qba): Add arg importOptions and adjust the callers. Set import options context flag. * lang/qt/tests/t-import.cpp (ImportTest): Add member function testImportWithImportOptions. -- GnuPG-bug-id: 7152
Diffstat (limited to 'lang/qt/src/qgpgmeimportjob.cpp')
-rw-r--r--lang/qt/src/qgpgmeimportjob.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/lang/qt/src/qgpgmeimportjob.cpp b/lang/qt/src/qgpgmeimportjob.cpp
index 848bcacf..0f90df42 100644
--- a/lang/qt/src/qgpgmeimportjob.cpp
+++ b/lang/qt/src/qgpgmeimportjob.cpp
@@ -106,11 +106,15 @@ static const char *originToString(Key::Origin origin)
}
static QGpgMEImportJob::result_type import_qba(Context *ctx, const QByteArray &certData, const QString &importFilter,
- Key::Origin keyOrigin, const QString &keyOriginUrl)
+ const QString &importOptions, Key::Origin keyOrigin,
+ const QString &keyOriginUrl)
{
if (!importFilter.isEmpty()) {
ctx->setFlag("import-filter", importFilter.toStdString().c_str());
}
+ if (!importOptions.isEmpty()) {
+ ctx->setFlag("import-options", importOptions.toStdString().c_str());
+ }
if (keyOrigin != Key::OriginUnknown) {
if (const auto origin = originToString(keyOrigin)) {
std::string value{origin};
@@ -149,19 +153,19 @@ static QGpgMEImportJob::result_type import_qba(Context *ctx, const QByteArray &c
Error QGpgMEImportJob::start(const QByteArray &certData)
{
- run(std::bind(&import_qba, std::placeholders::_1, certData, importFilter(), keyOrigin(), keyOriginUrl()));
+ run(std::bind(&import_qba, std::placeholders::_1, certData, importFilter(), importOptions(), keyOrigin(), keyOriginUrl()));
return Error();
}
GpgME::ImportResult QGpgME::QGpgMEImportJob::exec(const QByteArray &keyData)
{
- const result_type r = import_qba(context(), keyData, importFilter(), keyOrigin(), keyOriginUrl());
+ const result_type r = import_qba(context(), keyData, importFilter(), importOptions(), keyOrigin(), keyOriginUrl());
return std::get<0>(r);
}
Error QGpgMEImportJob::startLater(const QByteArray &certData)
{
- setWorkerFunction(std::bind(&import_qba, std::placeholders::_1, certData, importFilter(), keyOrigin(), keyOriginUrl()));
+ setWorkerFunction(std::bind(&import_qba, std::placeholders::_1, certData, importFilter(), importOptions(), keyOrigin(), keyOriginUrl()));
return {};
}