[Pkg-gnupg-commit] [gpgme] 90/103: cpp: Fix handling of lsig promotion

Daniel Kahn Gillmor dkg at fifthhorseman.net
Thu Dec 14 18:53:07 UTC 2017


This is an automated email from the git hooks/post-receive script.

dkg pushed a commit to branch master
in repository gpgme.

commit 1458adaea4acdcf7ebbead6668476fce92db5af8
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Thu Dec 7 16:21:01 2017 +0100

    cpp: Fix handling of lsig promotion
    
    * src/gpgsignkeyeditinteractor.cpp (SignKeyState): Add second
    CONFIRM state.
    (makeTable): Properly handle local_promote_okay.
    (action): Handle CONFIRM2.
    
    --
    This fixes changing a local signature to a "public" signature.
    
    GnuPG-Bug-Id: T1649
---
 lang/cpp/src/gpgsignkeyeditinteractor.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/lang/cpp/src/gpgsignkeyeditinteractor.cpp b/lang/cpp/src/gpgsignkeyeditinteractor.cpp
index 4c6c87c..79691bc 100644
--- a/lang/cpp/src/gpgsignkeyeditinteractor.cpp
+++ b/lang/cpp/src/gpgsignkeyeditinteractor.cpp
@@ -158,6 +158,7 @@ enum SignKeyState {
     SET_TRUST_DEPTH,
     SET_TRUST_REGEXP,
     CONFIRM,
+    CONFIRM2,
     QUIT,
     SAVE,
     ERROR = EditInteractor::ErrorState
@@ -182,6 +183,7 @@ static GpgSignKeyEditInteractor_Private::TransitionMap makeTable()
     addEntry(START, GET_LINE, "keyedit.prompt", COMMAND);
     addEntry(COMMAND, GET_BOOL, "keyedit.sign_all.okay", UIDS_ANSWER_SIGN_ALL);
     addEntry(COMMAND, GET_BOOL, "sign_uid.okay", CONFIRM);
+    addEntry(COMMAND, GET_BOOL, "sign_uid.local_promote_okay", CONFIRM2);
     addEntry(UIDS_ANSWER_SIGN_ALL, GET_BOOL, "sign_uid.okay", CONFIRM);
     addEntry(UIDS_ANSWER_SIGN_ALL, GET_LINE, "sign_uid.expire", SET_EXPIRE);
     addEntry(UIDS_ANSWER_SIGN_ALL, GET_LINE, "sign_uid.class", SET_CHECK_LEVEL);
@@ -192,6 +194,7 @@ static GpgSignKeyEditInteractor_Private::TransitionMap makeTable()
     addEntry(SET_EXPIRE, GET_BOOL, "sign_uid.class", SET_CHECK_LEVEL);
     addEntry(CONFIRM, GET_BOOL, "sign_uid.local_promote_okay", CONFIRM);
     addEntry(CONFIRM, GET_BOOL, "sign_uid.okay", CONFIRM);
+    addEntry(CONFIRM2, GET_BOOL, "sign_uid.okay", CONFIRM);
     addEntry(CONFIRM, GET_LINE, "keyedit.prompt", COMMAND);
     addEntry(CONFIRM, GET_LINE, "trustsign_prompt.trust_value", SET_TRUST_VALUE);
     addEntry(CONFIRM, GET_LINE, "sign_uid.expire", SET_EXPIRE);
@@ -233,6 +236,7 @@ const char *GpgSignKeyEditInteractor::action(Error &err) const
         return 0;
     case SET_CHECK_LEVEL:
         return check_level_strings[d->checkLevel];
+    case CONFIRM2:
     case CONFIRM:
         return answer(true);
     case QUIT:

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/gpgme.git



More information about the Pkg-gnupg-commit mailing list