Fixed segv in gpg-agent (command marktrusted).
[gnupg.git] / NEWS
1 Noteworthy changes in version 2.0.10 (unreleased)
2 -------------------------------------------------
3
4  * New keyserver helper gpg2keys_kdns as generic DNS CERT lookup.  Run
5    with --help for a short description.  Requires the ADNS library.
6
7  * New mechanisms "local" and "nodefault" for --auto-key-locate [gpg].
8    Fixed a few problems with this option.
9
10  * [W32] Initialized the socket subsystem for all keyserver helpers.
11
12  * New gpg2 command --locate-keys.
13
14  * New gpg2 options --with-sig-list and --with-sig-check.
15
16  * Made gpgsm's --output option work with --export-secret-key-p12.
17
18  * gpg-connect-agent accepts commands given as command line arguments.
19
20
21 Noteworthy changes in version 2.0.9 (2008-03-26)
22 ------------------------------------------------
23
24  * Gpgsm always tries to locate missing certificates from a running
25    Dirmngr's cache.
26
27  * Tweaks for Windows.
28
29  * The Admin PIN for OpenPGP cards may now be entered with the pinpad.
30
31  * Improved certificate chain construction.
32
33  * Extended the PKITS framework.
34
35  * Fixed a bug in the ambigious name detection.
36
37  * Fixed possible memory corruption while importing OpenPGP keys (bug
38    introduced with 2.0.8). [CVE-2008-1530]
39
40  * Minor bug fixes.
41
42
43 Noteworthy changes in version 2.0.8 (2007-12-20)
44 ------------------------------------------------
45
46  * Enhanced gpg-connect-agent with a small scripting language.
47
48  * New option --list-config for gpgconf.
49
50  * Fixed a crash in gpgconf.
51
52  * Gpg-agent now supports the passphrase quality bar of the latest
53    Pinentry.
54
55  * The envvars XAUTHORITY and PINENTRY_USER_DATA are now passed to the
56    Pinentry.
57
58  * Fixed the auto creation of the key stub for smartcards.  
59
60  * Fixed a rare bug in decryption using the OpenPGP card.
61
62  * Creating DSA2 keys is now possible.
63
64  * New option --extra-digest-algo for gpgsm to allow verification of
65    broken signatures.
66
67  * Allow encryption with legacy Elgamal sign+encrypt keys with option
68    --rfc2440.
69
70  * Windows is now a supported platform.
71
72  * Made sure that under Windows the file permissions of the socket are
73    taken into account.  This required a change of our socket emulation
74    code and changed the IPC protocol under Windows.
75
76
77 Noteworthy changes in version 2.0.7 (2007-09-10)
78 ------------------------------------------------
79
80  * Fixed encryption problem if duplicate certificates are in the
81    keybox.
82
83  * Made it work on Windows Vista.  Note that the entire Windows port
84    is still considered Beta.
85
86  * Add new options min-passphrase-nonalpha, check-passphrase-pattern,
87    enforce-passphrase-constraints and max-passphrase-days to
88    gpg-agent.
89
90  * Add command --check-components to gpgconf.  Gpgconf now uses the
91    installed versions of the programs and does not anymore search via
92    PATH for them.
93
94
95 Noteworthy changes in version 2.0.6 (2007-08-16)
96 ------------------------------------------------
97
98  * GPGSM does now grok --default-key.
99
100  * GPGCONF is now aware of --default-key and --encrypt-to. 
101
102  * GPGSM does again correctly print the serial number as well the the
103    various keyids.  This was broken since 2.0.4.
104
105  * New option --validation-model and support for the chain-model.
106
107  * Improved Windows support.
108
109  
110 Noteworthy changes in version 2.0.5 (2007-07-05)
111 ------------------------------------------------
112
113  * Switched license to GPLv3.
114
115  * Basic support for Windows.  Run "./autogen.sh --build-w32" to build
116    it.  As usual the mingw cross compiling toolchain is required.
117
118  * Fixed bug when using the --p12-charset without --armor.
119
120  * The command --gen-key may now be used instead of the
121    gpgsm-gencert.sh script.
122
123  * Changed key generation to reveal less information about the
124    machine.  Bug fixes for gpg2's card key generation.
125
126
127 Noteworthy changes in version 2.0.4 (2007-05-09)
128 ------------------------------------------------
129
130  * The server mode key listing commands are now also working for
131    systems without the funopen/fopencookie API.
132
133  * PKCS#12 import now tries several encodings in case the passphrase
134    was not utf-8 encoded.  New option --p12-charset for gpgsm.
135
136  * Improved the libgcrypt logging support in all modules.
137
138
139 Noteworthy changes in version 2.0.3 (2007-03-08)
140 ------------------------------------------------
141
142  * By default, do not allow processing multiple plaintexts in a single
143    stream.  Many programs that called GnuPG were assuming that GnuPG
144    did not permit this, and were thus not using the plaintext boundary
145    status tags that GnuPG provides.  This change makes GnuPG reject
146    such messages by default which makes those programs safe again.
147    --allow-multiple-messages returns to the old behavior. [CVE-2007-1263].
148
149  * New --verify-option show-primary-uid-only. 
150
151  * gpgconf may now reads a global configuration file to select which
152    options are changeable by a frontend.  The new applygnupgdefaults
153    tool may be used by an admin to set default options for all users.
154
155  * The PIN pad of the Cherry XX44 keyboard is now supported.  The
156    DINSIG and the NKS applications are now also aware of PIN pads.
157
158
159 Noteworthy changes in version 2.0.2 (2007-01-31)
160 ------------------------------------------------
161
162  * Fixed a serious and exploitable bug in processing encrypted
163    packages. [CVE-2006-6235].
164
165  * Added --passphrase-repeat to set the number of times GPG will
166    prompt for a new passphrase to be repeated.  This is useful to help
167    memorize a new passphrase.  The default is 1 repetition.
168
169  * Using a PIN pad does now also work for the signing key.
170
171  * A warning is displayed by gpg-agent if a new passphrase is too
172    short.  New option --min-passphrase-len defaults to 8.
173
174  * The status code BEGIN_SIGNING now shows the used hash algorithms.
175
176
177 Noteworthy changes in version 2.0.1 (2006-11-28)
178 ------------------------------------------------
179
180  * Experimental support for the PIN pads of the SPR 532 and the Kaan
181    Advanced card readers.  Add "disable-keypad" scdaemon.conf if you
182    don't want it.  Does currently only work for the OpenPGP card and
183    its authentication and decrypt keys.
184
185  * Fixed build problems on some some platforms and crashes on amd64.
186
187  * Fixed a buffer overflow in gpg2. [bug#728,CVE-2006-6169]
188
189
190 Noteworthy changes in version 2.0.0 (2006-11-11)
191 ------------------------------------------------
192
193  * First stable version of a GnuPG integrating OpenPGP and S/MIME.
194
195
196 Noteworthy changes in version 1.9.95 (2006-11-06)
197 -------------------------------------------------
198
199  * Minor bug fixes.
200
201
202 Noteworthy changes in version 1.9.94 (2006-10-24)
203 -------------------------------------------------
204
205  * Keys for gpgsm may now be specified using a keygrip.  A keygrip is
206    indicated by a prefixing it with an ampersand.
207
208  * gpgconf now supports switching the CMS cipher algo (e.g. to AES).
209
210  * New command --gpgconf-test for all major tools. This may be used to
211    check whether the configuration file is sane.
212
213
214 Noteworthy changes in version 1.9.93 (2006-10-18)
215 -------------------------------------------------
216
217  * In --with-validation mode gpgsm will now also ask whether a root
218    certificate should be trusted.
219
220  * Link to Pth only if really necessary.
221
222  * Fixed a pubring corruption bug in gpg2 occurring when importing
223    signatures or keys with insane lengths.
224
225  * Fixed v3 keyID calculation bug in gpg2.
226
227  * More tweaks for certificates without extensions.
228
229
230 Noteworthy changes in version 1.9.92 (2006-10-11)
231 -------------------------------------------------
232
233  * Bug fixes.
234
235
236 Noteworthy changes in version 1.9.91 (2006-10-04)
237 -------------------------------------------------
238
239  * New "relax" flag for trustlist.txt to allow root CA certificates
240    without BasicContraints.
241
242  * [gpg2] Removed the -k PGP 2 compatibility hack.  -k is now an
243    alias for --list-keys.
244
245  * [gpg2] Print a warning if "-sat" is used instead of "--clearsign".
246
247
248 Noteworthy changes in version 1.9.90 (2006-09-25)
249 -------------------------------------------------
250
251  * Made readline work for gpg.
252
253  * Cleanups und minor bug fixes.
254
255  * Included translations from gnupg 1.4.5.
256
257
258 Noteworthy changes in version 1.9.23 (2006-09-18)
259 -------------------------------------------------
260
261  * Regular man pages for most tools are now build directly from the
262    Texinfo source.
263
264  * The gpg code from 1.4.5 has been fully merged into this release.
265    The configure option --enable-gpg is still required to build this
266    gpg part.  For production use of OpenPGP the gpg version 1.4.5 is
267    still recommended.  Note, that gpg will be installed under the name
268    gpg2 to allow coexisting with an 1.4.x gpg.
269
270  * API change in gpg-agent's pkdecrypt command.  Thus an older gpgsm
271    may not be used with the current gpg-agent.
272
273  * The scdaemon will now call a script on reader status changes.
274
275  * gpgsm now allows file descriptor passing for "INPUT", "OUTPUT" and
276    "MESSAGE".
277
278  * The gpgsm server may now output a key listing to the output file
279    handle. This needs to be enabled using "OPTION list-to-output=1".
280
281  * The --output option of gpgsm has now an effect on list-keys.
282
283  * New gpgsm commands --dump-chain and list-chain.
284
285  * gpg-connect-agent has new options to utilize descriptor passing.
286
287  * A global trustlist may now be used.  See doc/examples/trustlist.txt.
288
289  * When creating a new pubring.kbx keybox common certificates are
290    imported.
291
292
293 Noteworthy changes in version 1.9.22 (2006-07-27)
294 -------------------------------------------------
295
296  * Enhanced pkcs#12 support to allow import from simple keyBags.
297
298  * Exporting to pkcs#12 now create bag attributes so that Mozilla is
299    able to import the files.
300
301  * Fixed uploading of certain keys to the smart card.
302
303
304 Noteworthy changes in version 1.9.21 (2006-06-20)
305 -------------------------------------------------
306
307  * New command APDU for scdaemon to allow using it for general card
308    access.  Might be used through gpg-connect-agent by using the SCD
309    prefix command.
310
311  * Support for the CardMan 4040 PCMCIA reader (Linux 2.6.15 required).
312
313  * Scdaemon does not anymore reset cards at the end of a connection. 
314
315  * Kludge to allow use of Bundesnetzagentur issued X.509 certificates.
316
317  * Added --hash=xxx option to scdaemon's PKSIGN command.
318
319  * Pkcs#12 files are now created with a MAC.  This is for better
320    interoperability.
321
322  * Collected bug fixes and minor other changes.
323
324
325 Noteworthy changes in version 1.9.20 (2005-12-20)
326 -------------------------------------------------
327
328  * Importing pkcs#12 files created be recent versions of Mozilla works
329    again.
330
331  * Basic support for qualified signatures.
332
333  * New debug tool gpgparsemail. 
334
335
336 Noteworthy changes in version 1.9.19 (2005-09-12)
337 -------------------------------------------------
338
339  * The Belgian eID card is now supported for signatures and ssh.
340    Other pkcs#15 cards should work as well.
341
342  * Fixed bug in --export-secret-key-p12 so that certificates are again
343    included.
344
345
346 Noteworthy changes in version 1.9.18 (2005-08-01)
347 -------------------------------------------------
348
349  * [gpgsm] Now allows for more than one email address as well as URIs
350    and dnsNames in certificate request generation.  A keygrip may be
351    given to create a request from an existing key.
352
353  * A couple of minor bug fixes.
354
355
356 Noteworthy changes in version 1.9.17 (2005-06-20)
357 -------------------------------------------------
358
359  * gpg-connect-agent has now features to handle Assuan INQUIRE
360    commands.
361
362  * Internal changes for OpenPGP cards. New Assuan command WRITEKEY.
363
364  * GNU Pth is now a hard requirement.
365
366  * [scdaemon] Support for OpenSC has been removed.  Instead a new and
367    straightforward pkcs#15 modules has been written.  As of now it
368    does allows only signing using TCOS cards but we are going to
369    enhance it to match all the old capabilities.
370
371  * [gpg-agent] New option --write-env-file and Assuan command
372    UPDATESTARTUPTTY.
373
374  * [gpg-agent] New option --default-cache-ttl-ssh to set the TTL for
375    SSH passphrase caching independent from the other passphrases.
376
377
378 Noteworthy changes in version 1.9.16 (2005-04-21)
379 -------------------------------------------------
380
381  * gpg-agent does now support the ssh-agent protocol and thus allows
382    to use the pinentry as well as the OpenPGP smartcard with ssh.
383
384  * New tool gpg-connect-agent as a general client for the gpg-agent.
385
386  * New tool symcryptrun as a wrapper for certain encryption tools.
387
388  * The gpg tool is not anymore build by default because those gpg
389    versions available in the gnupg 1.4 series are far more matured.
390
391
392 Noteworthy changes in version 1.9.15 (2005-01-13)
393 -------------------------------------------------
394
395  * Fixed passphrase caching bug.
396
397  * Better support for CCID readers; the reader from Cherry RS 6700 USB
398    does now work.
399
400
401 Noteworthy changes in version 1.9.14 (2004-12-22)
402 -------------------------------------------------
403
404  * [gpg-agent] New option --use-standard-socket to allow the use of a
405    fixed socket.  gpgsm falls back to this socket if GPG_AGENT_INFO
406    has not been set.
407
408  * Ported to MS Windows with some functional limitations.
409
410  * New tool gpg-preset-passphrase.
411
412
413 Noteworthy changes in version 1.9.13 (2004-12-03)
414 -------------------------------------------------
415
416  * [gpgsm] New option --prefer-system-dirmngr.
417
418  * Minor cleanups and debugging aids.
419
420
421 Noteworthy changes in version 1.9.12 (2004-10-22)
422 -------------------------------------------------
423
424  * [scdaemon] Partly rewrote the PC/SC code.
425
426  * Removed the sc-investigate tool.  It is now in a separate package
427    available at ftp://ftp.g10code.com/g10code/gscutils/ .
428
429  * [gpg-agent] Fixed logging problem.
430
431
432 Noteworthy changes in version 1.9.11 (2004-10-01)
433 -------------------------------------------------
434
435  * When using --import along with --with-validation, the imported
436    certificates are validated and only imported if they are fully
437    valid.
438
439  * [gpg-agent] New option --max-cache-ttl.
440
441  * [gpg-agent] When used without --daemon or --server, gpg-agent now
442    check whether a agent is already running and usable.
443
444  * Fixed some i18n problems.
445
446
447 Noteworthy changes in version 1.9.10 (2004-07-22)
448 -------------------------------------------------
449
450  * Fixed a serious bug in the checking of trusted root certificates.
451
452  * New configure option --enable-agent-pnly allows to build and
453    install just the agent.
454
455  * Fixed a problem with the log file handling.
456
457
458 Noteworthy changes in version 1.9.9 (2004-06-08)
459 ------------------------------------------------
460
461  * [gpg-agent] The new option --allow-mark-trusted is now required to
462    allow gpg-agent to add a key to the trustlist.txt after user
463    confirmation.
464
465  * Creating PKCS#10 requests does now honor the key usage.
466
467
468 Noteworthy changes in version 1.9.8 (2004-04-29)
469 ------------------------------------------------
470
471  * [scdaemon] Overhauled the internal CCID driver.
472
473  * [scdaemon] Status files named ~/.gnupg/reader_<n>.status are now
474    written when using the internal CCID driver.
475
476  * [gpgsm] New commands --dump-{,secret,external}-keys to show a very
477    detailed view of the certificates.
478
479  * The keybox gets now compressed after 3 hours and ephemeral
480    stored certificates are deleted after about a day.
481
482  * [gpg] Usability fixes for --card-edit.  Note, that this has already
483    been ported back to gnupg-1.3
484
485
486 Noteworthy changes in version 1.9.7 (2004-04-06)
487 ------------------------------------------------
488
489  * Instrumented the modules for gpgconf.
490
491  * Added support for DINSIG card applications.
492
493  * Include the smimeCapabilities attribute with signed messages.
494
495  * Now uses the gettext domain "gnupg2" to avoid conflicts with gnupg
496    versions < 1.9.
497
498
499 Noteworthy changes in version 1.9.6 (2004-03-06)
500 ------------------------------------------------
501
502  * Code cleanups and bug fixes.
503
504
505 Noteworthy changes in version 1.9.5 (2004-02-21)
506 ------------------------------------------------
507
508  * gpg-protect-tool gets now installed into libexec as it ought to be.
509    Cleaned up the build system to better comply with the coding
510    standards.
511
512  * [gpgsm] The --import command is now able to autodetect pkcs#12
513    files and import secret and private keys from this file format.
514    A new command --export-secret-key-p12 is provided to allow
515    exporting of secret keys in PKCS\#12 format.
516
517  * [gpgsm] The pinentry will now present a description of the key for
518    whom the passphrase is requested.
519
520  * [gpgsm] New option --with-validation to check the validity of key
521    while listing it.
522
523  * New option --debug-level={none,basic,advanced,expert,guru} to map
524    the debug flags to sensitive levels on a per program base.
525
526
527 Noteworthy changes in version 1.9.4 (2004-01-30)
528 ------------------------------------------------
529
530  * Added support for the Telesec NKS 2.0 card application.
531
532  * Added simple tool addgnupghome to create .gnupg directories from
533    /etc/skel/.gnupg.
534
535  * Various minor bug fixes and cleanups; mainly gpgsm and gpg-agent
536    related.
537
538
539 Noteworthy changes in version 1.9.3 (2003-12-23)
540 ------------------------------------------------
541
542  * New gpgsm options --{enable,disable}-ocsp to validate keys using
543    OCSP. This option requires a not yet released DirMngr version.
544    Default is disabled.
545
546  * The --log-file option may now be used to print logs to a socket.
547    Prefix the socket name with "socket://" to enable this.  This does
548    not work on all systems and falls back to stderr if there is a
549    problem with the socket.
550
551  * The options --encrypt-to and --no-encrypt-to now work the same in
552    gpgsm as in gpg.  Note, they are also used in server mode.
553
554  * Duplicated recipients are now silently removed in gpgsm.
555
556
557 Noteworthy changes in version 1.9.2 (2003-11-17)
558 ------------------------------------------------
559
560  * On card key generation is no longer done using the --gen-key
561    command but from the menu provided by the new --card-edit command.
562
563  * PINs are now properly cached and there are only 2 PINs visible.
564    The 3rd PIN (CHV2) is internally syncronized with the regular PIN.
565
566  * All kind of other internal stuff.
567
568
569 Noteworthy changes in version 1.9.1 (2003-09-06)
570 ------------------------------------------------
571
572  * Support for OpenSC is back. scdaemon supports a --disable-opensc to
573    disable OpenSC use at runtime, so that PC/SC or ct-API can still be
574    used directly.
575
576  * Rudimentary support for the SCR335 smartcard reader using an
577    internal driver.  Requires current libusb from CVS.
578
579  * Bug fixes.
580
581
582 Noteworthy changes in version 1.9.0 (2003-08-05)
583 ------------------------------------------------
584
585       ====== PLEASE SEE README-alpha =======
586
587  * gpg has been renamed to gpg2 and gpgv to gpgv2.  This is a
588    temporary change to allow co-existing with stable gpg versions.
589
590  * ~/.gnupg/gpg.conf-1.9.0 is fist tried as config file before the
591    usual gpg.conf.
592
593  * Removed the -k, -kv and -kvv commands.  -k is now an alias to
594    --list-keys.  New command -K as alias for --list-secret-keys.
595
596  * Removed --run-as-shm-coprocess feature.
597
598  * gpg does now also use libgcrypt, libgpg-error is required.
599
600  * New gpgsm commands --call-dirmngr and --call-protect-tool.
601
602  * Changing a passphrase is now possible using "gpgsm --passwd"
603
604  * The content-type attribute is now recognized and created.
605
606  * The agent does now reread certain options on receiving a HUP.
607
608  * The pinentry is now forked for each request so that clients with
609    different environments are supported.  When running in daemon mode
610    and --keep-display is not used the DISPLAY variable is ignored.
611
612  * Merged stuff from the newpg branch and started this new
613    development branch.
614
615
616  Copyright 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
617
618  This file is free software; as a special exception the author gives
619  unlimited permission to copy and/or distribute it, with or without
620  modifications, as long as this notice is preserved.
621
622  This file is distributed in the hope that it will be useful, but
623  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
624  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.