[Pkg-gnupg-commit] [gnupg2] 92/118: gpg: Make --output work with --verify.

Daniel Kahn Gillmor dkg at fifthhorseman.net
Thu Sep 15 18:25:15 UTC 2016


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

dkg pushed a commit to branch encoding-and-speling
in repository gnupg2.

commit bbe940c095f2bca7a1ca5f8e68ca1af98350a885
Author: Werner Koch <wk at gnupg.org>
Date:   Thu Sep 8 00:45:45 2016 +0200

    gpg: Make --output work with --verify.
    
    * g10/mainproc.c (proc_plaintext): Handle opt.output.
    
    Signed-off-by: Werner Koch <wk at gnupg.org>
---
 doc/gpg.texi   | 16 +++++++++-------
 g10/mainproc.c |  7 ++++++-
 2 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/doc/gpg.texi b/doc/gpg.texi
index 8864a0a..74977c5 100644
--- a/doc/gpg.texi
+++ b/doc/gpg.texi
@@ -3438,13 +3438,15 @@ show fingerprint
 
 @item gpg --verify @code{pgpfile}
 @itemx gpg --verify @code{sigfile}
-Verify the signature of the file but do not output the data. The
-second form is used for detached signatures, where @code{sigfile}
-is the detached signature (either ASCII armored or binary) and
-are the signed data; if this is not given, the name of
-the file holding the signed data is constructed by cutting off the
-extension (".asc" or ".sig") of @code{sigfile} or by asking the
-user for the filename.
+Verify the signature of the file but do not output the data unless
+requested. The second form is used for detached signatures, where
+ at code{sigfile} is the detached signature (either ASCII armored or
+binary) and are the signed data; if this is not given, the name of the
+file holding the signed data is constructed by cutting off the
+extension (".asc" or ".sig") of @code{sigfile} or by asking the user
+for the filename.  If the option @option{--output} is also used the
+signed data is written to the file specified by that option; use
+ at code{-} to write the signed data to stdout.
 @end table
 
 
diff --git a/g10/mainproc.c b/g10/mainproc.c
index 7bb4350..929e18a 100644
--- a/g10/mainproc.c
+++ b/g10/mainproc.c
@@ -757,7 +757,12 @@ proc_plaintext( CTX c, PACKET *pkt )
 
   if (!rc)
     {
-      rc = handle_plaintext (pt, &c->mfx, c->sigs_only, clearsig);
+      /* It we are in --verify mode, we do not want to output the
+       * signed text.  However, if --output is also used we do what
+       * has been requested and write out the signed data.  */
+      rc = handle_plaintext (pt, &c->mfx,
+                             (opt.outfp || opt.outfile)? 0 :  c->sigs_only,
+                             clearsig);
       if (gpg_err_code (rc) == GPG_ERR_EACCES && !c->sigs_only)
         {
           /* Can't write output but we hash it anyway to check the

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



More information about the Pkg-gnupg-commit mailing list