diff options
| author | Ingo Klöcker <[email protected]> | 2024-06-12 11:34:41 +0200 |
|---|---|---|
| committer | Ingo Klöcker <[email protected]> | 2024-06-12 11:34:41 +0200 |
| commit | 2187a4de8c1731d8621a4b056baf84ee29e0ff00 (patch) | |
| tree | 5e24f6e767143f6d0c1093a6dc63986ac41b5419 /lang/qt/src/qgpgmeimportjob.cpp | |
| parent | tests: Add --import-filter option to usage info of run-import (diff) | |
| download | gpgme-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.cpp | 12 |
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 {}; } |
