summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>2006-08-22 16:26:35 +0200
committerWerner Koch <wk@gnupg.org>2006-08-22 16:26:35 +0200
commitf03df78ba056e12a250acd3d23398a6ed655d599 (patch)
tree7a594cc77a18bf5d7f6283a9089e4c2881ca244e
parentMigrated more stuff to doc/ (diff)
downloadgnupg2-f03df78ba056e12a250acd3d23398a6ed655d599.tar.xz
gnupg2-f03df78ba056e12a250acd3d23398a6ed655d599.zip
added missing gpgv man page
-rw-r--r--doc/ChangeLog6
-rw-r--r--doc/Makefile.am9
-rw-r--r--doc/tools.texi130
-rw-r--r--doc/yat2m.c42
4 files changed, 176 insertions, 11 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
index b70e70fdc..4a86e4509 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,9 @@
+2006-08-22 Werner Koch <wk@g10code.com>
+
+ * yat2m.c (parse_file): Added code to skip a line after @mansect.
+
+ * gnupg7.texi: New.
+
2006-08-21 Werner Koch <wk@g10code.com>
* Makefile.am: Added other doc files from gpg 1.4.
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 73350fdc6..77e48aaed 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -24,8 +24,8 @@ EXTRA_DIST = DETAILS HACKING TRANSLATE OpenPGP KEYSERVER samplekeys.asc \
gnupg-badge-openpgp.pdf \
gnupg-card-architecture.eps gnupg-card-architecture.png \
gnupg-card-architecture.pdf \
- faq.raw FAQ faq.html \
- opt-homedir.texi see-also-note.texi
+ faq.raw FAQ faq.html gnupg7.texi \
+ opt-homedir.texi see-also-note.texi
BUILT_SOURCES = gnupg-card-architecture.eps gnupg-card-architecture.png \
gnupg-card-architecture.pdf FAQ faq.html
@@ -46,8 +46,9 @@ AM_MAKEFINFOFLAGS = -I $(srcdir)
YAT2M_OPTIONS = -I $(srcdir) \
--release "GnuPG @PACKAGE_VERSION@" --source "GNU Privacy Guard"
-myman_sources = gpg.texi gpgsm.texi gpg-agent.texi scdaemon.texi tools.texi
-myman_pages = gpg2.1 gpgsm.1 gpg-agent.1 scdaemon.1 \
+myman_sources = gnupg7.texi gpg.texi gpgsm.texi gpg-agent.texi \
+ scdaemon.texi tools.texi
+myman_pages = gnupg.7 gpg2.1 gpgsm.1 gpg-agent.1 scdaemon.1 gpgv2.1 \
watchgnupg.1 gpgconf.1 addgnupghome.8 gpg-preset-passphrase.1 \
gpg-connect-agent.1 gpgparsemail.1 symcryptrun.1 \
gpgsm-gencert.sh.1
diff --git a/doc/tools.texi b/doc/tools.texi
index d4f698482..07fcfd2d7 100644
--- a/doc/tools.texi
+++ b/doc/tools.texi
@@ -9,6 +9,7 @@ GnuPG comes with a couple of smaller tools:
@menu
* watchgnupg:: Read logs from a socket.
+* gpgv:: Verify OpenPGP signatures.
* addgnupghome:: Create .gnupg home directories.
* gpgconf:: Modify .gnupg home directories.
* gpgsm-gencert.sh:: Generate an X.509 certificate request.
@@ -89,6 +90,135 @@ Display a brief help page and exit
@c
+@c GPGV
+@c
+@manpage gpgv2.1
+@node gpgv
+@section Verify OpenPGP signatures
+@ifset manverb
+.B gpgv
+\- Verify OpenPGP signatures
+@end ifset
+
+@mansect synopsis
+@ifset manverb
+.B gpgv2
+.RI [ options ]
+.I signed_files
+@end ifset
+
+@mansect description
+@code{gpgv2} is an OpenPGP signature verification tool.
+
+This program is actually a stripped down version of @code{gpg} which is
+only able to check signatures. It is somewhat smaller than the fully blown
+@code{gpg} and uses a different (and simpler) way to check that
+the public keys used to make the signature are valid. There are
+no configuration files and only a few options are implemented.
+
+@code{gpgv2} assumes that all keys in the keyring are trustworthy.
+By default it uses a keyring named @file{trustedkeys.gpg} which is
+assumed to be in the home directory as defined by GnuPG or set by an
+option or an environment variable. An option may be used to specify
+another keyring or even multiple keyrings.
+
+@noindent
+@mansect options
+@code{gpgv2} recognizes these options:
+
+@table @gnupgtabopt
+
+@item --verbose
+@itemx -v
+@opindex verbose
+Gives more information during processing. If used
+twice, the input data is listed in detail.
+
+@item --quiet
+@itemx -q
+@opindex quiet
+Try to be as quiet as possible.
+
+@item --keyring @var{file}
+@opindex keyring
+Add @var{file} to the list of keyrings.
+If @var{file} begins with a tilde and a slash, these
+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 --status-fd @var{n}
+@opindex status-fd
+Write special status strings to the file descriptor @var{n}. See the
+file DETAILS in the documentation for a listing of them.
+
+@item --logger-fd @code{n}
+@opindex logger-fd
+Write log output to file descriptor @code{n} and not to stderr.
+
+@item --ignore-time-conflict
+@opindex ignore-time-conflict
+GnuPG normally checks that the timestamps associated with keys and
+signatures have plausible values. However, sometimes a signature seems to
+be older than the key due to clock problems. This option turns these
+checks into warnings.
+
+@include opt-homedir.texi
+
+@end table
+
+@mansect return value
+
+The program returns 0 if everything was fine, 1 if at least
+one signature was bad, and other error codes for fatal errors.
+
+@mansect examples
+@subsection Examples
+
+@table @asis
+
+@item gpgv2 @code{pgpfile}
+@itemx gpgv2 @code{sigfile}
+Verify the signature of the file. 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", ".sig" or ".sign") from
+@code{sigfile}.
+
+@end table
+
+@mansect environment
+@subsection Environment
+
+@table @asis
+
+@item HOME
+Used to locate the default home directory.
+
+@item GNUPGHOME
+If set directory used instead of "~/.gnupg".
+
+@end table
+
+@mansect files
+@subsection FILES
+
+@table @asis
+
+@item ~/.gnupg/trustedkeys.gpg
+The default keyring with the allowed keys
+
+@end table
+
+@mansect see also
+@command{gpg2}(1)
+@include see-also-note.texi
+
+
+
+
+@c
@c ADDGNUPGHOME
@c
@manpage addgnupghome.8
diff --git a/doc/yat2m.c b/doc/yat2m.c
index 39feea9fe..6d8786bad 100644
--- a/doc/yat2m.c
+++ b/doc/yat2m.c
@@ -40,8 +40,12 @@
go into the man page. These macros need to be used without leading
left space. Processing starts after a "manpage" macro has been
seen. "mansect" identifies the section and yat2m make sure to
- emit the sections in the proper order. To insert verbatim troff
- markup, the follwing texinfo code may be used:
+ emit the sections in the proper order. Note that @mansect skips
+ the next input line if that line begins with @subsection or
+ @chapheading.
+
+ To insert verbatim troff markup, the follwing texinfo code may be
+ used:
@ifset manverb
.B whateever you want
@@ -51,11 +55,24 @@
@c man:.B whatever you want
- This is useful in case you need just one line. @section is
- ignored, however @subsection gets rendered as ".SS". @menu is
- completely skipped. Several man pages may be extracted from one
- file, either using the --store or the --select option.
- Makefile snippet from GnuPG:
+ This is useful in case you need just one line. If you want to
+ include parts only in the man page but keep the texinfo
+ translation you may use:
+
+ @ifset isman
+ stuff to be rendered only on man pages
+ @end ifset
+
+ or to exclude stuff from man pages:
+
+ @ifclear isman
+ stuff not to be rendered on man pages
+ @end ifclear
+
+ the keyword @section is ignored, however @subsection gets rendered
+ as ".SS". @menu is completely skipped. Several man pages may be
+ extracted from one file, either using the --store or the --select
+ option.
*/
@@ -794,6 +811,7 @@ parse_file (const char *fname, FILE *fp, char **section_name)
int in_verbatim = 0;
int in_pause = 0;
int skip_to_end = 0; /* Used to skip over menu entries. */
+ int skip_sect_line = 0; /* Skip after @mansect. */
line = xmalloc (LINESIZE);
while (fgets (line, LINESIZE, fp))
@@ -810,6 +828,15 @@ parse_file (const char *fname, FILE *fp, char **section_name)
break;
}
line[--n] = 0;
+
+ if (skip_sect_line)
+ {
+ skip_sect_line = 0;
+ if (!strncmp (line, "@subsection", 11)
+ || !strncmp (line, "@chapheading", 12))
+ continue;
+ }
+
/* We only parse lines we need and ignore the rest. There are a
few macros used to control this as well as one @ifset
command. Parts we know about are saved away into containers
@@ -862,6 +889,7 @@ parse_file (const char *fname, FILE *fp, char **section_name)
free (*section_name);
*section_name = ascii_strupr (xstrdup (p));
in_pause = 0;
+ skip_sect_line = 1;
}
}
else if (n == 9 && !memcmp (line, "@manpause", 9))