Skip to content

Commit 650293c

Browse files
committed
sm/ * server.c (skip_options): Skip leading spaces. (has_option): Honor "--". (cmd_export): Add option --data to do an inline export. Skip all options. * certdump.c (gpgsm_fpr_and_name_for_status): New. * verify.c (gpgsm_verify): Use it to print correct status messages. doc/ * gpgsm.texi (GPGSM EXPORT): Document changes.
1 parent f48d38e commit 650293c

File tree

12 files changed

+1381
-1701
lines changed

12 files changed

+1381
-1701
lines changed

agent/command.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ has_option_name (const char *line, const char *name)
153153

154154
/* Skip over options. It is assumed that leading spaces have been
155155
removed (this is the case for lines passed to a handler from
156-
assuan). Bkanls after the options are also removed. */
156+
assuan). Blanks after the options are also removed. */
157157
static char *
158158
skip_options (char *line)
159159
{

doc/ChangeLog

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
2006-11-14 Werner Koch <[email protected]>
2+
3+
* gpgsm.texi (GPGSM EXPORT): Document changes.
4+
15
2006-11-11 Werner Koch <[email protected]>
26

37
* gnupg.texi (Top): Move gpg-agent part before gpg.

doc/DETAILS

+40-23
Original file line numberDiff line numberDiff line change
@@ -199,48 +199,62 @@ more arguments in future versions.
199199
is useful to define a context for parsing ERROR status
200200
messages. No arguments are currently defined.
201201

202-
GOODSIG <long keyid> <username>
202+
GOODSIG <long_keyid_or_fpr> <username>
203203
The signature with the keyid is good. For each signature only
204204
one of the three codes GOODSIG, BADSIG or ERRSIG will be
205205
emitted and they may be used as a marker for a new signature.
206206
The username is the primary one encoded in UTF-8 and %XX
207-
escaped.
207+
escaped. The fingerprint may be used instead of the long keyid
208+
if it is available. This is the case with CMS and might
209+
eventually also be available for OpenPGP.
208210

209-
EXPSIG <long keyid> <username>
211+
EXPSIG <long_keyid_or_fpr> <username>
210212
The signature with the keyid is good, but the signature is
211213
expired. The username is the primary one encoded in UTF-8 and
212-
%XX escaped.
214+
%XX escaped. The fingerprint may be used instead of the long
215+
keyid if it is available. This is the case with CMS and might
216+
eventually also be available for OpenPGP.
213217

214-
EXPKEYSIG <long keyid> <username>
215-
The signature with the keyid is good, but the signature was
218+
EXPKEYSIG <long_keyid_or_fpr> <username>
219+
The signature with the keyid is good, but the signature was
216220
made by an expired key. The username is the primary one
217-
encoded in UTF-8 and %XX escaped.
221+
encoded in UTF-8 and %XX escaped. The fingerprint may be used
222+
instead of the long keyid if it is available. This is the
223+
case with CMS and might eventually also be available for
224+
OpenPGP.
218225

219-
REVKEYSIG <long keyid> <username>
226+
REVKEYSIG <long_keyid_or_fpr> <username>
220227
The signature with the keyid is good, but the signature was
221-
made by a revoked key. The username is the primary one
222-
encoded in UTF-8 and %XX escaped.
223-
224-
BADSIG <long keyid> <username>
225-
The signature with the keyid has not been verified okay.
226-
The username is the primary one encoded in UTF-8 and %XX
227-
escaped.
228-
229-
ERRSIG <long keyid> <pubkey_algo> <hash_algo> \
228+
made by a revoked key. The username is the primary one encoded
229+
in UTF-8 and %XX escaped. The fingerprint may be used instead
230+
of the long keyid if it is available. This is the case with
231+
CMS and might eventually also be available for OpenPGP.
232+
233+
BADSIG <long_keyid_or_fpr> <username>
234+
The signature with the keyid has not been verified okay. The
235+
username is the primary one encoded in UTF-8 and %XX
236+
escaped. The fingerprint may be used instead of the long keyid
237+
if it is available. This is the case with CMS and might
238+
eventually also be available for OpenPGP.
239+
240+
ERRSIG <long_keyid_or_fpr> <pubkey_algo> <hash_algo> \
230241
<sig_class> <timestamp> <rc>
231242
It was not possible to check the signature. This may be
232-
caused by a missing public key or an unsupported algorithm.
233-
A RC of 4 indicates unknown algorithm, a 9 indicates a missing
234-
public key. The other fields give more information about
235-
this signature. sig_class is a 2 byte hex-value.
243+
caused by a missing public key or an unsupported algorithm. A
244+
RC of 4 indicates unknown algorithm, a 9 indicates a missing
245+
public key. The other fields give more information about this
246+
signature. sig_class is a 2 byte hex-value. The fingerprint
247+
may be used instead of the long keyid if it is available.
248+
This is the case with CMS and might eventually also be
249+
available for OpenPGP.
236250

237251
Note, that TIMESTAMP may either be a number with seconds since
238252
epoch or an ISO 8601 string which can be detected by the
239253
presence of the letter 'T' inside.
240254

241255
VALIDSIG <fingerprint in hex> <sig_creation_date> <sig-timestamp>
242-
<expire-timestamp> <sig-version> <reserved> <pubkey-algo>
243-
<hash-algo> <sig-class> <primary-key-fpr>
256+
<expire-timestamp> [ <sig-version> <reserved> <pubkey-algo>
257+
<hash-algo> <sig-class> <primary-key-fpr> ]
244258

245259
The signature with the keyid is good. This is the same as
246260
GOODSIG but has the fingerprint as the argument. Both status
@@ -255,6 +269,9 @@ more arguments in future versions.
255269
useful to get back to the primary key without running gpg
256270
again for this purpose.
257271

272+
The optional parameters are used for OpenPGP and are not
273+
available for CMS signatures.
274+
258275
Note, that *-TIMESTAMP may either be a number with seconds
259276
since epoch or an ISO 8601 string which can be detected by the
260277
presence of the letter 'T' inside.

doc/announce-2.0.txt

+188
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
Hello!
2+
3+
The GNU project is pleased to announce the availability of a new
4+
stable GnuPG release: Version 2.0.0.
5+
6+
The GNU Privacy Guard (GnuPG) is GNU's tool for secure communication
7+
and data storage. It can be used to encrypt data, create digital
8+
signatures, help authenticating using Secure Shell and to provide a
9+
framework for public key cryptography. It includes an advanced key
10+
management facility and is compliant with the OpenPGP and S/MIME
11+
standards.
12+
13+
GnuPG-2 has a different architecture than GnuPG-1 (e.g. 1.4.5) in that
14+
it splits up functionality into several modules. However, both
15+
versions may be installed alongside without any conflict. In fact,
16+
the gpg version from GnuPG-1 is able to make use of the gpg-agent as
17+
included in GnuPG-2 and allows for seamless passphrase caching. The
18+
advantage of GnuPG-1 is its smaller size and the lack of dependency on
19+
other modules at run and build time. We will keep maintaining GnuPG-1
20+
versions because they are very useful for small systems and for server
21+
based applications requiring only OpenPGP support.
22+
23+
GnuPG is distributed under the terms of the GNU General Public License
24+
(GPL). GnuPG-2 works best on GNU/Linux or *BSD systems. Other POSIX
25+
compliant systems are also supported but have not yet been tested very
26+
well.
27+
28+
29+
What's New in GnuPG-2
30+
=====================
31+
32+
* The *gpg-agent* is the central place to maintain private keys and
33+
to cache passphrases. It is implemented as a daemon to be started
34+
with a user session.
35+
36+
* *gpgsm* is an implementation of the X.509 and CMS standards and
37+
provides the cryptographic core to implement the S/MIME protocol.
38+
The command line interface is very similar to the one of gpg. This
39+
helps adding S/MIME to application currently providing OpenPGP
40+
support.
41+
42+
* *scdaemon* is a daemon run by gpg-agent to access different types
43+
of smart cards using a unified interface.
44+
45+
* *gpg-connect-agent* is a tool to help scripts directly accessing
46+
services of gpg-agent and scdaemon.
47+
48+
* *gpgconf* is a tool to maintain the configuration files of all
49+
modules using a well defined API.
50+
51+
* Support for Dirmngr, a separate package to maintain certificate
52+
revocation lists, do OCSP requests and to run LDAP queries.
53+
54+
* Support for the Secure Shell Agent protocol. In fact, gpg-agent
55+
may be used as full replacement of the commonly used ssh-agent
56+
daemon.
57+
58+
* Smart card support for the Secure Shell.
59+
60+
* Documentation is now done in Texinfo. Thus besides Info, HTML and
61+
PDF versions may easily be generated.
62+
63+
* Man pages for all tools.
64+
65+
66+
Getting the Software
67+
====================
68+
69+
Please follow the instructions found at http://www.gnupg.org/download/
70+
or read on:
71+
72+
GnuPG 2.0.0 may be downloaded from one of the GnuPG mirror sites or
73+
direct from ftp://ftp.gnupg.org/gcrypt/ . The list of mirrors can be
74+
found at http://www.gnupg.org/mirrors.html . Note, that GnuPG is not
75+
available at ftp.gnu.org.
76+
77+
On the mirrors you should find the following files in the *gnupg*
78+
directory:
79+
80+
gnupg-2.0.0.tar.bz2 (3.8M)
81+
gnupg-2.0.0.tar.bz2.sig
82+
83+
GnuPG source compressed using BZIP2 and OpenPGP signature.
84+
85+
Please try another mirror if exceptional your mirror is not yet up to
86+
date. GnuPG-2 requires a couple of libraries to be installed; see the
87+
README file or the output of the configure run for details.
88+
89+
90+
Checking the Integrity
91+
======================
92+
93+
In order to check that the version of GnuPG which you are going to
94+
install is an original and unmodified one, you can do it in one of
95+
the following ways:
96+
97+
* If you already have a trusted version of GnuPG installed, you
98+
can simply check the supplied signature. For example to check the
99+
signature of the file gnupg-2.0.0.tar.bz2 you would use this command:
100+
101+
gpg --verify gnupg-2.0.0.tar.bz2.sig
102+
103+
This checks whether the signature file matches the source file.
104+
You should see a message indicating that the signature is good and
105+
made by that signing key. Make sure that you have the right key,
106+
either by checking the fingerprint of that key with other sources
107+
or by checking that the key has been signed by a trustworthy other
108+
key. Note, that you can retrieve the signing key using the command
109+
110+
finger wk ,at' g10code.com
111+
112+
or using a key server like
113+
114+
gpg --recv-key 1CE0C630
115+
116+
The distribution key 1CE0C630 is signed by the well known key
117+
5B0358A2. If you get an key expired message, you should retrieve a
118+
fresh copy as the expiration date might have been prolonged.
119+
120+
NEVER USE A GNUPG VERSION YOU JUST DOWNLOADED TO CHECK THE
121+
INTEGRITY OF THE SOURCE - USE AN EXISTING GNUPG INSTALLATION!
122+
123+
* If you are not able to use an existing version of GnuPG, you have
124+
to verify the SHA-1 checksum. Assuming you downloaded the file
125+
gnupg-2.0.0.tar.bz2, you would run the sha1sum command like this:
126+
127+
sha1sum gnupg-2.0.0.tar.bz2
128+
129+
and check that the output matches this:
130+
131+
c335957368ea88bcb658922e7d3aae7e3ac6896d gnupg-2.0.0.tar.bz2
132+
133+
134+
Internationalization
135+
====================
136+
137+
GnuPG comes with support for 27 languages. Due to a lot of new and
138+
changed strings most translations are not entirely complete. However
139+
the Turkish and German translators have been very fast in completing
140+
their translations. The Russian one came in just a few hours too
141+
late. Updates of the other translations are expected for the next
142+
releases.
143+
144+
145+
Documentation
146+
=============
147+
148+
We are currently working on an installation guide to explain in more
149+
detail how to configure the new features. As of now the chapters on
150+
gpg-agent and gpgsm include brief information on how to set up the
151+
whole thing. Please watch the GnuPG website for updates of the
152+
documentation. In the meantime you may search the GnuPG mailing list
153+
archives or ask on the gnupg-users mailing lists for advise on how to
154+
solve problems. Many of the new features are around for several years
155+
and thus enough public knowledge is already available.
156+
157+
158+
Support
159+
=======
160+
161+
Improving GnuPG is costly, but you can help! We are looking for
162+
organizations that find GnuPG useful and wish to contribute back. You
163+
can contribute by reporting bugs, improve the software, or by donating
164+
money.
165+
166+
Commercial support contracts for GnuPG are available, and they help
167+
finance continued maintenance. g10 Code GmbH, a Duesseldorf based
168+
company owned and headed by GnuPG's principal author, is currently
169+
funding GnuPG development. We are always looking for interesting
170+
development projects.
171+
172+
A service directory is available at:
173+
174+
http://www.gnupg.org/service.html
175+
176+
177+
Thanks
178+
======
179+
180+
We have to thank all the people who helped with this release, be it
181+
testing, coding, translating, suggesting, auditing, administering the
182+
servers, spreading the word or answering questions on the mailing
183+
lists.
184+
185+
186+
Happy Hacking,
187+
188+
The GnuPG Team (David, Werner and all other contributors)

doc/gpgsm.texi

+10-4
Original file line numberDiff line numberDiff line change
@@ -1072,16 +1072,22 @@ Note that options are valid for the entire session.
10721072
To export certificate from the internal key database the command:
10731073

10741074
@example
1075-
EXPORT @var{pattern}
1075+
EXPORT [--data [--armor] [--base64]] [--] @var{pattern}
10761076
@end example
10771077

10781078
is used. To allow multiple patterns (which are ORed) quoting is
10791079
required: Spaces are to be translated into "+" or into "%20"; in turn
10801080
this requires that the usual escape quoting rules are done.
10811081

1082-
The format of the output depends on what was set with the OUTPUT
1083-
command. When using @acronym{PEM} encoding a few informational lines
1084-
are prepended.
1082+
If the @option{--data} option has not been given, the format of the
1083+
output depends on what was set with the OUTPUT command. When using
1084+
@acronym{PEM} encoding a few informational lines are prepended.
1085+
1086+
If the @option{--data} has been given, a target set via OUTPUT is
1087+
ignored and the data is returned inline using standard
1088+
@code{D}-lines. This avoids the need for an extra file descriptor. In
1089+
this case the options @option{--armor} and @option{--base64} may be used
1090+
in the same way as with the OUTPUT command.
10851091

10861092

10871093
@node GPGSM IMPORT

po/ChangeLog

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
2006-11-13 Werner Koch <[email protected]>
2+
3+
* ru.po: Update from Maxim.
4+
15
2006-11-10 Werner Koch <[email protected]>
26

37
* de.po: Received complete update from Walter.

0 commit comments

Comments
 (0)