gpg: Add options --output and --yes to gpgv.

* g10/gpgv.c (oOutput, oAnswerYes): New.
(opts): Add --output and --yes.
(main): Implement options.

Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
Werner Koch 2016-09-08 10:50:51 +02:00
parent bbe940c095
commit a8363b7d0b
No known key found for this signature in database
GPG Key ID: E3FDFF218E45B72B
3 changed files with 19 additions and 1 deletions

View File

@ -2153,7 +2153,8 @@ Assume the input data is not in ASCII armored format.
@item --output @var{file}
@itemx -o @var{file}
@opindex output
Write output to @var{file}.
Write output to @var{file}. To write to stdout use @code{-} as the
filename.
@item --max-output @code{n}
@opindex max-output

View File

@ -92,6 +92,16 @@ are replaced by the HOME directory. If the filename
does not contain a slash, it is assumed to be in the
home-directory ("~/.gnupg" if --homedir is not used).
@item --output @var{file}
@itemx -o @var{file}
@opindex output
Write output to @var{file}. This option can be used to get the signed
text from a cleartext or binary signature; it also works for detached
signatures, but in that case this option is in general not
useful. Unless you write to stdout (using @code{-} for @var{file}) you
should also use the option @option{--yes} to force overwriting an
existing file.
@item --status-fd @var{n}
@opindex status-fd
Write special status strings to the file descriptor @var{n}. See the

View File

@ -55,6 +55,7 @@ enum cmd_and_opt_values {
aNull = 0,
oQuiet = 'q',
oVerbose = 'v',
oOutput = 'o',
oBatch = 500,
oKeyring,
oIgnoreTimeConflict,
@ -62,6 +63,8 @@ enum cmd_and_opt_values {
oLoggerFD,
oHomedir,
oWeakDigest,
oAnswerYes,
oAnswerNo,
aTest
};
@ -73,6 +76,7 @@ static ARGPARSE_OPTS opts[] = {
ARGPARSE_s_n (oQuiet, "quiet", N_("be somewhat more quiet")),
ARGPARSE_s_s (oKeyring, "keyring",
N_("|FILE|take the keys from the keyring FILE")),
ARGPARSE_s_s (oOutput, "output", N_("|FILE|write output to FILE")),
ARGPARSE_s_n (oIgnoreTimeConflict, "ignore-time-conflict",
N_("make timestamp conflicts only a warning")),
ARGPARSE_s_i (oStatusFD, "status-fd",
@ -81,6 +85,7 @@ static ARGPARSE_OPTS opts[] = {
ARGPARSE_s_s (oHomedir, "homedir", "@"),
ARGPARSE_s_s (oWeakDigest, "weak-digest",
N_("|ALGO|reject signatures made with ALGO")),
ARGPARSE_s_n (oAnswerYes, "yes", "@"),
ARGPARSE_end ()
};
@ -188,6 +193,8 @@ main( int argc, char **argv )
gcry_control (GCRYCTL_SET_VERBOSITY, (int)opt.verbose);
break;
case oKeyring: append_to_strlist( &nrings, pargs.r.ret_str); break;
case oOutput: opt.outfile = pargs.r.ret_str; break;
case oAnswerYes: opt.answer_yes = 1; break;
case oStatusFD: set_status_fd( pargs.r.ret_int ); break;
case oLoggerFD:
log_set_fd (translate_sys2libc_fd_int (pargs.r.ret_int, 1));