aboutsummaryrefslogtreecommitdiffstats
path: root/lang/qt/src/qgpgmeverifyopaquejob.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lang/qt/src/qgpgmeverifyopaquejob.cpp')
-rw-r--r--lang/qt/src/qgpgmeverifyopaquejob.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/lang/qt/src/qgpgmeverifyopaquejob.cpp b/lang/qt/src/qgpgmeverifyopaquejob.cpp
index 19e61e37..0cca9f72 100644
--- a/lang/qt/src/qgpgmeverifyopaquejob.cpp
+++ b/lang/qt/src/qgpgmeverifyopaquejob.cpp
@@ -136,7 +136,8 @@ static QGpgMEVerifyOpaqueJob::result_type verify_opaque_qba(Context *ctx, const
static QGpgMEVerifyOpaqueJob::result_type verify_from_filename(Context *ctx,
const QString &inputFilePath,
- const QString &outputFilePath)
+ const QString &outputFilePath,
+ bool processAllSignatures)
{
Data indata;
#ifdef Q_OS_WIN
@@ -157,6 +158,9 @@ static QGpgMEVerifyOpaqueJob::result_type verify_from_filename(Context *ctx,
outdata.setFileName(QFile::encodeName(partFileGuard.tempFileName()).constData());
#endif
+ if (processAllSignatures) {
+ ctx->setFlag("proc-all-sigs", "1");
+ }
const auto verificationResult = ctx->verifyOpaqueSignature(indata, outdata);
if (!verificationResult.error().code()) {
@@ -171,17 +175,26 @@ static QGpgMEVerifyOpaqueJob::result_type verify_from_filename(Context *ctx,
Error QGpgMEVerifyOpaqueJob::start(const QByteArray &signedData)
{
+ if (processAllSignatures()) {
+ context()->setFlag("proc-all-sigs", "1");
+ }
run(std::bind(&verify_opaque_qba, std::placeholders::_1, signedData));
return Error();
}
void QGpgMEVerifyOpaqueJob::start(const std::shared_ptr<QIODevice> &signedData, const std::shared_ptr<QIODevice> &plainText)
{
+ if (processAllSignatures()) {
+ context()->setFlag("proc-all-sigs", "1");
+ }
run(std::bind(&verify_opaque, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3, std::placeholders::_4), signedData, plainText);
}
GpgME::VerificationResult QGpgME::QGpgMEVerifyOpaqueJob::exec(const QByteArray &signedData, QByteArray &plainText)
{
+ if (processAllSignatures()) {
+ context()->setFlag("proc-all-sigs", "1");
+ }
const result_type r = verify_opaque_qba(context(), signedData);
plainText = std::get<1>(r);
return std::get<0>(r);
@@ -194,7 +207,7 @@ GpgME::Error QGpgMEVerifyOpaqueJobPrivate::startIt()
}
q->run([=](Context *ctx) {
- return verify_from_filename(ctx, m_inputFilePath, m_outputFilePath);
+ return verify_from_filename(ctx, m_inputFilePath, m_outputFilePath, m_processAllSignatures);
});
return {};