Merge branch 'master' into veritysetup
authorMilan Broz <gmazyland@gmail.com>
Thu, 31 May 2012 13:11:00 +0000 (15:11 +0200)
committerMilan Broz <gmazyland@gmail.com>
Thu, 31 May 2012 13:11:00 +0000 (15:11 +0200)
ChangeLog
configure.in
docs/v1.4.3-ReleaseNotes [new file with mode: 0644]
lib/utils_fips.c
po/nl.po

index cae9437..fca8200 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,7 @@
 2012-05-27  Milan Broz  <gmazyland@gmail.com>
        * Fix readonly activation if underlying device is readonly (1.4.0).
        * Include stddef.h in libdevmapper.h (size_t definition).
+       * Version 1.4.3.
 
 2012-05-21  Milan Broz  <gmazyland@gmail.com>
        * Add --enable-fips for linking with fipscheck library.
index 93c4615..96af3e0 100644 (file)
@@ -1,9 +1,9 @@
 AC_PREREQ([2.67])
-AC_INIT([cryptsetup],[1.4.3-git])
+AC_INIT([cryptsetup],[1.4.3])
 
 dnl library version from <major>.<minor>.<release>[-<suffix>]
 LIBCRYPTSETUP_VERSION=$(echo $PACKAGE_VERSION | cut -f1 -d-)
-LIBCRYPTSETUP_VERSION_INFO=5:0:1
+LIBCRYPTSETUP_VERSION_INFO=6:0:2
 
 AC_CONFIG_SRCDIR(src/cryptsetup.c)
 AC_CONFIG_MACRO_DIR([m4])
diff --git a/docs/v1.4.3-ReleaseNotes b/docs/v1.4.3-ReleaseNotes
new file mode 100644 (file)
index 0000000..f084e06
--- /dev/null
@@ -0,0 +1,62 @@
+Cryptsetup 1.4.3 Release Notes
+==============================
+
+Changes since version 1.4.2
+
+* Fix readonly activation if underlying device is readonly (1.4.0).
+
+* Fix loop mapping on readonly file.
+
+* Include stddef.h in libdevmapper.h (size_t definition).
+
+* Fix keyslot removal for device with 4k hw block (1.4.0).
+(Wipe keyslot failed in this case.)
+
+* Relax --shared flag to allow mapping even for overlapping segments.
+
+  The --shared flag (and API CRYPT_ACTIVATE_SHARED flag) is now able
+  to map arbitrary overlapping area. From API it is even usable
+  for LUKS devices.
+  It is user responsibility to not cause data corruption though.
+
+  This allows e.g. scubed to work again and also allows some
+  tricky extensions later.
+
+* Allow empty cipher (cipher_null) for testing.
+
+  You can now use "null" (or directly cipher_null-ecb) in cryptsetup.
+  This means no encryption, useful for performance tests
+  (measure dm-crypt layer overhead).
+
+* Switch on retry on device remove for libdevmapper.
+  Device-mapper now retry removal if device is busy.
+
+* Allow "private" activation (skip some udev global rules) flag.
+  Cryptsetup library API now allows to specify CRYPT_ACTIVATE_PRIVATE,
+  which means that some udev rules are not processed.
+  (Used for temporary devices, like internal keyslot mappings where
+  it is not desirable to run any device scans.)
+
+* This release also includes some Red Hat/Fedora specific extensions
+related to FIPS140-2 compliance.
+
+In fact, all these patches are more formal changes and are just subset
+of building blocks for FIPS certification. See FAQ for more details
+about FIPS.
+
+FIPS extensions are enabled by using --enable-fips configure switch.
+
+In FIPS mode (kernel booted with fips=1 and gcrypt in FIPS mode)
+
+  - it provides library and binary integrity verification using
+  libfipscheck (requires pre-generated checksums)
+
+  - it uses FIPS approved RNG for encryption key and salt generation
+  (note that using /dev/random is not formally FIPS compliant RNG).
+
+ - only gcrypt crypto backend is currently supported in FIPS mode.
+
+The FIPS RNG requirement for salt comes from NIST SP 800-132 recommendation.
+(Recommendation for Password-Based Key Derivation. Part 1: Storage Applications.
+http://csrc.nist.gov/publications/nistpubs/800-132/nist-sp800-132.pdf)
+LUKS should be aligned to this recommendation otherwise.
index 759890d..d6d4b1d 100644 (file)
@@ -18,6 +18,7 @@
  */
 
 #include <stdlib.h>
+#include <unistd.h>
 #include "libcryptsetup.h"
 #include "nls.h"
 #include "utils_fips.h"
index 5c6e381..bb0ff6b 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -5,10 +5,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: cryptsetup-1.4.2\n"
+"Project-Id-Version: cryptsetup-1.4.3\n"
 "Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
-"POT-Creation-Date: 2012-04-03 00:12+0200\n"
-"PO-Revision-Date: 2012-04-15 21:43+0100\n"
+"POT-Creation-Date: 2012-05-22 23:31+0200\n"
+"PO-Revision-Date: 2012-05-30 20:46+0100\n"
 "Last-Translator: Koen Torfs <koen@indigetesdii.org>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
 "Language: nl\n"
@@ -21,12 +21,12 @@ msgstr ""
 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?\n"
 msgstr "Kan apparaatstoewijzer niet initialiseren. Is kernelmodule dm_mod geladen?\n"
 
-#: lib/libdevmapper.c:412
+#: lib/libdevmapper.c:423
 #, c-format
 msgid "DM-UUID for device %s was truncated.\n"
 msgstr "DM-UUID voor apparaat %s werd afgekapt.\n"
 
-#: lib/random.c:74
+#: lib/random.c:75
 msgid ""
 "System is out of entropy while generating volume key.\n"
 "Please move mouse or type some text in another window to gather some random events.\n"
@@ -34,20 +34,20 @@ msgstr ""
 "Systeem heeft niet genoeg willekeurige gegevens om de sleutel tot het opslagmedium verder te genereren.\n"
 "Beweeg de muis of typ wat tekst in een nieuw venster om enkele willekeurige evenementen te verzamelen.\n"
 
-#: lib/random.c:78
+#: lib/random.c:79
 #, c-format
 msgid "Generating key (%d%% done).\n"
 msgstr "Sleutel wordt gegenereerd (%d%% afgewerkt).\n"
 
-#: lib/random.c:167
+#: lib/random.c:168
 msgid "Fatal error during RNG initialisation.\n"
 msgstr "Fatale fout bij initialisatie van RNG.\n"
 
-#: lib/random.c:194
+#: lib/random.c:205
 msgid "Unknown RNG quality requested.\n"
 msgstr "Onbekende RNG-kwaliteit aangevraagd.\n"
 
-#: lib/random.c:199
+#: lib/random.c:210
 #, c-format
 msgid "Error %d reading from RNG: %s\n"
 msgstr "Fout %d bij lezen uit RNG: %s\n"
@@ -84,156 +84,151 @@ msgstr "Sleutelplaats %d is ongeldig, selecteer een plaats tussen 0 en %d.\n"
 msgid "Key slot %d is full, please select another one.\n"
 msgstr "Sleutelplaats %d is vol, selecteer een andere.\n"
 
-#: lib/setup.c:340
+#: lib/setup.c:345
 #, c-format
 msgid "Enter passphrase for %s: "
 msgstr "Voer wachtwoord in voor %s: "
 
-#: lib/setup.c:500
+#: lib/setup.c:505
 msgid "Cannot find a free loopback device.\n"
 msgstr "Kan geen vrij loopback-apparaat vinden.\n"
 
-#: lib/setup.c:508
+#: lib/setup.c:513
 msgid "Attaching loopback device failed (loop device with autoclear flag is required).\n"
 msgstr "Vastmaken loopback-apparaat gefaald (loop-apparaat met autoclear-vlag is vereist).\n"
 
-#: lib/setup.c:564
+#: lib/setup.c:569
 #, c-format
 msgid "LUKS header detected but device %s is too small.\n"
 msgstr "LUKS-koptekst gevonden maar apparaat %s is te klein.\n"
 
-#: lib/setup.c:580 lib/setup.c:1068
+#: lib/setup.c:585 lib/setup.c:1073
 msgid "This operation is not supported for this device type.\n"
 msgstr "Deze operatie wordt niet ondersteund voor dit apparaatstype.\n"
 
-#: lib/setup.c:643 lib/setup.c:1035 lib/setup.c:1808
+#: lib/setup.c:648 lib/setup.c:1040 lib/setup.c:1810
 #, c-format
 msgid "Device %s is not active.\n"
 msgstr "Apparaat %s is niet actief.\n"
 
-#: lib/setup.c:661
+#: lib/setup.c:666
 #, c-format
 msgid "Underlying device for crypt device %s disappeared.\n"
 msgstr "Onderliggend apparaat van versleutelingsapparaat %s is verdwenen.\n"
 
-#: lib/setup.c:775
+#: lib/setup.c:780
 msgid "Invalid plain crypt parameters.\n"
 msgstr "Ongeldige normale versleutelingsparameters.\n"
 
-#: lib/setup.c:780 lib/setup.c:885
+#: lib/setup.c:785 lib/setup.c:890
 msgid "Invalid key size.\n"
 msgstr "Ongeldige sleutelgrootte.\n"
 
-#: lib/setup.c:821
+#: lib/setup.c:826
 msgid "Can't format LUKS without device.\n"
 msgstr "Kan LUKS niet formatteren zonder apparaat.\n"
 
-#: lib/setup.c:859
+#: lib/setup.c:864
 #, c-format
 msgid "Cannot format device %s which is still in use.\n"
 msgstr "Kan apparaat %s niet formatteren; het is nog steeds actief.\n"
 
-#: lib/setup.c:862
+#: lib/setup.c:867
 #, c-format
 msgid "Cannot wipe header on device %s.\n"
 msgstr "Kan koptekst op apparaat %s niet wissen.\n"
 
-#: lib/setup.c:880
+#: lib/setup.c:885
 msgid "Can't format LOOPAES without device.\n"
 msgstr "Kan LOOPAES niet formatteren zonder apparaat.\n"
 
-#: lib/setup.c:940
+#: lib/setup.c:945
 #, c-format
 msgid "Unknown crypt device type %s requested.\n"
 msgstr "Onbekend versleutelingsapparaattype %s aangevraagd.\n"
 
-#: lib/setup.c:1083
+#: lib/setup.c:1088
 msgid "Do you really want to change UUID of device?"
 msgstr "Bent u zeker dat u het UUID van het apparaat wilt wijzigen?"
 
-#: lib/setup.c:1168 lib/setup.c:1215 lib/setup.c:1264 lib/setup.c:1330
-#: lib/setup.c:1406 lib/setup.c:1487 lib/setup.c:1533 lib/setup.c:1868
-#: lib/setup.c:1973 lib/setup.c:2112
+#: lib/setup.c:1173 lib/setup.c:1220 lib/setup.c:1269 lib/setup.c:1335
+#: lib/setup.c:1411 lib/setup.c:1492 lib/setup.c:1538 lib/setup.c:1875
+#: lib/setup.c:1980 lib/setup.c:2119
 msgid "This operation is supported only for LUKS device.\n"
 msgstr "Deze operatie wordt enkel ondersteund voor LUKS-apparaten.\n"
 
-#: lib/setup.c:1175
+#: lib/setup.c:1180
 #, c-format
 msgid "Volume %s is not active.\n"
 msgstr "Opslagmedium %s is niet actief.\n"
 
-#: lib/setup.c:1187
+#: lib/setup.c:1192
 #, c-format
 msgid "Volume %s is already suspended.\n"
 msgstr "Opslagmedium %s is reeds geschorst.\n"
 
-#: lib/setup.c:1225 lib/setup.c:1274
+#: lib/setup.c:1230 lib/setup.c:1279
 #, c-format
 msgid "Volume %s is not suspended.\n"
 msgstr "Opslagmedium %s is niet geschorst.\n"
 
-#: lib/setup.c:1281 lib/setup.c:1658 lib/setup.c:1672 src/cryptsetup.c:343
+#: lib/setup.c:1286 lib/setup.c:1663 lib/setup.c:1677 src/cryptsetup.c:343
 msgid "Enter passphrase: "
 msgstr "Voer wachtwoord in: "
 
-#: lib/setup.c:1344 lib/setup.c:1420
+#: lib/setup.c:1349 lib/setup.c:1425
 msgid "Cannot add key slot, all slots disabled and no volume key provided.\n"
 msgstr "Kan geen sleutelplaats toevoegen, alle plaatsen zijn uitgeschakeld en geen sleutel tot het opslagmedium voorzien.\n"
 
-#: lib/setup.c:1353 lib/setup.c:1426 lib/setup.c:1430
+#: lib/setup.c:1358 lib/setup.c:1431 lib/setup.c:1435
 msgid "Enter any passphrase: "
 msgstr "Voer een wachtwoord in: "
 
-#: lib/setup.c:1370 lib/setup.c:1443 lib/setup.c:1447 lib/setup.c:1510
+#: lib/setup.c:1375 lib/setup.c:1448 lib/setup.c:1452 lib/setup.c:1515
 msgid "Enter new passphrase for key slot: "
 msgstr "Voer een nieuw wachtwoord in voor de sleutelplaats: "
 
-#: lib/setup.c:1501 lib/setup.c:1762 lib/setup.c:1775 lib/setup.c:1879
+#: lib/setup.c:1506 lib/setup.c:1767 lib/setup.c:1780 lib/setup.c:1886
 msgid "Volume key does not match the volume.\n"
 msgstr "Sleutel tot opslagmedium komt niet overeen met het opslagmedium.\n"
 
-#: lib/setup.c:1539
+#: lib/setup.c:1544
 #, c-format
 msgid "Key slot %d is invalid.\n"
 msgstr "Sleutelplaats %d is ongeldig.\n"
 
-#: lib/setup.c:1544
+#: lib/setup.c:1549
 #, c-format
 msgid "Key slot %d is not used.\n"
 msgstr "Sleutelplaats %d is niet in gebruik.\n"
 
-#: lib/setup.c:1574 lib/setup.c:1646 lib/setup.c:1738
+#: lib/setup.c:1579 lib/setup.c:1651 lib/setup.c:1743
 #, c-format
 msgid "Device %s already exists.\n"
 msgstr "Apparaat %s bestaat reeds.\n"
 
-#: lib/setup.c:1749
+#: lib/setup.c:1754
 msgid "Incorrect volume key specified for plain device.\n"
 msgstr "Incorrecte sleutel tot het opslagmedium voor normaal apparaat verschaft.\n"
 
-#: lib/setup.c:1780
+#: lib/setup.c:1785
 msgid "Device type is not properly initialised.\n"
 msgstr "Apparaatstype is niet behoorlijk geïnitialiseerd.\n"
 
-#: lib/setup.c:1804
-#, c-format
-msgid "Device %s is busy.\n"
-msgstr "Apparaat %s is bezig.\n"
-
-#: lib/setup.c:1812
+#: lib/setup.c:1814
 #, c-format
 msgid "Invalid device %s.\n"
 msgstr "Ongeldig apparaat %s.\n"
 
-#: lib/setup.c:1835
+#: lib/setup.c:1842
 msgid "Volume key buffer too small.\n"
 msgstr "Sleutelbuffer van het opslagmedium is te klein.\n"
 
-#: lib/setup.c:1843
+#: lib/setup.c:1850
 msgid "Cannot retrieve volume key for plain device.\n"
 msgstr "Kan sleutel tot het opslagmedium voor normaal apparaat niet ophalen.\n"
 
-#: lib/setup.c:1849
+#: lib/setup.c:1856
 #, c-format
 msgid "This operation is not supported for %s crypt device.\n"
 msgstr "Deze operatie wordt niet ondersteund voor versleutelapparaat %s.\n"
@@ -285,92 +280,95 @@ msgstr "De aangevraagde gegevenspositie valt buiten de werkelijke grootte van ap
 msgid "Device %s has zero size.\n"
 msgstr "Apparaat %s heeft grootte nul.\n"
 
-#: lib/utils.c:415 lib/luks1/keymanage.c:524
+#: lib/utils.c:415 lib/luks1/keymanage.c:532
 #, c-format
 msgid "Device %s is too small.\n"
 msgstr "Apparaat %s is te klein.\n"
 
-#: lib/utils.c:423
-#, c-format
-msgid "Cannot use device %s (crypt segments overlaps or in use by another device).\n"
-msgstr "Kan apparaat %s niet gebruiken (cryptsegmenten overlappen of worden door een ander apparaat gebruikt).\n"
-
-#: lib/utils.c:450
+#: lib/utils.c:439
 msgid "WARNING!!! Possibly insecure memory. Are you root?\n"
 msgstr "WAARSCHUWING!!! Mogelijk onveilig geheugen. Bent u root?\n"
 
-#: lib/utils.c:456
+#: lib/utils.c:445
 msgid "Cannot get process priority.\n"
 msgstr "Kan geen procesprioriteit verkrijgen.\n"
 
-#: lib/utils.c:459 lib/utils.c:472
+#: lib/utils.c:448 lib/utils.c:461
 #, c-format
 msgid "setpriority %d failed: %s\n"
 msgstr "setpriority %d is mislukt: %s\n"
 
-#: lib/utils.c:470
+#: lib/utils.c:459
 msgid "Cannot unlock memory.\n"
 msgstr "Kan geheugen niet ontgrendelen.\n"
 
-#: lib/utils_crypt.c:212 lib/utils_crypt.c:225 lib/utils_crypt.c:329
-#: lib/utils_crypt.c:345
+#: lib/utils_crypt.c:221 lib/utils_crypt.c:234 lib/utils_crypt.c:338
+#: lib/utils_crypt.c:354
 msgid "Out of memory while reading passphrase.\n"
 msgstr "Geen geheugen meer beschikbaar bij lezen van wachtwoord.\n"
 
-#: lib/utils_crypt.c:217 lib/utils_crypt.c:232
+#: lib/utils_crypt.c:226 lib/utils_crypt.c:241
 msgid "Error reading passphrase from terminal.\n"
 msgstr "Fout bij het lezen van het wachtwoord uit de terminal.\n"
 
-#: lib/utils_crypt.c:230
+#: lib/utils_crypt.c:239
 msgid "Verify passphrase: "
 msgstr "Voer wachtwoord nogmaals in: "
 
-#: lib/utils_crypt.c:237
+#: lib/utils_crypt.c:246
 msgid "Passphrases do not match.\n"
 msgstr "Wachtwoorden komen niet overeen.\n"
 
-#: lib/utils_crypt.c:278
+#: lib/utils_crypt.c:287
 msgid "Cannot use offset with terminal input.\n"
 msgstr "Kan de gegevenspositie niet via terminalinvoer gebruiken.\n"
 
-#: lib/utils_crypt.c:297
+#: lib/utils_crypt.c:306
 msgid "Failed to open key file.\n"
 msgstr "Openen van sleutelbestand is mislukt.\n"
 
-#: lib/utils_crypt.c:306
+#: lib/utils_crypt.c:315
 msgid "Failed to stat key file.\n"
 msgstr "Kan status van sleutelbestand niet opvragen.\n"
 
-#: lib/utils_crypt.c:314 lib/utils_crypt.c:336
+#: lib/utils_crypt.c:323 lib/utils_crypt.c:345
 msgid "Cannot seek to requested keyfile offset.\n"
 msgstr "Kan niet zoeken tot aan het aangevraagde sleutelbestand.\n"
 
-#: lib/utils_crypt.c:353
+#: lib/utils_crypt.c:362
 msgid "Error reading passphrase.\n"
 msgstr "Fout bij lezen van wachtwoord.\n"
 
-#: lib/utils_crypt.c:371
-msgid "Maximum keyfile size exceeeded.\n"
-msgstr "Maximum sleutelplaatsgrootte overschreden.\n"
+#: lib/utils_crypt.c:380
+msgid "Maximum keyfile size exceeded.\n"
+msgstr "Maximum sleutelbestandsgrootte overschreden.\n"
 
-#: lib/utils_crypt.c:376
+#: lib/utils_crypt.c:385
 msgid "Cannot read requested amount of data.\n"
 msgstr "Kan aangevraagde hoeveelheid data niet lezen.\n"
 
-#: lib/luks1/keyencryption.c:76
+#: lib/utils_fips.c:45
+msgid "FIPS checksum verification failed.\n"
+msgstr "Verificatie van FIPS-controlesom gefaald.\n"
+
+#: lib/utils_fips.c:49
+msgid "Running in FIPS mode.\n"
+msgstr "Uitvoering in FIPS-modus.\n"
+
+#: lib/luks1/keyencryption.c:79
 #, c-format
 msgid "Unable to obtain sector size for %s"
 msgstr "Kan sectorgrootte van %s niet verkrijgen"
 
-#: lib/luks1/keyencryption.c:103
+#: lib/luks1/keyencryption.c:106
 msgid "Key size in XTS mode must be 256 or 512 bits.\n"
 msgstr "In XTS-modus moet de sleutelgrootte 256 of 512 bits zijn.\n"
 
-#: lib/luks1/keyencryption.c:126
+#: lib/luks1/keyencryption.c:129
 msgid "Failed to obtain device mapper directory."
 msgstr "Kan geen map voor de apparaatstoewijzer verkrijgen."
 
-#: lib/luks1/keyencryption.c:142
+#: lib/luks1/keyencryption.c:145
 #, c-format
 msgid ""
 "Failed to setup dm-crypt key mapping for device %s.\n"
@@ -381,11 +379,11 @@ msgstr ""
 "Kijk na of de kernel versleutelalgoritme %s ondersteunt (bekijk syslog voor meer informatie).\n"
 "%s"
 
-#: lib/luks1/keyencryption.c:152
+#: lib/luks1/keyencryption.c:155
 msgid "Failed to open temporary keystore device.\n"
 msgstr "Openen van het tijdelijke sleutelopslagapparaat is mislukt.\n"
 
-#: lib/luks1/keyencryption.c:159
+#: lib/luks1/keyencryption.c:162
 msgid "Failed to access temporary keystore device.\n"
 msgstr "Kan geen toegang verkrijgen tot tijdelijk sleutelopslagapparaat.\n"
 
@@ -394,7 +392,7 @@ msgstr "Kan geen toegang verkrijgen tot tijdelijk sleutelopslagapparaat.\n"
 msgid "Requested file %s already exist.\n"
 msgstr "Aangevraagd bestand %s bestaat reeds.\n"
 
-#: lib/luks1/keymanage.c:169 lib/luks1/keymanage.c:391
+#: lib/luks1/keymanage.c:169 lib/luks1/keymanage.c:399
 #, c-format
 msgid "Device %s is not a valid LUKS device.\n"
 msgstr "Apparaat %s is geen geldig LUKS-apparaat.\n"
@@ -448,8 +446,8 @@ msgstr ""
 "\n"
 "WAARSCHUWING: originele apparaatkoptekst heeft een ander UUID dan de reservekopie!"
 
-#: lib/luks1/keymanage.c:280 lib/luks1/keymanage.c:496
-#: lib/luks1/keymanage.c:530
+#: lib/luks1/keymanage.c:280 lib/luks1/keymanage.c:504
+#: lib/luks1/keymanage.c:538
 #, c-format
 msgid "Cannot open device %s.\n"
 msgstr "Kan apparaat %s niet openen.\n"
@@ -459,122 +457,126 @@ msgid "Non standard key size, manual repair required.\n"
 msgstr "Niet-standaard sleutelgrootte, handmatige herstelling is vereist.\n"
 
 #: lib/luks1/keymanage.c:315
+msgid "Non standard keyslots alignment, manual repair required.\n"
+msgstr "Niet-standaard sleutelplaatsuitlijning, handmatige herstelling is vereist.\n"
+
+#: lib/luks1/keymanage.c:321
 msgid "Repairing keyslots.\n"
 msgstr "Sleutelplaatsen worden hersteld.\n"
 
-#: lib/luks1/keymanage.c:326
+#: lib/luks1/keymanage.c:332
 msgid "Repair failed."
 msgstr "Herstelling is mislukt."
 
-#: lib/luks1/keymanage.c:333
+#: lib/luks1/keymanage.c:344
 #, c-format
 msgid "Keyslot %i: offset repaired (%u -> %u).\n"
 msgstr "Sleutelplaats %i: gegevenspositie hersteld (%u -> %u).\n"
 
-#: lib/luks1/keymanage.c:341
+#: lib/luks1/keymanage.c:352
 #, c-format
 msgid "Keyslot %i: stripes repaired (%u -> %u).\n"
 msgstr "Sleutelplaats %i: fragmenten hersteld (%u -> %u).\n"
 
-#: lib/luks1/keymanage.c:352
+#: lib/luks1/keymanage.c:361
 #, c-format
 msgid "Keyslot %i: bogus partition signature.\n"
 msgstr "Sleutelplaats %i: valse partitiehandtekening.\n"
 
-#: lib/luks1/keymanage.c:357
+#: lib/luks1/keymanage.c:366
 #, c-format
 msgid "Keyslot %i: salt wiped.\n"
 msgstr "Sleutelplaats %i: salt uitgewist.\n"
 
-#: lib/luks1/keymanage.c:369
+#: lib/luks1/keymanage.c:377
 msgid "Writing LUKS header to disk.\n"
 msgstr "LUKS-koptekst wordt naar schijf geschreven.\n"
 
-#: lib/luks1/keymanage.c:394
+#: lib/luks1/keymanage.c:402
 #, c-format
 msgid "Unsupported LUKS version %d.\n"
 msgstr "Niet-ondersteunde LUKS-versie %d.\n"
 
-#: lib/luks1/keymanage.c:400 lib/luks1/keymanage.c:602
+#: lib/luks1/keymanage.c:408 lib/luks1/keymanage.c:610
 #, c-format
 msgid "Requested LUKS hash %s is not supported.\n"
 msgstr "Aangevraagde LUKS-hash %s wordt niet ondersteund.\n"
 
-#: lib/luks1/keymanage.c:415
+#: lib/luks1/keymanage.c:423
 #, c-format
 msgid "LUKS keyslot %u is invalid.\n"
 msgstr "LUKS-sleutelplaats %u is ongeldig.\n"
 
-#: lib/luks1/keymanage.c:429 src/cryptsetup.c:535
+#: lib/luks1/keymanage.c:437 src/cryptsetup.c:535
 msgid "No known problems detected for LUKS header.\n"
 msgstr "Geen gekende problemen gevonden bij LUKS-koptekst.\n"
 
-#: lib/luks1/keymanage.c:463
+#: lib/luks1/keymanage.c:471
 #, c-format
 msgid "Cannot open file %s.\n"
 msgstr "Kan bestand %s niet openen.\n"
 
-#: lib/luks1/keymanage.c:551
+#: lib/luks1/keymanage.c:559
 #, c-format
 msgid "Error during update of LUKS header on device %s.\n"
 msgstr "Fout bij het bijwerken van LUKS-koptekst op apparaat %s.\n"
 
-#: lib/luks1/keymanage.c:558
+#: lib/luks1/keymanage.c:566
 #, c-format
 msgid "Error re-reading LUKS header after update on device %s.\n"
 msgstr "Fout bij het herlezen van LUKS-koptekst na bijwerken van apparaat %s.\n"
 
-#: lib/luks1/keymanage.c:570
+#: lib/luks1/keymanage.c:578
 #, c-format
 msgid "Not compatible PBKDF2 options (using hash algorithm %s).\n"
 msgstr "Niet-compatibele PBKDF2-opties (met hash-algoritme %s in gebruik).\n"
 
-#: lib/luks1/keymanage.c:607 lib/luks1/keymanage.c:689
+#: lib/luks1/keymanage.c:615 lib/luks1/keymanage.c:697
 msgid "Wrong LUKS UUID format provided.\n"
 msgstr "Verkeerd LUKS UUID-formaat verschaft.\n"
 
-#: lib/luks1/keymanage.c:632
+#: lib/luks1/keymanage.c:640
 msgid "Cannot create LUKS header: reading random salt failed.\n"
 msgstr "Kan LUKS-koptekst niet aanmaken: lezen van random salt is mislukt.\n"
 
-#: lib/luks1/keymanage.c:649
+#: lib/luks1/keymanage.c:657
 #, c-format
 msgid "Cannot create LUKS header: header digest failed (using hash %s).\n"
 msgstr "Kan LUKS-koptekst niet aanmaken: koptekst-extract is mislukt (met %s-hash).\n"
 
-#: lib/luks1/keymanage.c:714
+#: lib/luks1/keymanage.c:722
 #, c-format
 msgid "Key slot %d active, purge first.\n"
 msgstr "Sleutelplaats %d is actief; ruim eerst op.\n"
 
-#: lib/luks1/keymanage.c:719
+#: lib/luks1/keymanage.c:727
 #, c-format
 msgid "Key slot %d material includes too few stripes. Header manipulation?\n"
 msgstr "Inhoud van sleutelplaats %d bevat te weinig fragmenten. Koptekstmanipulatie?\n"
 
-#: lib/luks1/keymanage.c:786
+#: lib/luks1/keymanage.c:794
 msgid "Failed to write to key storage.\n"
 msgstr "Schrijven naar sleutelopslag is mislukt.\n"
 
-#: lib/luks1/keymanage.c:871
+#: lib/luks1/keymanage.c:879
 msgid "Failed to read from key storage.\n"
 msgstr "Lezen uit sleutelopslag is mislukt.\n"
 
-#: lib/luks1/keymanage.c:881
+#: lib/luks1/keymanage.c:889
 #, c-format
 msgid "Key slot %d unlocked.\n"
 msgstr "Sleutelplaats %d is ontgrendeld.\n"
 
-#: lib/luks1/keymanage.c:917 src/cryptsetup.c:732 src/cryptsetup.c:916
+#: lib/luks1/keymanage.c:925 src/cryptsetup.c:732 src/cryptsetup.c:916
 msgid "No key available with this passphrase.\n"
 msgstr "Geen sleutel beschikbaar met dit wachtwoord.\n"
 
-#: lib/luks1/keymanage.c:935
+#: lib/luks1/keymanage.c:943
 #, c-format
 msgid "Key slot %d is invalid, please select keyslot between 0 and %d.\n"
 msgstr "Sleutelplaats %d is ongeldig, selecteer een sleutelplaats tussen 0 en %d.\n"
 
-#: lib/luks1/keymanage.c:949
+#: lib/luks1/keymanage.c:957
 #, c-format
 msgid "Cannot wipe device %s.\n"
 msgstr "Kan apparaat %s niet wissen.\n"
@@ -1022,32 +1024,32 @@ msgstr "Discardaanvragen (alias TRIM) op dit apparaat toelaten."
 msgid "Device or file with separated LUKS header."
 msgstr "Apparaat of bestand met verschillende LUKS-koptekst."
 
-#: src/cryptsetup.c:1322
+#: src/cryptsetup.c:1324
 msgid "[OPTION...] <action> <action-specific>]"
 msgstr "[OPTIE…] <actie> <actie-specifiek>]"
 
-#: src/cryptsetup.c:1362
+#: src/cryptsetup.c:1364
 msgid "Argument <action> missing."
 msgstr "Argument <actie> ontbreekt."
 
-#: src/cryptsetup.c:1368
+#: src/cryptsetup.c:1370
 msgid "Unknown action."
 msgstr "Onbekende actie."
 
-#: src/cryptsetup.c:1383
+#: src/cryptsetup.c:1385
 #, c-format
 msgid "%s: requires %s as arguments"
 msgstr "%s: vereist %s als argumenten"
 
-#: src/cryptsetup.c:1392
+#: src/cryptsetup.c:1394
 msgid "Option --shared is allowed only for create operation.\n"
 msgstr "Optie --shared wordt enkel ondersteund voor de create-opdracht.\n"
 
-#: src/cryptsetup.c:1401
+#: src/cryptsetup.c:1403
 msgid "Option --allow-discards is allowed only for luksOpen, loopaesOpen and create operation.\n"
 msgstr "Optie --allow-discards wordt enkel ondersteund voor de luksOpen-, loopaesOpen- en create-opdrachten.\n"
 
-#: src/cryptsetup.c:1410
+#: src/cryptsetup.c:1412
 msgid ""
 "Option --key-size is allowed only for luksFormat, create and loopaesOpen.\n"
 "To limit read from keyfile use --keyfile-size=(bytes)."
@@ -1055,46 +1057,52 @@ msgstr ""
 "Optie --key-size is enkel toegestaan bij luksFormat en de create- en loopaesOpen-opdrachten.\n"
 "Om de lezing uit een sleutelbestand te beperken, gebruik --keyfile-size=(bytes)."
 
-#: src/cryptsetup.c:1417
+#: src/cryptsetup.c:1419
 msgid "Key size must be a multiple of 8 bits"
 msgstr "Sleutelgrootte moet een meervoud zijn van 8 bits"
 
-#: src/cryptsetup.c:1424
+#: src/cryptsetup.c:1426
 msgid "Key slot is invalid."
 msgstr "Sleutelplaats is ongeldig."
 
-#: src/cryptsetup.c:1431
+#: src/cryptsetup.c:1433
 msgid "Option --key-file takes precedence over specified key file argument.\n"
 msgstr "Optie --key-file krijgt voorrang over het gespecificeerde sleutelbestandsargument.\n"
 
-#: src/cryptsetup.c:1439
+#: src/cryptsetup.c:1441
 msgid "Negative number for option not permitted."
 msgstr "Een negatief getal wordt niet toegestaan voor deze optie."
 
-#: src/cryptsetup.c:1444
+#: src/cryptsetup.c:1446
 msgid "Only one of --use-[u]random options is allowed."
 msgstr "Slechts een enkel gebruik van de opties --use-[u]random is toegestaan."
 
-#: src/cryptsetup.c:1448
+#: src/cryptsetup.c:1450
 msgid "Option --use-[u]random is allowed only for luksFormat."
 msgstr "OPtie --use-[u]random is enkel toegestaan bij luksFormat."
 
-#: src/cryptsetup.c:1452
+#: src/cryptsetup.c:1454
 msgid "Option --uuid is allowed only for luksFormat and luksUUID."
 msgstr "Optie --uuid is enkel toegestaan bij luksFormat en luksUUID."
 
-#: src/cryptsetup.c:1456
+#: src/cryptsetup.c:1458
 msgid "Option --align-payload is allowed only for luksFormat."
 msgstr "Optie --align-payload is enkel toegestaan voor luksFormat."
 
-#: src/cryptsetup.c:1461
+#: src/cryptsetup.c:1463
 msgid "Option --skip is supported only for create and loopaesOpen commands.\n"
 msgstr "Optie --skip wordt enkel ondersteund voor de create- en loopaesOpen-opdrachten.\n"
 
-#: src/cryptsetup.c:1466
+#: src/cryptsetup.c:1468
 msgid "Option --offset is supported only for create and loopaesOpen commands.\n"
 msgstr "Optie --offset wordt enkel ondersteund voor de create- en loopaesOpen-opdrachten.\n"
 
+#~ msgid "Device %s is busy.\n"
+#~ msgstr "Apparaat %s is bezig.\n"
+
+#~ msgid "Cannot use device %s (crypt segments overlaps or in use by another device).\n"
+#~ msgstr "Kan apparaat %s niet gebruiken (cryptsegmenten overlappen of worden door een ander apparaat gebruikt).\n"
+
 #~ msgid "Cannot read %d byte from key file %s.\n"
 #~ msgid_plural "Cannot read %d bytes from key file %s.\n"
 #~ msgstr[0] "Kan %d byte uit sleutelbestand %s niet lezen.\n"