diff options
author | Werner Koch <wk@gnupg.org> | 2017-03-31 20:03:52 +0200 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2017-03-31 20:07:20 +0200 |
commit | 8f2671d2cc022af2f564e296bdeb3bb2d2734ef4 (patch) | |
tree | 0a5dfac0bb36cf364e313b000967863e42783793 /g10/revoke.c | |
parent | gpg: Consistent use of preprocessor conditionals. (diff) | |
download | gnupg2-8f2671d2cc022af2f564e296bdeb3bb2d2734ef4.tar.xz gnupg2-8f2671d2cc022af2f564e296bdeb3bb2d2734ef4.zip |
gpg: Pass CTRL to many more functions.
--
For proper operations as a server we need to avoid global variables.
Thus we need to pass the session state CTRL to most functions. Quite
a lot of changes but fortunately straightforward to do.
Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'g10/revoke.c')
-rw-r--r-- | g10/revoke.c | 36 |
1 files changed, 19 insertions, 17 deletions
diff --git a/g10/revoke.c b/g10/revoke.c index 122699f8c..1dea6ae12 100644 --- a/g10/revoke.c +++ b/g10/revoke.c @@ -238,7 +238,7 @@ gen_desig_revoke (ctrl_t ctrl, const char *uname, strlist_t locusr) } /* To parse the revkeys */ - merge_keys_and_selfsig(keyblock); + merge_keys_and_selfsig (ctrl, keyblock); /* get the key from the keyblock */ node = find_kbnode( keyblock, PKT_PUBLIC_KEY ); @@ -294,7 +294,7 @@ gen_desig_revoke (ctrl_t ctrl, const char *uname, strlist_t locusr) else { pk2 = xmalloc_clear (sizeof *pk2); - rc = get_pubkey_byfprint (pk2, NULL, + rc = get_pubkey_byfprint (ctrl, pk2, NULL, pk->revkey[i].fpr, MAX_FINGERPRINT_LEN); } @@ -305,11 +305,11 @@ gen_desig_revoke (ctrl_t ctrl, const char *uname, strlist_t locusr) any = 1; - print_pubkey_info (NULL, pk); + print_pubkey_info (ctrl, NULL, pk); tty_printf ("\n"); tty_printf (_("To be revoked by:\n")); - print_seckey_info (pk2); + print_seckey_info (ctrl, pk2); if(pk->revkey[i].class&0x40) tty_printf(_("(This is a sensitive revocation key)\n")); @@ -343,7 +343,7 @@ gen_desig_revoke (ctrl_t ctrl, const char *uname, strlist_t locusr) push_armor_filter (afx, out); /* create it */ - rc = make_keysig_packet( &sig, pk, NULL, NULL, pk2, 0x20, 0, + rc = make_keysig_packet (ctrl, &sig, pk, NULL, NULL, pk2, 0x20, 0, 0, 0, revocation_reason_build_cb, reason, NULL); @@ -445,7 +445,8 @@ gen_desig_revoke (ctrl_t ctrl, const char *uname, strlist_t locusr) just the naked revocation signature; it may be NULL. If LEADINTEXT is not NULL, it is written right before the (armored) output.*/ static int -create_revocation (const char *filename, +create_revocation (ctrl_t ctrl, + const char *filename, struct revocation_reason_info *reason, PKT_public_key *psk, kbnode_t keyblock, @@ -470,7 +471,7 @@ create_revocation (const char *filename, afx->hdrlines = "Comment: This is a revocation certificate\n"; push_armor_filter (afx, out); - rc = make_keysig_packet (&sig, psk, NULL, NULL, psk, 0x20, 0, + rc = make_keysig_packet (ctrl, &sig, psk, NULL, NULL, psk, 0x20, 0, 0, 0, revocation_reason_build_cb, reason, cache_nonce); if (rc) @@ -520,7 +521,7 @@ create_revocation (const char *filename, key must be available. CACHE_NONCE is optional but can be used to help gpg-agent to avoid an extra passphrase prompt. */ int -gen_standard_revoke (PKT_public_key *psk, const char *cache_nonce) +gen_standard_revoke (ctrl_t ctrl, PKT_public_key *psk, const char *cache_nonce) { int rc; estream_t memfp; @@ -549,14 +550,14 @@ gen_standard_revoke (PKT_public_key *psk, const char *cache_nonce) es_fprintf (memfp, "%s\n\n", _("This is a revocation certificate for the OpenPGP key:")); - print_key_line (memfp, psk, 0); + print_key_line (ctrl, memfp, psk, 0); if (opt.keyid_format != KF_NONE) - print_fingerprint (memfp, psk, 3); + print_fingerprint (ctrl, memfp, psk, 3); kl = opt.keyid_format == KF_NONE? 0 : keystrlen (); - tmpstr = get_user_id (keyid, &len); + tmpstr = get_user_id (ctrl, keyid, &len); es_fprintf (memfp, "uid%*s%.*s\n\n", kl + 10, "", (int)len, tmpstr); @@ -585,7 +586,8 @@ gen_standard_revoke (PKT_public_key *psk, const char *cache_nonce) reason.code = 0x00; /* No particular reason. */ reason.desc = NULL; - rc = create_revocation (fname, &reason, psk, NULL, leadin, 3, cache_nonce); + rc = create_revocation (ctrl, + fname, &reason, psk, NULL, leadin, 3, cache_nonce); if (!rc && !opt.quiet) log_info (_("revocation certificate stored as '%s.rev'\n"), fname); @@ -601,7 +603,7 @@ gen_standard_revoke (PKT_public_key *psk, const char *cache_nonce) * Generate a revocation certificate for UNAME */ int -gen_revoke (const char *uname) +gen_revoke (ctrl_t ctrl, const char *uname) { int rc = 0; PKT_public_key *psk; @@ -660,7 +662,7 @@ gen_revoke (const char *uname) lines with secret key infos are printed after this message. */ log_error (_("'%s' matches multiple secret keys:\n"), uname); - info = format_seckey_info (keyblock->pkt->pkt.public_key); + info = format_seckey_info (ctrl, keyblock->pkt->pkt.public_key); log_error (" %s\n", info); xfree (info); release_kbnode (keyblock); @@ -668,7 +670,7 @@ gen_revoke (const char *uname) rc = keydb_get_keyblock (kdbhd, &keyblock); while (! rc) { - info = format_seckey_info (keyblock->pkt->pkt.public_key); + info = format_seckey_info (ctrl, keyblock->pkt->pkt.public_key); log_info (" %s\n", info); xfree (info); release_kbnode (keyblock); @@ -704,7 +706,7 @@ gen_revoke (const char *uname) } keyid_from_pk (psk, keyid ); - print_seckey_info (psk); + print_seckey_info (ctrl, psk); tty_printf("\n"); if (!cpr_get_answer_is_yes ("gen_revoke.okay", @@ -726,7 +728,7 @@ gen_revoke (const char *uname) if (!opt.armor) tty_printf (_("ASCII armored output forced.\n")); - rc = create_revocation (NULL, reason, psk, keyblock, NULL, 0, NULL); + rc = create_revocation (ctrl, NULL, reason, psk, keyblock, NULL, 0, NULL); if (rc) goto leave; |