[git] GnuPG - branch, STABLE-BRANCH-2-2, updated. gnupg-2.2.7-12-gdc87a33

by Werner Koch cvs at cvs.gnupg.org
Wed Jun 6 12:07:51 CEST 2018


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "The GNU Privacy Guard".

The branch, STABLE-BRANCH-2-2 has been updated
       via  dc87a3341f28ddac1113e90a3861d062be2610e2 (commit)
      from  7c004dd58f28c182c1289bfa071cd1ec8892529d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit dc87a3341f28ddac1113e90a3861d062be2610e2
Author: Werner Koch <wk at gnupg.org>
Date:   Wed Jun 6 11:50:58 2018 +0200

    gpg: New command --show-keys.
    
    * g10/gpg.c (aShowKeys): New const.
    (opts): New command --show-keys.
    (main): Implement command.
    * g10/import.c (import_keys_internal): Don't print stats in show-only
    mode.
    (import_one): Be silent in show-only mode.
    --
    
    Using
    
      --import --import-options show-only
    
    to look at a key is too cumbersome.  Provide this shortcut and also
    remove some diagnostic cruft in this case.
    
    Signed-off-by: Werner Koch <wk at gnupg.org>
    (cherry picked from commit 257661d6ae0ca376df758c38fabab2316d10e3a9)

diff --git a/doc/gpg.texi b/doc/gpg.texi
index 260b9f3..4dab238 100644
--- a/doc/gpg.texi
+++ b/doc/gpg.texi
@@ -353,6 +353,14 @@ may thus be used to see what keys @command{@gpgname} might use.  In
 particular external methods as defined by @option{--auto-key-locate} may
 be used to locate a key.  Only public keys are listed.
 
+ at item --show-keys
+ at opindex show-keys
+This commands takes OpenPGP keys as input and prints information about
+them in the same way the command @option{--list-keys} does for
+imported key.  No internal state is changed.  For automated processing
+this command should be combined with the option
+ at option{--with-colons}.
+
 @item --fingerprint
 @opindex fingerprint
 List all keys (or the specified ones) along with their
@@ -2295,7 +2303,8 @@ opposite meaning. The options are:
   Show a listing of the key as imported right before it is stored.
   This can be combined with the option @option{--dry-run} to only look
   at keys; the option @option{show-only} is a shortcut for this
-  combination.  Note that suffixes like '#' for "sec" and "sbb" lines
+  combination.  The command @option{--show-keys} is another shortcut
+  for this.  Note that suffixes like '#' for "sec" and "sbb" lines
   may or may not be printed.
 
   @item import-export
diff --git a/g10/gpg.c b/g10/gpg.c
index 2c181c2..b76a039 100644
--- a/g10/gpg.c
+++ b/g10/gpg.c
@@ -149,6 +149,7 @@ enum cmd_and_opt_values
     aSearchKeys,
     aRefreshKeys,
     aFetchKeys,
+    aShowKeys,
     aExport,
     aExportSecret,
     aExportSecretSub,
@@ -498,6 +499,7 @@ static ARGPARSE_OPTS opts[] = {
               N_("update all keys from a keyserver")),
   ARGPARSE_c (aLocateKeys, "locate-keys", "@"),
   ARGPARSE_c (aFetchKeys, "fetch-keys" , "@" ),
+  ARGPARSE_c (aShowKeys, "show-keys" , "@" ),
   ARGPARSE_c (aExportSecret, "export-secret-keys" , "@" ),
   ARGPARSE_c (aExportSecretSub, "export-secret-subkeys" , "@" ),
   ARGPARSE_c (aExportSshKey, "export-ssh-key", "@" ),
@@ -733,6 +735,7 @@ static ARGPARSE_OPTS opts[] = {
   ARGPARSE_c (aListKeys, "list-key", "@"),   /* alias */
   ARGPARSE_c (aListSigs, "list-sig", "@"),   /* alias */
   ARGPARSE_c (aCheckKeys, "check-sig", "@"), /* alias */
+  ARGPARSE_c (aShowKeys,  "show-key", "@"), /* alias */
   ARGPARSE_s_n (oSkipVerify, "skip-verify", "@"),
   ARGPARSE_s_n (oSkipHiddenRecipients, "skip-hidden-recipients", "@"),
   ARGPARSE_s_n (oNoSkipHiddenRecipients, "no-skip-hidden-recipients", "@"),
@@ -2602,6 +2605,13 @@ main (int argc, char **argv)
             greeting=1;
             break;
 
+	  case aShowKeys:
+            set_cmd (&cmd, pargs.r_opt);
+            opt.import_options |= IMPORT_SHOW;
+            opt.import_options |= IMPORT_DRY_RUN;
+            opt.import_options &= ~IMPORT_REPAIR_KEYS;
+            break;
+
 	  case aDetachedSign: detached_sig = 1; set_cmd( &cmd, aSign ); break;
 
 	  case aDecryptFiles: multifile=1; /* fall through */
@@ -4556,6 +4566,7 @@ main (int argc, char **argv)
       case aFastImport:
         opt.import_options |= IMPORT_FAST; /* fall through */
       case aImport:
+      case aShowKeys:
 	import_keys (ctrl, argc? argv:NULL, argc, NULL,
                      opt.import_options, opt.key_origin, opt.key_origin_url);
 	break;
diff --git a/g10/import.c b/g10/import.c
index c07f67f..10fbd42 100644
--- a/g10/import.c
+++ b/g10/import.c
@@ -494,7 +494,9 @@ import_keys_internal (ctrl_t ctrl, iobuf_t inp, char **fnames, int nnames,
 
   if (!stats_handle)
     {
-      import_print_stats (stats);
+      if ((options & (IMPORT_SHOW | IMPORT_DRY_RUN))
+          != (IMPORT_SHOW | IMPORT_DRY_RUN))
+        import_print_stats (stats);
       import_release_stats_handle (stats);
     }
 
@@ -1635,6 +1637,10 @@ import_one (ctrl_t ctrl,
   int any_filter = 0;
   KEYDB_HANDLE hd = NULL;
 
+  /* If show-only is active we don't won't any extra output.  */
+  if ((options & (IMPORT_SHOW | IMPORT_DRY_RUN)))
+    silent = 1;
+
   /* Get the key and print some info about it. */
   node = find_kbnode( keyblock, PKT_PUBLIC_KEY );
   if (!node )

-----------------------------------------------------------------------

Summary of changes:
 doc/gpg.texi | 11 ++++++++++-
 g10/gpg.c    | 11 +++++++++++
 g10/import.c |  8 +++++++-
 3 files changed, 28 insertions(+), 2 deletions(-)


hooks/post-receive
-- 
The GNU Privacy Guard
http://git.gnupg.org




More information about the Gnupg-commits mailing list