gpg: Do not bail on an invalid packet in the local keyring.
[gnupg.git] / NEWS
diff --git a/NEWS b/NEWS
index 345fe23..e4599c2 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,494 @@
+Noteworthy changes in version 2.3.0 (unreleased)
+------------------------------------------------
+
+  Changes also found in 2.2.14:
+
+  * gpg: Allow import of PGP desktop exported secret keys.  Also avoid
+   importing secret keys if the secret keyblock is not valid.  [#4392]
+
+  * gpg: Make invalid primary key algo obvious in key listings.
+
+  * sm: Do not mark a certificate in a key listing as de-vs compliant
+    if its use for a signature will not be possible.
+
+  * sm: Fix certificate creation with key on card.
+
+  * sm: Create rsa3072 bit certificates by default.
+
+  * sm: Print Yubikey attestation extensions with --dump-cert.
+
+  * agent: Fix cancellation handling for scdaemon.
+
+  * agent: Support --mode=ssh option for CLEAR_PASSPHRASE.  [#4340]
+
+  * scd: Fix flushing of the CA-FPR DOs in app-openpgp.
+
+  * scd: Avoid a conflict error with the "undefined" app.
+
+  * dirmngr: Add CSRF protection exception for protonmail.
+
+  * dirmngr: Fix build problems with gcc 9 in libdns.
+
+  * gpgconf: New option --show-socket for use with --launch.
+
+  * gpgtar: Make option -C work for archive creation.
+
+  Release-info: https://dev.gnupg.org/T4412
+  See-also: gnupg-announce/2019q1/000435.html
+
+  Changes also found in 2.2.13:
+
+  * gpg: Implement key lookup via keygrip (using the & prefix).
+
+  * gpg: Allow generating Ed25519 key from existing key.
+
+  * gpg: Emit an ERROR status line if no key was found with -k.
+
+  * gpg: Stop early when trying to create a primary Elgamal key.  [#4329]
+
+  * gpgsm: Print the card's key algorithms along with their keygrips
+    in interactive key generation.
+
+  * agent: Clear bogus pinentry cache in the error case.  [#4348]
+
+  * scd: Support "acknowledge button" feature.
+
+  * scd: Fix for USB INTERRUPT transfer.  [#4308]
+
+  * wks: Do no use compression for the the encrypted challenge and
+    response.
+
+  Release-info: https://dev.gnupg.org/T4290
+  See-also: gnupg-announce/2019q1/000434.html
+
+  Changes also found in 2.2.12:
+
+  * tools: New commands --install-key and --remove-key for
+    gpg-wks-client.  This allows to prepare a Web Key Directory on a
+    local file system for later upload to a web server.
+
+  * gpg: New --list-option "show-only-fpr-mbox".  This makes the use
+    of the new gpg-wks-client --install-key command easier on Windows.
+
+  * gpg: Improve processing speed when --skip-verify is used.
+
+  * gpg: Fix a bug where a LF was accidentally written to the console.
+
+  * gpg: --card-status now shows whether a card has the new KDF
+    feature enabled.
+
+  * agent: New runtime option --s2k-calibration=MSEC.  New configure
+    option --with-agent-s2k-calibration=MSEC.  [#3399]
+
+  * dirmngr: Try another keyserver from the pool on receiving a 502,
+    503, or 504 error.  [#4175]
+
+  * dirmngr: Avoid possible CSRF attacks via http redirects.  A HTTP
+    query will not anymore follow a 3xx redirect unless the Location
+    header gives the same host.  If the host is different only the
+    host and port is taken from the Location header and the original
+    path and query parts are kept.
+
+  * dirmngr: New command FLUSHCRL to flush all CRLS from disk and
+    memory.  [#3967]
+
+  * New simplified Chinese translation (zh_CN).
+
+  Release-info: https://dev.gnupg.org/T4289
+  See-also: gnupg-announce/2018q4/000433.html
+
+  Changes also found in 2.2.11:
+
+  * gpgsm: Fix CRL loading when intermediate certicates are not yet
+    trusted.
+
+  * gpgsm: Fix an error message about the digest algo.  [#4219]
+
+  * gpg: Fix a wrong warning due to new sign usage check introduced
+    with 2.2.9.  [#4014]
+
+  * gpg: Print the "data source" even for an unsuccessful keyserver
+    query.
+
+  * gpg: Do not store the TOFU trust model in the trustdb.  This
+    allows to enable or disable a TOFO model without triggering a
+    trustdb rebuild.  [#4134]
+
+  * scd: Fix cases of "Bad PIN" after using "forcesig".  [#4177]
+
+  * agent: Fix possible hang in the ssh handler.  [#4221]
+
+  * dirmngr: Tack the unmodified mail address to a WKD request.  See
+    commit a2bd4a64e5b057f291a60a9499f881dd47745e2f for details.
+
+  * dirmngr: Tweak diagnostic about missing LDAP server file.
+
+  * dirmngr: In verbose mode print the OCSP responder id.
+
+  * dirmngr: Fix parsing of the LDAP port.  [#4230]
+
+  * wks: Add option --directory/-C to the server.  Always build the
+    server on Unix systems.
+
+  * wks: Add option --with-colons to the client.  Support sites which
+    use the policy file instead of the submission-address file.
+
+  * Fix EBADF when gpg et al. are called by broken CGI scripts.
+
+  * Fix some minor memory leaks and bugs.
+
+  Release-info: https://dev.gnupg.org/T4233
+  See-also: gnupg-announce/2018q4/000432.html
+
+  Changes also found in 2.2.10:
+
+  * gpg: Refresh expired keys originating from the WKD.  [#2917]
+
+  * gpg: Use a 256 KiB limit for a WKD imported key.
+
+  * gpg: New option --known-notation.  [#4060]
+
+  * scd: Add support for the Trustica Cryptoucan reader.
+
+  * agent: Speed up starting during on-demand launching.  [#3490]
+
+  * dirmngr: Validate SRV records in WKD queries.
+
+  Release-info: https://dev.gnupg.org/T4112
+  See-also: gnupg-announce/2018q3/000428.html
+
+  Changes also found in 2.2.9:
+
+  * dirmngr: Fix recursive resolver mode and other bugs in the libdns
+    code.  [#3374,#3803,#3610]
+
+  * dirmngr: When using libgpg-error 1.32 or later a GnuPG build with
+    NTBTLS support (e.g. the standard Windows installer) does not
+    anymore block for dozens of seconds before returning data.
+
+  * gpg: Fix bug in --show-keys which actually imported revocation
+    certificates.  [#4017]
+
+  * gpg: Ignore too long user-ID and comment packets.  [#4022]
+
+  * gpg: Fix crash due to bad German translation.  Improved printf
+    format compile time check.
+
+  * gpg: Handle missing ISSUER sub packet gracefully in the presence of
+    the new ISSUER_FPR.  [#4046]
+
+  * gpg: Allow decryption using several passphrases in most cases.
+    [#3795,#4050]
+
+  * gpg: Command --show-keys now enables the list options
+    show-unusable-uids, show-unusable-subkeys, show-notations and
+    show-policy-urls by default.
+
+  * gpg: Command --show-keys now prints revocation certificates. [#4018]
+
+  * gpg: Add revocation reason to the "rev" and "rvs" records of the
+    option --with-colons.  [#1173]
+
+  * gpg: Export option export-clean does now remove certain expired
+    subkeys; export-minimal removes all expired subkeys.  [#3622]
+
+  * gpg: New "usage" property for the drop-subkey filters.  [#4019]
+
+  Release-info: https://dev.gnupg.org/T4036
+  See-also: gnupg-announce/2018q3/000427.html
+
+  Changes also found in 2.2.8:
+
+  * gpg: Decryption of messages not using the MDC mode will now lead
+    to a hard failure even if a legacy cipher algorithm was used.  The
+    option --ignore-mdc-error can be used to turn this failure into a
+    warning.  Take care: Never use that option unconditionally or
+    without a prior warning.
+
+  * gpg: The MDC encryption mode is now always used regardless of the
+    cipher algorithm or any preferences.  For testing --rfc2440 can be
+    used to create a message without an MDC.
+
+  * gpg: Sanitize the diagnostic output of the original file name in
+    verbose mode.  [#4012,CVE-2018-12020]
+
+  * gpg: Detect suspicious multiple plaintext packets in a more
+    reliable way.  [#4000]
+
+  * gpg: Fix the duplicate key signature detection code.  [#3994]
+
+  * gpg: The options --no-mdc-warn, --force-mdc, --no-force-mdc,
+    --disable-mdc and --no-disable-mdc have no more effect.
+
+  * gpg: New command --show-keys.
+
+  * agent: Add DBUS_SESSION_BUS_ADDRESS and a few other envvars to the
+    list of startup environment variables.  [#3947]
+
+  See-also: gnupg-announce/2018q2/000425.html
+
+  Changes also found in 2.2.7:
+
+  * gpg: New option --no-symkey-cache to disable the passphrase cache
+    for symmetrical en- and decryption.
+
+  * gpg: The ERRSIG status now prints the fingerprint if that is part
+    of the signature.
+
+  * gpg: Relax emitting of FAILURE status lines
+
+  * gpg: Add a status flag to "sig" lines printed with --list-sigs.
+
+  * gpg: Fix "Too many open files" when using --multifile.  [#3951]
+
+  * ssh: Return an error for unknown ssh-agent flags.  [#3880]
+
+  * dirmngr: Fix a regression since 2.1.16 which caused corrupted CRL
+    caches under Windows.  [#2448,#3923]
+
+  * dirmngr: Fix a CNAME problem with pools and TLS.  Also use a fixed
+    mapping of keys.gnupg.net to sks-keyservers.net.  [#3755]
+
+  * dirmngr: Try resurrecting dead hosts earlier (from 3 to 1.5 hours).
+
+  * dirmngr: Fallback to CRL if no default OCSP responder is configured.
+
+  * dirmngr: Implement CRL fetching via https.  Here a redirection to
+    http is explicitly allowed.
+
+  * dirmngr: Make LDAP searching and CRL fetching work under Windows.
+    This stopped working with 2.1.  [#3937]
+
+  * agent,dirmngr: New sub-command "getenv" for "getinfo" to ease
+    debugging.
+
+  See-also: gnupg-announce/2018q2/000424.html
+
+  Changes also found in 2.2.6:
+
+  * gpg,gpgsm: New option --request-origin to pretend requests coming
+    from a browser or a remote site.
+
+  * gpg: Fix race condition on trustdb.gpg updates due to too early
+    released lock.  [#3839]
+
+  * gpg: Emit FAILURE status lines in almost all cases.  [#3872]
+
+  * gpg: Implement --dry-run for --passwd to make checking a key's
+    passphrase straightforward.
+
+  * gpg: Make sure to only accept a certification capable key for key
+    signatures.  [#3844]
+
+  * gpg: Better user interaction in --card-edit for the factory-reset
+    sub-command.
+
+  * gpg: Improve changing key attributes in --card-edit by adding an
+    explicit "key-attr" sub-command.  [#3781]
+
+  * gpg: Print the keygrips in the --card-status.
+
+  * scd: Support KDF DO setup.  [#3823]
+
+  * scd: Fix some issues with PC/SC on Windows.  [#3825]
+
+  * scd: Fix suspend/resume handling in the CCID driver.
+
+  * agent: Evict cached passphrases also via a timer.  [#3829]
+
+  * agent: Use separate passphrase caches depending on the request
+    origin.  [#3858]
+
+  * ssh: Support signature flags.  [#3880]
+
+  * dirmngr: Handle failures related to missing IPv6 support
+    gracefully.  [#3331]
+
+  * Fix corner cases related to specified home directory with
+    drive letter on Windows.  [#3720]
+
+  * Allow the use of UNC directory names as homedir.  [#3818]
+
+  See-also: gnupg-announce/2018q2/000421.html
+
+  Changes also found in 2.2.5:
+
+  * gpg: Allow the use of the "cv25519" and "ed25519" short names in
+    addition to the canonical curve names in --batch --gen-key.
+
+  * gpg: Make sure to print all secret keys with option --list-only
+    and --decrypt.  [#3718]
+
+  * gpg: Fix the use of future-default with --quick-add-key for
+    signing keys.  [#3747]
+
+  * gpg: Select a secret key by checking availability under gpg-agent.
+    [#1967]
+
+  * gpg: Fix reversed prompt texts for --only-sign-text-ids.  [#3787]
+
+  * gpg,gpgsm: Fix detection of bogus keybox blobs on 32 bit systems.
+    [#3770]
+
+  * gpgsm: Fix regression since 2.1 in --export-secret-key-raw which
+    got $d mod (q-1)$ wrong.  Note that most tools automatically fixup
+    that parameter anyway.
+
+  * ssh: Fix a regression in getting the client'd PID on *BSD and
+    macOS.
+
+  * scd: Support the KDF Data Object of the OpenPGP card 3.3.  [#3152]
+
+  * scd: Fix a regression in the internal CCID driver for certain card
+    readers.  [#3508]
+
+  * scd: Fix a problem on NetBSD killing scdaemon on gpg-agent
+    shutdown.  [#3778]
+
+  * dirmngr: Improve returned error description on failure of DNS
+    resolving.  [#3756]
+
+  * wks: Implement command --install-key for gpg-wks-server.
+
+  * Add option STATIC=1 to the Speedo build system to allow a build
+    with statically linked versions of the core GnuPG libraries.  Also
+    use --enable-wks-tools by default by Speedo builds for Unix.
+
+  See-also: gnupg-announce/2018q1/000420.html
+
+  Changes also found in 2.2.4:
+
+  * gpg: Change default preferences to prefer SHA512.
+
+  * gpg: Print a warning when more than 150 MiB are encrypted using a
+    cipher with 64 bit block size.
+
+  * gpg: Print a warning if the MDC feature has not been used for a
+    message.
+
+  * gpg: Fix regular expression of domain addresses in trust
+    signatures. [#2923]
+
+  * agent: New option --auto-expand-secmem to help with high numbers
+    of concurrent connections.  Requires libgcrypt 1.8.2 for having
+    an effect.  [#3530]
+
+  * dirmngr: Cache responses of WKD queries.
+
+  * gpgconf: Add option --status-fd.
+
+  * wks: Add commands --check and --remove-key to gpg-wks-server.
+
+  * Increase the backlog parameter of the daemons to 64 and add
+    option --listen-backlog.
+
+  * New configure option --enable-run-gnupg-user-socket to first try a
+    socket directory which is not removed by systemd at session end.
+
+  See-also: gnupg-announce/2017q4/000419.html
+
+  Changes also found in 2.2.3:
+
+  * gpgsm: Fix initial keybox creation on Windows. [#3507]
+
+  * dirmngr: Fix crash in case of a CRL loading error. [#3510]
+
+  * Fix the name of the Windows registry key. [Git#4f5afaf1fd]
+
+  * gpgtar: Fix wrong behaviour of --set-filename. [#3500]
+
+  * gpg: Silence AKL retrieval messages. [#3504]
+
+  * agent: Use clock or clock_gettime for calibration. [#3056]
+
+  * agent: Improve robustness of the shutdown pending
+    state. [Git#7ffedfab89]
+
+  See-also: gnupg-announce/2017q4/000417.html
+
+  Changes also found in 2.2.2:
+
+  * gpg: Avoid duplicate key imports by concurrently running gpg
+    processes. [#3446]
+
+  * gpg: Fix creating on-disk subkey with on-card primary key. [#3280]
+
+  * gpg: Fix validity retrieval for multiple keyrings. [Debian#878812]
+
+  * gpg: Fix --dry-run and import option show-only for secret keys.
+
+  * gpg: Print "sec" or "sbb" for secret keys with import option
+    import-show. [#3431]
+
+  * gpg: Make import less verbose. [#3397]
+
+  * gpg: Add alias "Key-Grip" for parameter "Keygrip" and new
+    parameter "Subkey-Grip" to unattended key generation.  [#3478]
+
+  * gpg: Improve "factory-reset" command for OpenPGP cards.  [#3286]
+
+  * gpg: Ease switching Gnuk tokens into ECC mode by using the magic
+    keysize value 25519.
+
+  * gpgsm: Fix --with-colon listing in crt records for fields > 12.
+
+  * gpgsm: Do not expect X.509 keyids to be unique.  [#1644]
+
+  * agent: Fix stucked Pinentry when using --max-passphrase-days. [#3190]
+
+  * agent: New option --s2k-count.  [#3276 (workaround)]
+
+  * dirmngr: Do not follow https-to-http redirects. [#3436]
+
+  * dirmngr: Reduce default LDAP timeout from 100 to 15 seconds. [#3487]
+
+  * gpgconf: Ignore non-installed components for commands
+    --apply-profile and --apply-defaults. [#3313]
+
+  * Add configure option --enable-werror.  [#2423]
+
+  See-also: gnupg-announce/2017q4/000416.html
+
+  Changes also found in 2.2.1:
+
+  * gpg: Fix formatting of the user id in batch mode key generation
+    if only "name-email" is given.
+
+  * gpgv: Fix annoying "not suitable for" warnings.
+
+  * wks: Convey only the newest user id to the provider.  This is the
+    case if different names are used with the same addr-spec.
+
+  * wks: Create a complying user id for provider policy mailbox-only.
+
+  * wks: Add workaround for posteo.de.
+
+  * scd: Fix the use of large ECC keys with an OpenPGP card.
+
+  * dirmngr: Use system provided root certificates if no specific HKP
+    certificates are configured.  If build with GNUTLS, this was
+    already the case.
+
+  See-also: gnupg-announce/2017q3/000415.html
+
+  Release dates of 2.2.x versions:
+  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+  Version 2.2.1  (2017-09-19)
+  Version 2.2.2  (2017-11-07)
+  Version 2.2.3  (2017-11-20)
+  Version 2.2.4  (2017-12-20)
+  Version 2.2.5  (2018-02-22)
+  Version 2.2.6  (2018-04-09)
+  Version 2.2.7  (2018-05-02)
+  Version 2.2.8  (2018-06-08)
+  Version 2.2.9  (2018-07-12)
+  Version 2.2.10 (2018-08-30)
+  Version 2.2.11 (2018-11-06)
+  Version 2.2.12 (2018-12-14)
+  Version 2.2.13 (2019-02-12)
+  Version 2.2.14 (2019-03-19)
+
+
 Noteworthy changes in version 2.2.0 (2017-08-28)
 ------------------------------------------------
 
@@ -9,6 +500,8 @@ Noteworthy changes in version 2.2.0 (2017-08-28)
 
   * Fixed a few minor bugs.
 
+  See-also: gnupg-announce/2017q3/000413.html
+
 
 Noteworthy changes in version 2.1.23 (2017-08-09)
 -------------------------------------------------
@@ -627,7 +1120,7 @@ Noteworthy changes in version 2.1.11 (2016-01-26)
 
  * gpg: Emit PROGRESS status lines during key generation.
 
- * gpg: Don't check for ambigious or non-matching key specification in
+ * gpg: Don't check for ambiguous or non-matching key specification in
    the config file or given to --encrypt-to.  This feature will return
    in 2.3.x.
 
@@ -654,7 +1147,7 @@ Noteworthy changes in version 2.1.11 (2016-01-26)
  * dirmmgr: All configured keyservers are now searched.
 
  * dirmngr: Install CA certificate for hkps.pool.sks-keyservers.net.
-   Use this certiticate even if --hkp-cacert is not used.
+   Use this certificate even if --hkp-cacert is not used.
 
  * gpgtar: Add actual encryption code.  gpgtar does now fully replace
    gpg-zip.
@@ -688,7 +1181,7 @@ Noteworthy changes in version 2.1.10 (2015-12-04)
  * gpg: New option --only-sign-text-ids to exclude photo IDs from key
    signing.
 
- * gpg: Check for ambigious or non-matching key specification in the
+ * gpg: Check for ambiguous or non-matching key specification in the
    config file or given to --encrypt-to.
 
  * gpg: Show the used card reader with --card-status.
@@ -978,7 +1471,7 @@ Noteworthy changes in version 2.1.1 (2014-12-16)
 
  * gpg: Fixed regression in --refresh-keys.
 
- * gpg: Fixed regresion in %g and %p codes for --sig-notation.
+ * gpg: Fixed regression in %g and %p codes for --sig-notation.
 
  * gpg: Fixed best matching hash algo detection for ECDSA and EdDSA.
 
@@ -1058,7 +1551,7 @@ Noteworthy changes in version 2.1.0 (2014-11-06)
 
  * gpg: Default keyring is now created with a .kbx suffix.
 
- * gpg: Add a shortcut to the key capabilies menu (e.g. "=e" sets the
+ * gpg: Add a shortcut to the key capabilities menu (e.g. "=e" sets the
    encryption capabilities).
 
  * gpg: Fixed obsolete options parsing.
@@ -1250,7 +1743,7 @@ Noteworthy changes in version 2.1.0 (2014-11-06)
  * scdaemon: Does not anymore block after changing a card (regression
    fix).
 
- * tools: gpg-connect-agent does now proberly display the help output
+ * tools: gpg-connect-agent does now properly display the help output
    for "SCD HELP" commands.
 
 
@@ -1375,7 +1868,7 @@ Noteworthy changes in version 2.0.13 (2009-09-04)
  * Add hack to the internal CCID driver to allow the use of some
    Omnikey based card readers with 2048 bit keys.
 
- * GPG now repeatly asks the user to insert the requested OpenPGP
+ * GPG now repeatedly asks the user to insert the requested OpenPGP
    card.  This can be disabled with --limit-card-insert-tries=1.
 
  * Minor bug fixes.
@@ -1501,7 +1994,7 @@ Noteworthy changes in version 2.0.9 (2008-03-26)
 
  * Extended the PKITS framework.
 
- * Fixed a bug in the ambigious name detection.
+ * Fixed a bug in the ambiguous name detection.
 
  * Fixed possible memory corruption while importing OpenPGP keys (bug
    introduced with 2.0.8). [CVE-2008-1530]
@@ -2051,7 +2544,7 @@ Noteworthy changes in version 1.9.2 (2003-11-17)
    command but from the menu provided by the new --card-edit command.
 
  * PINs are now properly cached and there are only 2 PINs visible.
-   The 3rd PIN (CHV2) is internally syncronized with the regular PIN.
+   The 3rd PIN (CHV2) is internally synchronized with the regular PIN.
 
  * All kind of other internal stuff.
 
@@ -2755,7 +3248,7 @@ Noteworthy changes in version 1.0.1 (1999-12-16)
     * Fixed some minor bugs and the problem with conventional encrypted
       packets which did use the gpg v3 partial length headers.
 
-    * Add Indonesian and Portugese translations.
+    * Add Indonesian and Portuguese translations.
 
     * Fixed a bug with symmetric-only encryption using the non-default 3DES.
       The option --emulate-3des-s2k-bug may be used to decrypt documents
@@ -2858,7 +3351,7 @@ Noteworthy changes in version 0.9.8 (1999-06-26)
 
     * New option --with-key-data to list the public key parameters.
       New option -N to insert notations and a --set-policy-url.
-      A couple of other options to allow reseting of options.
+      A couple of other options to allow resetting of options.
 
     * Better support for HPUX.
 
@@ -3337,7 +3830,7 @@ Noteworthy changes in version 0.2.19 (1998-05-29)
 Noteworthy changes in version 0.2.18 (1998-05-15)
 ------------------------------------
 
-    * Splitted cipher/random.c, add new option "--disable-dev-random"
+    * Split cipher/random.c, add new option "--disable-dev-random"
       to configure to support the development of a random source for
       other systems. Prepared sourcefiles rand-unix.c, rand-w32.c
       and rand-dummy.c (which is used to allow compilation on systems