• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeutils API Reference
  • KDE Home
  • Contact Us
 

kgpg

  • sources
  • kde-4.14
  • kdeutils
  • kgpg
  • transactions
kgpgsignkey.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2009,2012 Rolf Eike Beer <kde@opensource.sf-tec.de>
3  */
4 
5 /***************************************************************************
6  * *
7  * This program is free software; you can redistribute it and/or modify *
8  * it under the terms of the GNU General Public License as published by *
9  * the Free Software Foundation; either version 2 of the License, or *
10  * (at your option) any later version. *
11  * *
12  ***************************************************************************/
13 
14 #include "kgpgsignkey.h"
15 
16 #include "model/kgpgitemnode.h"
17 
18 KGpgSignKey::KGpgSignKey(QObject *parent, const QString &signer, KGpgKeyNode *key, const bool local, const carefulCheck checking)
19  : KGpgEditKeyTransaction(parent, key->getId(), QString(), false, false),
20  KGpgSignTransactionHelper(signer, !local, checking)
21 {
22  insertArgument(1, QLatin1String( "-u" ));
23  insertArgument(2, signer);
24  m_signerPos = 2;
25  addArgumentRef(&m_signerPos);
26 
27  addArgument(QLatin1String("save"));
28 
29  setKey(key);
30 
31  setLocal(local);
32 }
33 
34 KGpgSignKey::~KGpgSignKey()
35 {
36 }
37 
38 bool
39 KGpgSignKey::nextLine(const QString &line)
40 {
41  switch (KGpgSignTransactionHelper::nextLine(line)) {
42  case KGpgSignTransactionHelper::handledFalse:
43  return false;
44  case KGpgSignTransactionHelper::handledTrue:
45  return true;
46  default:
47  // just to keep the compiler happy
48  Q_ASSERT(0);
49  case KGpgSignTransactionHelper::notHandled:
50  return KGpgEditKeyTransaction::nextLine(line);
51  }
52 }
53 
54 KGpgTransaction::ts_boolanswer
55 KGpgSignKey::boolQuestion(const QString& line)
56 {
57  if (line.contains(QLatin1String("sign_all.okay")))
58  return BA_YES;
59 
60  ts_boolanswer ret = KGpgSignTransactionHelper::boolQuestion(line);
61 
62  if (ret == BA_UNKNOWN)
63  ret = KGpgTransaction::boolQuestion(line);
64 
65  return ret;
66 }
67 
68 bool
69 KGpgSignKey::passphraseReceived()
70 {
71  setSuccess(KGpgTransaction::TS_OK);
72  return true;
73 }
74 
75 KGpgTransaction *
76 KGpgSignKey::asTransaction()
77 {
78  return this;
79 }
80 
81 void
82 KGpgSignKey::replaceCmd(const QString &cmd)
83 {
84  replaceCommand(cmd);
85 }
86 
87 #include "kgpgsignkey.moc"
KGpgSignKey::nextLine
virtual bool nextLine(const QString &line)
handle standard GnuPG prompts
Definition: kgpgsignkey.cpp:39
KGpgSignTransactionHelper::handledFalse
the line was parsed successfully and transaction can continue
Definition: kgpgsigntransactionhelper.h:33
KGpgSignTransactionHelper
helper class for key signing transactions
Definition: kgpgsigntransactionhelper.h:25
KGpgSignKey::~KGpgSignKey
virtual ~KGpgSignKey()
destructor
Definition: kgpgsignkey.cpp:34
KGpgTransaction::addArgument
int addArgument(const QString &arg)
add a command line argument to gpg process
Definition: kgpgtransaction.cpp:562
KGpgTransaction::BA_YES
answer "YES"
Definition: kgpgtransaction.h:75
KGpgTransaction::TS_OK
everything went fine
Definition: kgpgtransaction.h:60
KGpgEditKeyTransaction
edit a single property of a key
Definition: kgpgeditkeytransaction.h:24
KGpgKeyNode
A public key with or without corresponding secret key.
Definition: KGpgKeyNode.h:33
KGpgSignTransactionHelper::setLocal
void setLocal(const bool local)
set if the signature should be local (not exportable)
Definition: kgpgsigntransactionhelper.cpp:91
KGpgSignKey::asTransaction
virtual KGpgTransaction * asTransaction()
returns the transaction object to use
Definition: kgpgsignkey.cpp:76
KGpgSignTransactionHelper::nextLine
lineParseResults nextLine(const QString &line)
handle signing commands from GnuPG
Definition: kgpgsigntransactionhelper.cpp:45
KGpgTransaction::addArgumentRef
void addArgumentRef(int *ref)
make sure the reference to a specific argument is kept up to date
Definition: kgpgtransaction.cpp:617
QObject
KGpgEditKeyTransaction::nextLine
virtual bool nextLine(const QString &line)
handle standard GnuPG prompts
Definition: kgpgeditkeytransaction.cpp:60
KGpgTransaction::boolQuestion
virtual ts_boolanswer boolQuestion(const QString &line)
Called for every boolean question GnuPG answers.
Definition: kgpgtransaction.cpp:457
KGpgSignKey::passphraseReceived
virtual bool passphraseReceived()
called when GnuPG accepted the passphrase
Definition: kgpgsignkey.cpp:69
KGpgSignTransactionHelper::boolQuestion
KGpgTransaction::ts_boolanswer boolQuestion(const QString &line)
Definition: kgpgsigntransactionhelper.cpp:69
QString
KGpgTransaction::BA_UNKNOWN
the question is not supported (this is an error)
Definition: kgpgtransaction.h:74
KGpgSignTransactionHelper::setKey
void setKey(const KGpgKeyNode *node)
set key node this transaction is using
Definition: kgpgsigntransactionhelper.cpp:33
KGpgTransaction::ts_boolanswer
ts_boolanswer
result codes for GnuPG boolean questions
Definition: kgpgtransaction.h:73
kgpgitemnode.h
KGpgEditKeyTransaction::replaceCommand
void replaceCommand(const QString &cmd)
replace the command
Definition: kgpgeditkeytransaction.cpp:101
QString::contains
bool contains(QChar ch, Qt::CaseSensitivity cs) const
kgpgsignkey.h
KGpgSignTransactionHelper::m_signerPos
int m_signerPos
position of the signer argument in GnuPG command line
Definition: kgpgsigntransactionhelper.h:133
QLatin1String
KGpgTransaction::setSuccess
void setSuccess(const int v)
set the success value that will be returned with the done signal
Definition: kgpgtransaction.cpp:448
KGpgSignKey::boolQuestion
virtual ts_boolanswer boolQuestion(const QString &line)
Called for every boolean question GnuPG answers.
Definition: kgpgsignkey.cpp:55
KGpgTransaction::insertArgument
void insertArgument(const int pos, const QString &arg)
insert an argument at the given position
Definition: kgpgtransaction.cpp:593
KGpgSignTransactionHelper::handledTrue
the line was parsed successfully and the transaction shoult be shut down
Definition: kgpgsigntransactionhelper.h:34
KGpgSignKey::replaceCmd
virtual void replaceCmd(const QString &cmd)
replaces the command passed to GnuPG
Definition: kgpgsignkey.cpp:82
KGpgTransaction
Process one GnuPG operation.
Definition: kgpgtransaction.h:44
KGpgSignTransactionHelper::carefulCheck
carefulCheck
Definition: kgpgsigntransactionhelper.h:38
KGpgSignTransactionHelper::notHandled
the line was not handled
Definition: kgpgsigntransactionhelper.h:35
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:42:08 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kgpg

Skip menu "kgpg"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeutils API Reference

Skip menu "kdeutils API Reference"
  • ark
  • filelight
  • kcalc
  • kcharselect
  • kdf
  • kfloppy
  • kgpg
  • ktimer
  • kwallet
  • sweeper

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal