36#ifndef __QGPGME_PROTOCOL_P_H__
37#define __QGPGME_PROTOCOL_P_H__
38#include "qgpgmenewcryptoconfig.h"
40#include "qgpgmeadqueryjob.h"
41#include "qgpgmekeygenerationjob.h"
42#include "qgpgmekeylistjob.h"
43#include "qgpgmelistallkeysjob.h"
44#include "qgpgmedecryptjob.h"
45#include "qgpgmedecryptverifyarchivejob.h"
46#include "qgpgmedecryptverifyjob.h"
47#include "qgpgmerefreshsmimekeysjob.h"
48#include "qgpgmedeletejob.h"
49#include "qgpgmedownloadjob.h"
50#include "qgpgmesignencryptjob.h"
51#include "qgpgmeencryptarchivejob.h"
52#include "qgpgmeencryptjob.h"
53#include "qgpgmesignarchivejob.h"
54#include "qgpgmesignencryptarchivejob.h"
55#include "qgpgmesignjob.h"
56#include "qgpgmesignkeyjob.h"
57#include "qgpgmeexportjob.h"
58#include "qgpgmeverifydetachedjob.h"
59#include "qgpgmeimportjob.h"
60#include "qgpgmeimportfromkeyserverjob.h"
61#include "qgpgmeverifyopaquejob.h"
62#include "qgpgmechangeexpiryjob.h"
63#include "qgpgmechangeownertrustjob.h"
64#include "qgpgmechangepasswdjob.h"
65#include "qgpgmeaddexistingsubkeyjob.h"
66#include "qgpgmeadduseridjob.h"
67#include "qgpgmekeyformailboxjob.h"
68#include "qgpgmewkdlookupjob.h"
69#include "qgpgmewkspublishjob.h"
70#include "qgpgmetofupolicyjob.h"
71#include "qgpgmequickjob.h"
72#include "qgpgmereceivekeysjob.h"
73#include "qgpgmerevokekeyjob.h"
74#include "qgpgmesetprimaryuseridjob.h"
75#include "qgpgmewkdrefreshjob.h"
82 GpgME::Protocol mProtocol;
84 explicit Protocol(GpgME::Protocol
proto) : mProtocol(
proto) {}
95 QString displayName()
const override
113 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
118 unsigned int mode = context->keyListMode();
120 mode |= GpgME::Extern;
123 mode |= GpgME::Local;
127 mode |= GpgME::Signatures;
130 mode |= GpgME::Validate;
132 context->setKeyListMode(
mode);
138 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
143 unsigned int mode = context->keyListMode();
144 mode |= GpgME::Local;
147 mode |= GpgME::Signatures;
150 mode |= GpgME::Validate;
157 context->setOffline(
true);
159 context->setKeyListMode(
mode);
165 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
170 context->setArmor(
armor);
177 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
186 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
191 context->setArmor(
armor);
198 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
209 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
220 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
229 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
238 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
247 if (mProtocol != GpgME::OpenPGP) {
251 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
260 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
265 context->setArmor(
armor);
271 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
276 context->setArmor(
armor);
282 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
287 context->setArmor(
armor);
293 if (mProtocol != GpgME::CMS) {
302 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
307 context->setArmor(
armor);
309 context->setKeyListMode(GpgME::Extern);
315 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
324 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
329 context->setArmor(
armor);
336 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
347 if (mProtocol != GpgME::OpenPGP) {
351 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
360 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
369 if (mProtocol != GpgME::OpenPGP) {
373 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
382 if (mProtocol != GpgME::OpenPGP) {
386 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
393 QGpgME:: AddExistingSubkeyJob *addExistingSubkeyJob()
const override
395 if (mProtocol != GpgME::OpenPGP) {
399 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
408 if (mProtocol != GpgME::OpenPGP) {
412 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
421 if (mProtocol != GpgME::OpenPGP) {
424 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
428 context->setKeyListMode(GpgME::Locate | GpgME::Signatures | GpgME::Validate);
434 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
443 if (mProtocol != GpgME::OpenPGP) {
446 auto context = GpgME::Context::createForEngine(GpgME::AssuanEngine);
455 if (mProtocol != GpgME::OpenPGP) {
458 auto context = GpgME::Context::createForEngine(GpgME::SpawnEngine);
467 if (mProtocol != GpgME::OpenPGP) {
470 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
479 if (mProtocol != GpgME::OpenPGP) {
482 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
491 if (mProtocol != GpgME::OpenPGP) {
494 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
503 if (mProtocol != GpgME::OpenPGP) {
506 GpgME::Context *context = GpgME::Context::createForProtocol(mProtocol);
515 if (mProtocol != GpgME::OpenPGP) {
518 if (
auto context = GpgME::Context::createForProtocol(mProtocol)) {
519 context->setArmor(
armor);
527 if (mProtocol != GpgME::OpenPGP) {
530 if (
auto context = GpgME::Context::createForProtocol(mProtocol)) {
531 context->setArmor(
armor);
539 if (mProtocol != GpgME::OpenPGP) {
542 if (
auto context = GpgME::Context::createForProtocol(mProtocol)) {
543 context->setArmor(
armor);
551 if (mProtocol != GpgME::OpenPGP) {
554 if (
auto context = GpgME::Context::createForProtocol(mProtocol)) {
562 if (mProtocol != GpgME::OpenPGP) {
565 if (
auto context = GpgME::Context::createForProtocol(mProtocol)) {
573 if (
auto context = GpgME::Context::createForEngine(GpgME::AssuanEngine)) {
Definition adqueryjob.h:63
An abstract base class to asynchronously add UIDs to OpenPGP keys.
Definition adduseridjob.h:65
An abstract base class to change expiry asynchronously.
Definition changeexpiryjob.h:70
An abstract base class to change owner trust asynchronously.
Definition changeownertrustjob.h:59
An abstract base class to change a key's passphrase asynchronously.
Definition changepasswdjob.h:63
An abstract base class for asynchronous decrypters.
Definition decryptjob.h:68
Definition decryptverifyarchivejob.h:55
An abstract base class for asynchronous combined decrypters and verifiers.
Definition decryptverifyjob.h:79
An abstract base class for asynchronous deleters.
Definition deletejob.h:66
An abstract base class for asynchronous downloaders.
Definition downloadjob.h:70
Definition encryptarchivejob.h:55
An abstract base class for asynchronous encrypters.
Definition encryptjob.h:86
An abstract base class for asynchronous exporters.
Definition exportjob.h:68
An abstract base class for asynchronous keyserver-importers.
Definition importfromkeyserverjob.h:67
An abstract base class for asynchronous importers.
Definition importjob.h:70
An abstract base class for asynchronous key generation.
Definition keygenerationjob.h:66
An abstract base class for asynchronous key listers.
Definition keylistjob.h:72
An abstract base class for asynchronously listing all keys.
Definition listallkeysjob.h:75
Definition protocol.h:120
virtual KeyListJob * locateKeysJob() const =0
virtual WKSPublishJob * wksPublishJob() const =0
virtual QuickJob * quickJob() const =0
virtual KeyForMailboxJob * keyForMailboxJob() const =0
virtual WKDLookupJob * wkdLookupJob() const =0
virtual SetPrimaryUserIDJob * setPrimaryUserIDJob() const =0
virtual TofuPolicyJob * tofuPolicyJob() const =0
virtual RefreshKeysJob * refreshKeysJob() const =0
Definition qgpgmeadqueryjob.h:53
Definition qgpgmeaddexistingsubkeyjob.h:49
Definition qgpgmeadduseridjob.h:51
Definition qgpgmechangeexpiryjob.h:53
Definition qgpgmechangeownertrustjob.h:51
Definition qgpgmechangepasswdjob.h:51
Definition qgpgmedecryptjob.h:53
Definition qgpgmedecryptverifyarchivejob.h:55
Definition qgpgmedecryptverifyjob.h:56
Definition qgpgmedeletejob.h:58
Definition qgpgmedownloadjob.h:51
Definition qgpgmeencryptarchivejob.h:54
Definition qgpgmeencryptjob.h:56
Definition qgpgmeexportjob.h:55
Definition qgpgmeimportfromkeyserverjob.h:53
Definition qgpgmeimportjob.h:57
Definition qgpgmekeygenerationjob.h:53
Definition qgpgmekeylistjob.h:54
Definition qgpgmelistallkeysjob.h:56
Definition qgpgmequickjob.h:54
Definition qgpgmereceivekeysjob.h:52
Definition qgpgmerefreshsmimekeysjob.h:49
Definition qgpgmerevokekeyjob.h:49
Definition qgpgmesetprimaryuseridjob.h:49
Definition qgpgmesignarchivejob.h:54
Definition qgpgmesignencryptarchivejob.h:55
Definition qgpgmesignencryptjob.h:59
Definition qgpgmesignjob.h:56
Definition qgpgmesignkeyjob.h:53
Definition qgpgmetofupolicyjob.h:50
Definition qgpgmeverifydetachedjob.h:55
Definition qgpgmeverifyopaquejob.h:55
Definition qgpgmewkdlookupjob.h:51
Definition qgpgmewkdrefreshjob.h:53
Definition qgpgmewkspublishjob.h:54
Definition receivekeysjob.h:44
An abstract base class for asynchronous key refreshers.
Definition refreshkeysjob.h:68
Definition revokekeyjob.h:52
Definition setprimaryuseridjob.h:51
Definition signarchivejob.h:55
Definition signencryptarchivejob.h:55
An abstract base class for asynchronous combined signing and encrypting.
Definition signencryptjob.h:89
An abstract base class for asynchronous signing.
Definition signjob.h:83
An abstract base class to sign keys asynchronously.
Definition signkeyjob.h:69
An abstract base class for protocol-specific jobs.
Definition specialjob.h:71
Definition tofupolicyjob.h:51
An abstract base class for asynchronous verification of detached signatures.
Definition verifydetachedjob.h:76
An abstract base class for asynchronous verification of opaque signatures.
Definition verifyopaquejob.h:78
Definition wkdlookupjob.h:54
Definition wkdrefreshjob.h:58
Definition wkspublishjob.h:60
Definition qgpgmebackend.h:43