Blame docs/v1.2.0-ReleaseNotes

Packit 94f725
Cryptsetup 1.2.0 Release Notes
Packit 94f725
==============================
Packit 94f725
Packit 94f725
Changes since version 1.2.0-rc1
Packit 94f725
Packit 94f725
 * Fix crypt_activate_by_keyfile() to work with PLAIN devices.
Packit 94f725
 * Fix plain create command to properly handle keyfile size.
Packit 94f725
 * Update translations.
Packit 94f725
Packit 94f725
Changes since version 1.1.3
Packit 94f725
Packit 94f725
Important changes
Packit 94f725
~~~~~~~~~~~~~~~~~
Packit 94f725
Packit 94f725
 * Add text version of *FAQ* (Frequently Asked Questions) to distribution.
Packit 94f725
Packit 94f725
 * Add selection of random/urandom number generator for luksFormat
Packit 94f725
 (option --use-random and --use-urandom).
Packit 94f725
Packit 94f725
 (This affects only long term volume key in *luksFormat*,
Packit 94f725
 not RNG used for salt and AF splitter).
Packit 94f725
Packit 94f725
  You can also set the default to /dev/random during compilation with
Packit 94f725
  --enable-dev-random. Compiled-in default is printed in --help output.
Packit 94f725
Packit 94f725
  Be very careful before changing default to blocking /dev/random use here.
Packit 94f725
Packit 94f725
 * Fix *luksRemoveKey* to not ask for remaining keyslot passphrase,
Packit 94f725
 only for removed one.
Packit 94f725
Packit 94f725
 * No longer support *luksDelKey* (replaced with luksKillSlot).
Packit 94f725
  * if you want to remove particular passphrase, use *luksKeyRemove*
Packit 94f725
  * if you want to remove particular keyslot, use *luksKillSlot*
Packit 94f725
Packit 94f725
 Note that in batch mode *luksKillSlot* allows removing of any keyslot
Packit 94f725
 without question, in normal mode requires passphrase or keyfile from
Packit 94f725
 other keyslot.
Packit 94f725
Packit 94f725
 * *Default alignment* for device (if not overridden by topology info)
Packit 94f725
 is now (multiple of) *1MiB*.
Packit 94f725
 This reflects trends in storage technologies and aligns to the same
Packit 94f725
 defaults for partitions and volume management.
Packit 94f725
Packit 94f725
 * Allow explicit UUID setting in *luksFormat* and allow change it later
Packit 94f725
 in *luksUUID* (--uuid parameter).
Packit 94f725
Packit 94f725
 * All commands using key file now allows limited read from keyfile using
Packit 94f725
 --keyfile-size and --new-keyfile-size parameters (in bytes).
Packit 94f725
Packit 94f725
 This change also disallows overloading of --key-size parameter which
Packit 94f725
 is now exclusively used for key size specification (in bits.)
Packit 94f725
Packit 94f725
 * *luksFormat* using pre-generated master key now properly allows
Packit 94f725
 using key file (only passphrase was allowed prior to this update).
Packit 94f725
Packit 94f725
 * Add --dump-master-key option for *luksDump* to perform volume (master)
Packit 94f725
 key dump. Note that printed information allows accessing device without
Packit 94f725
 passphrase so it must be stored encrypted.
Packit 94f725
Packit 94f725
 This operation is useful for simple Key Escrow function (volume key and
Packit 94f725
 encryption parameters printed on paper on safe place).
Packit 94f725
Packit 94f725
 This operation requires passphrase or key file.
Packit 94f725
Packit 94f725
 * The reload command is no longer supported.
Packit 94f725
 (Use dmsetup reload instead if needed. There is no real use for this
Packit 94f725
 function except explicit data corruption:-)
Packit 94f725
Packit 94f725
 * Cryptsetup now properly checks if underlying device is in use and
Packit 94f725
 disallows *luksFormat*, *luksOpen* and *create* commands on open
Packit 94f725
 (e.g. already mapped or mounted) device.
Packit 94f725
Packit 94f725
 * Option --non-exclusive (already deprecated) is removed.
Packit 94f725
Packit 94f725
Libcryptsetup API additions:
Packit 94f725
Packit 94f725
 * new functions
Packit 94f725
  * crypt_get_type() - explicit query to crypt device context type
Packit 94f725
  * crypt_resize() - new resize command using context
Packit 94f725
  * crypt_keyslot_max() - helper to get number of supported keyslots
Packit 94f725
  * crypt_get_active_device() - get active device info
Packit 94f725
  * crypt_set/get_rng_type() - random/urandom RNG setting
Packit 94f725
  * crypt_set_uuid() - explicit UUID change of existing device
Packit 94f725
  * crypt_get_device_name() - get underlying device name
Packit 94f725
Packit 94f725
 * Fix optional password callback handling.
Packit 94f725
Packit 94f725
 * Allow to activate by internally cached volume key immediately after
Packit 94f725
 crypt_format() without active slot (for temporary devices with
Packit 94f725
 on-disk metadata)
Packit 94f725
Packit 94f725
 * libcryptsetup is binary compatible with 1.1.x release and still
Packit 94f725
 supports legacy API calls
Packit 94f725
Packit 94f725
 * cryptsetup binary now uses only new API calls.
Packit 94f725
Packit 94f725
 * Static compilation of both library (--enable-static) and cryptsetup
Packit 94f725
 binary (--enable-static-cryptsetup) is now properly implemented by common
Packit 94f725
 libtool logic.
Packit 94f725
Packit 94f725
 Prior to this it produced miscompiled dynamic cryptsetup binary with
Packit 94f725
 statically linked libcryptsetup.
Packit 94f725
Packit 94f725
 The static binary is compiled as src/cryptsetup.static in parallel
Packit 94f725
 with dynamic build if requested.
Packit 94f725
Packit 94f725
Other changes
Packit 94f725
~~~~~~~~~~~~~
Packit 94f725
 * Fix default plain password entry from terminal in activate_by_passphrase.
Packit 94f725
 * Initialize volume key from active device in crypt_init_by_name()
Packit 94f725
 * Fix cryptsetup binary exit codes.
Packit 94f725
   0 - success, otherwise fail
Packit 94f725
   1 - wrong parameters
Packit 94f725
   2 - no permission
Packit 94f725
   3 - out of memory
Packit 94f725
   4 - wrong device specified
Packit 94f725
   5 - device already exists or device is busy
Packit 94f725
 * Remove some obsolete info from man page.
Packit 94f725
 * Add more regression tests for commands.
Packit 94f725
 * Fix possible double free when handling master key file.
Packit 94f725
 * Fix pkg-config use in automake scripts.
Packit 94f725
 * Wipe iteration and salt after luksKillSlot in LUKS header.
Packit 94f725
 * Rewrite file differ test to C (and fix it to really work).
Packit 94f725
 * Do not query non-existent device twice (cryptsetup status /dev/nonexistent).
Packit 94f725
 * Check if requested hash is supported before writing LUKS header.
Packit 94f725
 * Fix problems reported by clang scan-build.