annotate man/pgg.texi @ 82970:5ef78f4dd84f

[ Merge from Emacs trunk: ] 2004-08-30 Juanma Barranquero <lektu@terra.es> * ietf-drums.el (ietf-drums-remove-whitespace): Fix character constant. [Emacs/trunk 2003-02-18] 2004-08-30 Andreas Schwab <schwab@suse.de> * nnlistserv.el (nnlistserv-kk-wash-article): Fix paren nesting. * gnus-score.el (gnus-summary-increase-score): Fix format string. [Emacs/trunk 2004-02-08] 2004-08-30 Stefan Monnier <monnier@iro.umontreal.ca> * nnimap.el (nnimap-demule): Avoid string-as-multibyte. [Emacs/trunk 2004-05-06] 2004-08-30 Kim F. Storm <storm@cua.dk> * nntp.el (nntp-authinfo-file): Add :group 'nntp. * nnimap.el (nnimap-authinfo-file, nnimap-prune-cache): Add :group 'nnimap. [Emacs/trunk 2004-06-29]
author Reiner Steib <Reiner.Steib@gmx.de>
date Mon, 30 Aug 2004 18:18:31 +0000
parents bb6c986199c4
children e88e622cd27a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
82955
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
1 \input texinfo @c -*-texinfo-*-
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
2
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
3 @setfilename ../info/pgg
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
4
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
5 @set VERSION 0.1
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
6
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
7 @direntry
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
8 * PGG: (pgg). Emacs interface to various PGP implementations.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
9 @end direntry
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
10
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
11 @settitle PGG @value{VERSION}
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
12
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
13 @ifinfo
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
14 This file describes the PGG.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
15
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
16 Copyright (C) 2003 Free Software Foundation, Inc.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
17 Copyright (C) 2001 Daiki Ueno.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
18
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
19 Permission is granted to copy, distribute and/or modify this document
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
20 under the terms of the GNU Free Documentation License, Version 1.1 or
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
21 any later version published by the Free Software Foundation; with no
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
22 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
23 Texts. A copy of the license is included in the section entitled "GNU
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
24 Free Documentation License".
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
25 @end ifinfo
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
26
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
27 @tex
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
28
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
29 @titlepage
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
30 @title PGG
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
31
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
32 @author by Daiki Ueno
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
33 @page
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
34
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
35 @vskip 0pt plus 1filll
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
36 Copyright @copyright{} 2001 Daiki Ueno.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
37
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
38 Permission is granted to copy, distribute and/or modify this document
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
39 under the terms of the GNU Free Documentation License, Version 1.1 or
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
40 any later version published by the Free Software Foundation; with no
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
41 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
42 Texts. A copy of the license is included in the section entitled "GNU
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
43 Free Documentation License".
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
44 @end titlepage
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
45 @page
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
46
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
47 @end tex
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
48
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
49 @node Top
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
50 @top PGG
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
51 This manual describes PGG. PGG is an interface library between Emacs
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
52 and various tools for secure communication. PGG also provides a simple
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
53 user interface to encrypt, decrypt, sign, and verify MIME messages.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
54
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
55 @menu
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
56 * Overview:: What PGG is.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
57 * Prerequisites:: Complicated stuff you may have to do.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
58 * How to use:: Getting started quickly.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
59 * Architecture::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
60 * Parsing OpenPGP packets::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
61 * Function Index::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
62 * Variable Index::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
63 @end menu
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
64
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
65 @node Overview
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
66 @chapter Overview
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
67
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
68 PGG is an interface library between Emacs and various tools for secure
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
69 communication. Even though Mailcrypt has similar feature, it does not
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
70 deal with detached PGP messages, normally used in PGP/MIME
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
71 infrastructure. This was the main reason why I wrote the new library.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
72
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
73 PGP/MIME is an application of MIME Object Security Services (RFC1848).
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
74 The standard is documented in RFC2015.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
75
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
76 @node Prerequisites
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
77 @chapter Prerequisites
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
78
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
79 PGG requires at least one implementation of privacy guard system.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
80 This document assumes that you have already obtained and installed them
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
81 and that you are familiar with its basic functions.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
82
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
83 By default, PGG uses GnuPG, but Pretty Good Privacy version 2 or version
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
84 5 are also supported. If you are new to such a system, I recommend that
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
85 you should look over the GNU Privacy Handbook (GPH) which is available
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
86 at @uref{http://www.gnupg.org/gph/}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
87
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
88 @node How to use
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
89 @chapter How to use
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
90
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
91 The toplevel interface of this library is quite simple, and only
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
92 intended to use with public-key cryptographic operation.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
93
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
94 To use PGG, evaluate following expression at the beginning of your
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
95 application program.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
96
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
97 @lisp
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
98 (require 'pgg)
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
99 @end lisp
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
100
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
101 If you want to check existence of pgg.el at runtime, instead you can
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
102 list autoload setting for desired functions as follows.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
103
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
104 @lisp
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
105 (autoload 'pgg-encrypt-region "pgg"
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
106 "Encrypt the current region." t)
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
107 (autoload 'pgg-decrypt-region "pgg"
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
108 "Decrypt the current region." t)
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
109 (autoload 'pgg-sign-region "pgg"
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
110 "Sign the current region." t)
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
111 (autoload 'pgg-verify-region "pgg"
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
112 "Verify the current region." t)
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
113 (autoload 'pgg-insert-key "pgg"
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
114 "Insert the ASCII armored public key." t)
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
115 (autoload 'pgg-snarf-keys-region "pgg"
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
116 "Import public keys in the current region." t)
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
117 @end lisp
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
118
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
119 @menu
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
120 * User Commands::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
121 * Selecting an implementation::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
122 * Caching passphrase::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
123 * Default user identity::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
124 @end menu
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
125
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
126 @node User Commands
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
127 @section User Commands
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
128
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
129 At this time you can use some cryptographic commands. The behavior of
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
130 these commands relies on a fashion of invocation because they are also
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
131 intended to be used as library functions. In case you don't have the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
132 signer's public key, for example, the function @code{pgg-verify-region}
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
133 fails immediately, but if the function had been called interactively, it
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
134 would ask you to retrieve the signer's public key from the server.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
135
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
136 @deffn Command pgg-encrypt-region start end recipients &optional sign
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
137 Encrypt the current region between @var{start} and @var{end} for
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
138 @var{recipients}. When the function were called interactively, you
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
139 would be asked about the recipients.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
140
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
141 If encryption is successful, it replaces the current region contents (in
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
142 the accessible portion) with the resulting data.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
143
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
144 If optional argument @var{sign} is non-nil, the function is request to
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
145 do a combined sign and encrypt. This currently only work with GnuPG.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
146 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
147
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
148 @deffn Command pgg-decrypt-region start end
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
149 Decrypt the current region between @var{start} and @var{end}. If
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
150 decryption is successful, it replaces the current region contents (in
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
151 the accessible portion) with the resulting data.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
152 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
153
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
154 @deffn Command pgg-sign-region start end &optional cleartext
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
155 Make the signature from text between @var{start} and @var{end}. If the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
156 optional third argument @var{cleartext} is non-@code{nil}, or the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
157 function is called interactively, it does not create a detached
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
158 signature. In such a case, it replaces the current region contents (in
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
159 the accessible portion) with the resulting data.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
160 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
161
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
162 @deffn Command pgg-verify-region start end &optional signature fetch
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
163 Verify the current region between @var{start} and @var{end}. If the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
164 optional third argument @var{signature} is non-@code{nil}, or the function
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
165 is called interactively, it is treated as the detached signature of the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
166 current region.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
167
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
168 If the optional 4th argument @var{fetch} is non-@code{nil}, or the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
169 function is called interactively, we attempt to fetch the signer's
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
170 public key from the key server.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
171 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
172
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
173 @deffn Command pgg-insert-key
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
174 Retrieve the user's public key and insert it as ASCII-armored format.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
175 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
176
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
177 @deffn Command pgg-snarf-keys-region start end
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
178 Collect public keys in the current region between @var{start} and
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
179 @var{end}, and add them into the user's keyring.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
180 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
181
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
182 @node Selecting an implementation
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
183 @section Selecting an implementation
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
184
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
185 Since PGP has a long history and there are a number of PGP
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
186 implementations available today, the function which each one has differs
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
187 considerably. For example, if you are using GnuPG, you know you can
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
188 select cipher algorithm from 3DES, CAST5, BLOWFISH, and so on, but on
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
189 the other hand the version 2 of PGP only supports IDEA.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
190
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
191 By default, if the variable @code{pgg-scheme} is not set, PGG searches the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
192 registered scheme for an implementation of the requested service
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
193 associated with the named algorithm. If there are no match, PGG uses
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
194 @code{pgg-default-scheme}. In other words, there are two options to
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
195 control which command is used to process the incoming PGP armors. One
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
196 is for encrypting and signing, the other is for decrypting and
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
197 verifying.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
198
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
199 @defvar pgg-scheme
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
200 Force specify the scheme of PGP implementation for decrypting and verifying.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
201 The value can be @code{gpg}, @code{pgp}, and @code{pgp5}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
202 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
203
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
204 @defvar pgg-default-scheme
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
205 Force specify the scheme of PGP implementation for encrypting and signing.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
206 The value can be @code{gpg}, @code{pgp}, and @code{pgp5}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
207 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
208
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
209 @node Caching passphrase
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
210 @section Caching passphrase
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
211
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
212 PGG provides a simple passphrase caching mechanism. If you want to
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
213 arrange the interaction, set the variable @code{pgg-read-passphrase}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
214
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
215 @defvar pgg-cache-passphrase
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
216 If non-@code{nil}, store passphrases. The default value of this
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
217 variable is @code{t}. If you were worry about security issue, however,
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
218 you could stop caching with setting it @code{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
219 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
220
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
221 @defvar pgg-passphrase-cache-expiry
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
222 Elapsed time for expiration in seconds.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
223 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
224
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
225 @node Default user identity
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
226 @section Default user identity
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
227
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
228 The PGP implementation is usually able to select the proper key to use
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
229 for signing and decryption, but if you have more than one key, you may
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
230 need to specify the key id to use.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
231
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
232 @defvar pgg-default-user-id
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
233 User ID of your default identity. It defaults to the value returned
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
234 by @samp{(user-login-name)}. You can customize this variable.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
235 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
236
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
237 @defvar pgg-gpg-user-id
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
238 User ID of the GnuPG default identity. It defaults to @samp{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
239 This overrides @samp{pgg-default-user-id}. You can customize this
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
240 variable.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
241 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
242
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
243 @defvar pgg-pgp-user-id
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
244 User ID of the PGP 2.x/6.x default identity. It defaults to
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
245 @samp{nil}. This overrides @samp{pgg-default-user-id}. You can
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
246 customize this variable.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
247 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
248
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
249 @defvar pgg-pgp5-user-id
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
250 User ID of the PGP 5.x default identity. It defaults to @samp{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
251 This overrides @samp{pgg-default-user-id}. You can customize this
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
252 variable.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
253 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
254
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
255 @node Architecture
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
256 @chapter Architecture
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
257
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
258 PGG introduces the notion of a "scheme of PGP implementation" (used
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
259 interchangeably with "scheme" in this document). This term refers to a
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
260 singleton object wrapped with the luna object system.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
261
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
262 Since PGG was designed for accessing and developing PGP functionality,
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
263 the architecture had to be designed not just for interoperability but
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
264 also for extensiblity. In this chapter we explore the architecture
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
265 while finding out how to write the PGG backend.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
266
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
267 @menu
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
268 * Initializing::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
269 * Backend methods::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
270 * Getting output::
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
271 @end menu
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
272
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
273 @node Initializing
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
274 @section Initializing
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
275
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
276 A scheme must be initialized before it is used.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
277 It had better guarantee to keep only one instance of a scheme.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
278
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
279 The following code is snipped out of @file{pgg-gpg.el}. Once an
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
280 instance of @code{pgg-gpg} scheme is initialized, it's stored to the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
281 variable @code{pgg-scheme-gpg-instance} and will be reused from now on.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
282
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
283 @lisp
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
284 (defvar pgg-scheme-gpg-instance nil)
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
285
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
286 (defun pgg-make-scheme-gpg ()
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
287 (or pgg-scheme-gpg-instance
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
288 (setq pgg-scheme-gpg-instance
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
289 (luna-make-entity 'pgg-scheme-gpg))))
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
290 @end lisp
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
291
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
292 The name of the function must follow the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
293 regulation---@code{pgg-make-scheme-} follows the backend name.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
294
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
295 @node Backend methods
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
296 @section Backend methods
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
297
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
298 In each backend, these methods must be present. The output of these
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
299 methods is stored in special buffers (@ref{Getting output}), so that
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
300 these methods must tell the status of the execution.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
301
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
302 @deffn Method pgg-scheme-lookup-key scheme string &optional type
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
303 Return keys associated with @var{string}. If the optional third
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
304 argument @var{type} is non-@code{nil}, it searches from the secret
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
305 keyrings.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
306 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
307
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
308 @deffn Method pgg-scheme-encrypt-region scheme start end recipients &optional sign
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
309 Encrypt the current region between @var{start} and @var{end} for
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
310 @var{recipients}. If @var{sign} is non-nil, do a combined sign and
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
311 encrypt. If encryption is successful, it returns @code{t}, otherwise
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
312 @code{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
313 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
314
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
315 @deffn Method pgg-scheme-decrypt-region scheme start end
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
316 Decrypt the current region between @var{start} and @var{end}. If
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
317 decryption is successful, it returns @code{t}, otherwise @code{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
318 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
319
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
320 @deffn Method pgg-scheme-sign-region scheme start end &optional cleartext
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
321 Make the signature from text between @var{start} and @var{end}. If the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
322 optional third argument @var{cleartext} is non-@code{nil}, it does not
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
323 create a detached signature. If signing is successful, it returns
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
324 @code{t}, otherwise @code{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
325 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
326
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
327 @deffn Method pgg-scheme-verify-region scheme start end &optional signature
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
328 Verify the current region between @var{start} and @var{end}. If the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
329 optional third argument @var{signature} is non-@code{nil}, it is treated
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
330 as the detached signature of the current region. If the signature is
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
331 successfully verified, it returns @code{t}, otherwise @code{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
332 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
333
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
334 @deffn Method pgg-scheme-insert-key scheme
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
335 Retrieve the user's public key and insert it as ASCII-armored format.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
336 On success, it returns @code{t}, otherwise @code{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
337 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
338
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
339 @deffn Method pgg-scheme-snarf-keys-region scheme start end
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
340 Collect public keys in the current region between @var{start} and
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
341 @var{end}, and add them into the user's keyring.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
342 On success, it returns @code{t}, otherwise @code{nil}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
343 @end deffn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
344
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
345 @node Getting output
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
346 @section Getting output
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
347
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
348 The output of the backend methods (@ref{Backend methods}) is stored in
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
349 special buffers, so that these methods must tell the status of the
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
350 execution.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
351
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
352 @defvar pgg-errors-buffer
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
353 The standard error output of the execution of the PGP command is stored
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
354 here.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
355 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
356
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
357 @defvar pgg-output-buffer
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
358 The standard output of the execution of the PGP command is stored here.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
359 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
360
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
361 @defvar pgg-status-buffer
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
362 The rest of status information of the execution of the PGP command is
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
363 stored here.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
364 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
365
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
366 @node Parsing OpenPGP packets
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
367 @chapter Parsing OpenPGP packets
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
368
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
369 The format of OpenPGP messages is maintained in order to publish all
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
370 necessary information needed to develop interoperable applications.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
371 The standard is documented in RFC 2440.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
372
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
373 PGG has its own parser for the OpenPGP packets.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
374
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
375 @defun pgg-parse-armor string
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
376 List the sequence of packets in @var{string}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
377 @end defun
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
378
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
379 @defun pgg-parse-armor-region start end
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
380 List the sequence of packets in the current region between @var{start}
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
381 and @var{end}.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
382 @end defun
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
383
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
384 @defvar pgg-ignore-packet-checksum
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
385 If non-@code{nil}, don't check the checksum of the packets.
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
386 @end defvar
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
387
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
388 @node Function Index
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
389 @chapter Function Index
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
390 @printindex fn
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
391
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
392 @node Variable Index
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
393 @chapter Variable Index
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
394 @printindex vr
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
395
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
396 @summarycontents
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
397 @contents
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
398 @bye
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
399
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
400 @c End:
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
401
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
402 @ignore
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
403 arch-tag: 0c205838-34b9-41a5-b9d7-49ae57ccac85
bb6c986199c4 Import from the v5_10 branch of the Gnus repository.
Reiner Steib <Reiner.Steib@gmx.de>
parents:
diff changeset
404 @end ignore