Imported Upstream version 2.3.7
[platform/upstream/cryptsetup.git] / po / fi.po
index 63cd31e..19ce6a4 100644 (file)
--- a/po/fi.po
+++ b/po/fi.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: cryptsetup 1.7.0\n"
 "Report-Msgid-Bugs-To: dm-crypt@saout.de\n"
-"POT-Creation-Date: 2020-05-28 11:32+0200\n"
+"POT-Creation-Date: 2022-01-13 10:34+0100\n"
 "PO-Revision-Date: 2015-11-08 12:48+0200\n"
 "Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n"
 "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
@@ -19,71 +19,72 @@ msgstr ""
 "X-Bugs: Report translation errors to the Language-Team address.\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: lib/libdevmapper.c:399
+#: lib/libdevmapper.c:408
 #, fuzzy
 msgid "Cannot initialize device-mapper, running as non-root user."
 msgstr "Laitekuvaimen alustus epäonnistui, suoritetaan ei-root-käyttäjänä.\n"
 
-#: lib/libdevmapper.c:402
+#: lib/libdevmapper.c:411
 #, fuzzy
 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?"
 msgstr "Laitekuvaimen alustus epäonnistui. Onko dm_mod-käyttöjärjestelmäydinmoduuli ladattu?\n"
 
-#: lib/libdevmapper.c:1131
+#: lib/libdevmapper.c:1180
 #, fuzzy
 msgid "Requested deferred flag is not supported."
 msgstr "Pyydetty LUKS-tiiviste %s ei ole tuettu.\n"
 
-#: lib/libdevmapper.c:1198
+#: lib/libdevmapper.c:1249
 #, fuzzy, c-format
 msgid "DM-UUID for device %s was truncated."
 msgstr "DM-UUID laitteelle %s typistettiin.\n"
 
-#: lib/libdevmapper.c:1520
+#: lib/libdevmapper.c:1580
 msgid "Unknown dm target type."
 msgstr ""
 
-#: lib/libdevmapper.c:1623 lib/libdevmapper.c:1679
+#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766
+#: lib/libdevmapper.c:1769
 #, fuzzy
 msgid "Requested dm-crypt performance options are not supported."
 msgstr "Pyydetyt dmcrypt-suorituskykyvalitsimet eivät ole tuettuja.\n"
 
-#: lib/libdevmapper.c:1630
+#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717
 #, fuzzy
 msgid "Requested dm-verity data corruption handling options are not supported."
 msgstr "Pyydetyt dmcrypt-suorituskykyvalitsimet eivät ole tuettuja.\n"
 
-#: lib/libdevmapper.c:1634
+#: lib/libdevmapper.c:1721
 #, fuzzy
 msgid "Requested dm-verity FEC options are not supported."
 msgstr "Pyydetyt dmcrypt-suorituskykyvalitsimet eivät ole tuettuja.\n"
 
-#: lib/libdevmapper.c:1638
+#: lib/libdevmapper.c:1725
 #, fuzzy
 msgid "Requested data integrity options are not supported."
 msgstr "Pyydetyt dmcrypt-suorituskykyvalitsimet eivät ole tuettuja.\n"
 
-#: lib/libdevmapper.c:1640
+#: lib/libdevmapper.c:1727
 #, fuzzy
 msgid "Requested sector_size option is not supported."
 msgstr "Pyydetyt dmcrypt-suorituskykyvalitsimet eivät ole tuettuja.\n"
 
-#: lib/libdevmapper.c:1645
+#: lib/libdevmapper.c:1732
 msgid "Requested automatic recalculation of integrity tags is not supported."
 msgstr ""
 
-#: lib/libdevmapper.c:1649 lib/libdevmapper.c:1682 lib/libdevmapper.c:1685
-#: lib/luks2/luks2_json_metadata.c:2160
+#: lib/libdevmapper.c:1736 lib/libdevmapper.c:1772 lib/libdevmapper.c:1775
+#: lib/luks2/luks2_json_metadata.c:2347
 #, fuzzy
 msgid "Discard/TRIM is not supported."
 msgstr "Tiivistealgoritmia %s ei tueta.\n"
 
-#: lib/libdevmapper.c:1653
+#: lib/libdevmapper.c:1740
 #, fuzzy
 msgid "Requested dm-integrity bitmap mode is not supported."
 msgstr "Pyydetty LUKS-tiiviste %s ei ole tuettu.\n"
 
-#: lib/libdevmapper.c:2607
+#: lib/libdevmapper.c:2713
 #, c-format
 msgid "Failed to query dm-%s segment."
 msgstr ""
@@ -132,7 +133,7 @@ msgstr "RNG-salaustaustaohjelman alustus epäonnistui.\n"
 msgid "Cannot initialize crypto backend."
 msgstr "Salaustaustaohjelman alustus epäonnistui.\n"
 
-#: lib/setup.c:266 lib/setup.c:2046 lib/verity/verity.c:119
+#: lib/setup.c:266 lib/setup.c:2046 lib/verity/verity.c:120
 #, fuzzy, c-format
 msgid "Hash algorithm %s not supported."
 msgstr "Tiivistealgoritmia %s ei tueta.\n"
@@ -147,7 +148,7 @@ msgstr "Avainkäsittelyvirhe (käytetään tiivistealgoritmia %s).\n"
 msgid "Cannot determine device type. Incompatible activation of device?"
 msgstr "Laitetyypin määritteleminen epäonnistui. Laitteen yhteensopimaton aktivointi?\n"
 
-#: lib/setup.c:341 lib/setup.c:3050
+#: lib/setup.c:341 lib/setup.c:3058
 #, fuzzy
 msgid "This operation is supported only for LUKS device."
 msgstr "Tätä toimintoa tuetaan vain LUKS-laitteelle.\n"
@@ -157,7 +158,7 @@ msgstr "Tätä toimintoa tuetaan vain LUKS-laitteelle.\n"
 msgid "This operation is supported only for LUKS2 device."
 msgstr "Tätä toimintoa tuetaan vain LUKS-laitteelle.\n"
 
-#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345
+#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2457
 #, fuzzy
 msgid "All key slots full."
 msgstr "Kaikki avainvälit ovat täynnä.\n"
@@ -172,7 +173,7 @@ msgstr "Avainväli %d on virheellinen, valitse väliltä 0 ... %d.\n"
 msgid "Key slot %d is full, please select another one."
 msgstr "Avainväli %d on täynnä, valitse joku toinen.\n"
 
-#: lib/setup.c:525 lib/setup.c:2824
+#: lib/setup.c:525 lib/setup.c:2832
 #, fuzzy
 msgid "Device size is not aligned to device logical block size."
 msgstr "Laite %s ei ole kelvollinen LUKS-laite.\n"
@@ -182,7 +183,8 @@ msgstr "Laite %s ei ole kelvollinen LUKS-laite.\n"
 msgid "Header detected but device %s is too small."
 msgstr "Otsake havaittu, mutta laite %s on liian pieni.\n"
 
-#: lib/setup.c:661
+#: lib/setup.c:661 lib/setup.c:2777 lib/setup.c:4114
+#: lib/luks2/luks2_reencrypt.c:3154 lib/luks2/luks2_reencrypt.c:3520
 #, fuzzy
 msgid "This operation is not supported for this device type."
 msgstr "Tätä toimintoa ei tueta tälle laitetyypille.\n"
@@ -191,18 +193,13 @@ msgstr "Tätä toimintoa ei tueta tälle laitetyypille.\n"
 msgid "Illegal operation with reencryption in-progress."
 msgstr ""
 
-#: lib/setup.c:832 lib/luks1/keymanage.c:475
+#: lib/setup.c:832 lib/luks1/keymanage.c:482
 #, fuzzy, c-format
 msgid "Unsupported LUKS version %d."
 msgstr "Tukematon LUKS-versio %d.\n"
 
-#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959
-#, fuzzy
-msgid "Detached metadata device is not supported for this crypt type."
-msgstr "UUID ei ole tuettu tälle laitetyypille.\n"
-
-#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628
-#: lib/setup.c:2777 lib/setup.c:4512
+#: lib/setup.c:1427 lib/setup.c:2547 lib/setup.c:2619 lib/setup.c:2631
+#: lib/setup.c:2785 lib/setup.c:4570
 #, fuzzy, c-format
 msgid "Device %s is not active."
 msgstr "Laite %s ei ole aktiivinen.\n"
@@ -217,7 +214,7 @@ msgstr "Salauslaitteen %s perustana oleva laite hävisi.\n"
 msgid "Invalid plain crypt parameters."
 msgstr "Virheelliset tavalliset salausparametrit.\n"
 
-#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74
+#: lib/setup.c:1529 lib/setup.c:1949
 #, fuzzy
 msgid "Invalid key size."
 msgstr "Virheellinen avainkoko.\n"
@@ -227,13 +224,18 @@ msgstr "Virheellinen avainkoko.\n"
 msgid "UUID is not supported for this crypt type."
 msgstr "UUID ei ole tuettu tälle laitetyypille.\n"
 
-#: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308
-#: src/cryptsetup.c:1226 src/cryptsetup.c:3923
+#: lib/setup.c:1539 lib/setup.c:1959
+#, fuzzy
+msgid "Detached metadata device is not supported for this crypt type."
+msgstr "UUID ei ole tuettu tälle laitetyypille.\n"
+
+#: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2418
+#: src/cryptsetup.c:1346 src/cryptsetup.c:4087
 #, fuzzy
 msgid "Unsupported encryption sector size."
 msgstr "Uudelleensalauslokitiedoston lukeminen epäonnistui.\n"
 
-#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818
+#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826
 #, fuzzy
 msgid "Device size is not aligned to requested sector size."
 msgstr "Laite %s ei ole kelvollinen LUKS-laite.\n"
@@ -279,8 +281,8 @@ msgstr ""
 msgid "WARNING: LUKS2 keyslots area size changed to %<PRIu64> bytes.\n"
 msgstr ""
 
-#: lib/setup.c:1882 lib/utils_device.c:828 lib/luks1/keyencryption.c:255
-#: lib/luks2/luks2_reencrypt.c:2356 lib/luks2/luks2_reencrypt.c:3367
+#: lib/setup.c:1882 lib/utils_device.c:852 lib/luks1/keyencryption.c:255
+#: lib/luks2/luks2_reencrypt.c:2468 lib/luks2/luks2_reencrypt.c:3609
 #, fuzzy, c-format
 msgid "Device %s is too small."
 msgstr "Laite %s on liian pieni.\n"
@@ -315,17 +317,17 @@ msgstr "Kohteen LOOPAES pohjustus ilman laitetta epäonnistui.\n"
 msgid "Can't format VERITY without device."
 msgstr "Kohteen VERITY pohjustus ilman laitetta epäonnistui.\n"
 
-#: lib/setup.c:2000 lib/verity/verity.c:102
+#: lib/setup.c:2000 lib/verity/verity.c:103
 #, fuzzy, c-format
 msgid "Unsupported VERITY hash type %d."
 msgstr "Tukematon VERITY-tiivistetyyppi %d.\n"
 
-#: lib/setup.c:2006 lib/verity/verity.c:110
+#: lib/setup.c:2006 lib/verity/verity.c:111
 #, fuzzy
 msgid "Unsupported VERITY block size."
 msgstr "Tukematon VERITY-lohkokoko.\n"
 
-#: lib/setup.c:2011 lib/verity/verity.c:74
+#: lib/setup.c:2011 lib/verity/verity.c:75
 #, fuzzy
 msgid "Unsupported VERITY hash offset."
 msgstr "Tukematon VERITY-tiivistesiirros.\n"
@@ -357,254 +359,254 @@ msgstr ""
 msgid "Unknown crypt device type %s requested."
 msgstr "Tuntematon salauslaitetyyppi %s pyydetty.\n"
 
-#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635
+#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638
 #, fuzzy, c-format
 msgid "Unsupported parameters on device %s."
 msgstr "Otsakkeen pyyhkiminen pois laitteesta %s epäonnistui.\n"
 
-#: lib/setup.c:2556 lib/setup.c:2641 lib/luks2/luks2_reencrypt.c:2408
-#: lib/luks2/luks2_reencrypt.c:2737
+#: lib/setup.c:2559 lib/setup.c:2644 lib/luks2/luks2_reencrypt.c:2524
+#: lib/luks2/luks2_reencrypt.c:2876
 #, fuzzy, c-format
 msgid "Mismatching parameters on device %s."
 msgstr "Otsakkeen pyyhkiminen pois laitteesta %s epäonnistui.\n"
 
-#: lib/setup.c:2661
+#: lib/setup.c:2664
 msgid "Crypt devices mismatch."
 msgstr ""
 
-#: lib/setup.c:2698 lib/setup.c:2703 lib/luks2/luks2_reencrypt.c:2054
-#: lib/luks2/luks2_reencrypt.c:3145
+#: lib/setup.c:2701 lib/setup.c:2706 lib/luks2/luks2_reencrypt.c:2164
+#: lib/luks2/luks2_reencrypt.c:3366
 #, fuzzy, c-format
 msgid "Failed to reload device %s."
 msgstr "Laitteen %s lukeminen epäonnistui.\n"
 
-#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025
-#: lib/luks2/luks2_reencrypt.c:2032
+#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2135
+#: lib/luks2/luks2_reencrypt.c:2142
 #, fuzzy, c-format
 msgid "Failed to suspend device %s."
 msgstr "Avaintiedoston avaus epäonnistui.\n"
 
-#: lib/setup.c:2718 lib/luks2/luks2_reencrypt.c:2039
-#: lib/luks2/luks2_reencrypt.c:3080 lib/luks2/luks2_reencrypt.c:3149
+#: lib/setup.c:2721 lib/luks2/luks2_reencrypt.c:2149
+#: lib/luks2/luks2_reencrypt.c:3301 lib/luks2/luks2_reencrypt.c:3370
 #, fuzzy, c-format
 msgid "Failed to resume device %s."
 msgstr "Laitteen %s lukeminen epäonnistui.\n"
 
-#: lib/setup.c:2732
+#: lib/setup.c:2735
 #, c-format
 msgid "Fatal error while reloading device %s (on top of device %s)."
 msgstr ""
 
-#: lib/setup.c:2735 lib/setup.c:2737
+#: lib/setup.c:2738 lib/setup.c:2740
 #, fuzzy, c-format
 msgid "Failed to switch device %s to dm-error."
 msgstr "Laitekuvaajahakemiston hankkiminen epäonnistui."
 
-#: lib/setup.c:2809
+#: lib/setup.c:2817
 #, fuzzy
 msgid "Cannot resize loop device."
 msgstr "Silmukkalaitteen koon muuttaminen epäonnistui.\n"
 
-#: lib/setup.c:2882
+#: lib/setup.c:2890
 msgid "Do you really want to change UUID of device?"
 msgstr "Haluatko todella vaihtaa laitteen UUID-tunnistetta?"
 
-#: lib/setup.c:2958
+#: lib/setup.c:2966
 #, fuzzy
 msgid "Header backup file does not contain compatible LUKS header."
 msgstr "Varmuuskopiotiedosto ei sisällä kelvollista LUKS-otsaketta.\n"
 
-#: lib/setup.c:3058
+#: lib/setup.c:3066
 #, fuzzy, c-format
 msgid "Volume %s is not active."
 msgstr "Taltio %s ei ole käytössä.\n"
 
-#: lib/setup.c:3069
+#: lib/setup.c:3077
 #, fuzzy, c-format
 msgid "Volume %s is already suspended."
 msgstr "Taltio %s on jo keskeytetty.\n"
 
-#: lib/setup.c:3082
+#: lib/setup.c:3090
 #, fuzzy, c-format
 msgid "Suspend is not supported for device %s."
 msgstr "Keskeyttämistä ei tueta laitetyypille %s.\n"
 
-#: lib/setup.c:3084
+#: lib/setup.c:3092
 #, fuzzy, c-format
 msgid "Error during suspending device %s."
 msgstr "Virhe keskeytettäessä laitetta %s.\n"
 
-#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267
-#, fuzzy, c-format
-msgid "Volume %s is not suspended."
-msgstr "Taltiota %s ei ole keskeytetty.\n"
-
-#: lib/setup.c:3146
+#: lib/setup.c:3128
 #, fuzzy, c-format
 msgid "Resume is not supported for device %s."
 msgstr "Jatkamista ei tueta laiteelle %s.\n"
 
-#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297
+#: lib/setup.c:3130
 #, fuzzy, c-format
 msgid "Error during resuming device %s."
 msgstr "Virhe jatkettaessa laitteella %s.\n"
 
-#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4309 lib/setup.c:4322
-#: lib/setup.c:4330 lib/setup.c:4343 lib/setup.c:4693 lib/setup.c:5839
+#: lib/setup.c:3164 lib/setup.c:3212 lib/setup.c:3282
+#, fuzzy, c-format
+msgid "Volume %s is not suspended."
+msgstr "Taltiota %s ei ole keskeytetty.\n"
+
+#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4363 lib/setup.c:4376
+#: lib/setup.c:4384 lib/setup.c:4397 lib/setup.c:4751 lib/setup.c:5900
 #, fuzzy
 msgid "Volume key does not match the volume."
 msgstr "Taltioavain ei täsmää taltion kanssa.\n"
 
 #  Volume key tarkoittaa yleensä äänenvoimakkuussäädintä, ei välttämättä tässä.
-#: lib/setup.c:3343 lib/setup.c:3531
+#: lib/setup.c:3344 lib/setup.c:3535
 #, fuzzy
 msgid "Cannot add key slot, all slots disabled and no volume key provided."
 msgstr "Avainvälin lisäys epäonnistui, kaikki välit on otettu pois käytöstä ja yhtään taltioavainta ei ole tarjottu.\n"
 
-#: lib/setup.c:3483
+#: lib/setup.c:3487
 #, fuzzy
 msgid "Failed to swap new key slot."
 msgstr "Uuden avainvälin vaihtaminen epäonnistui.\n"
 
-#: lib/setup.c:3669
+#: lib/setup.c:3673
 #, fuzzy, c-format
 msgid "Key slot %d is invalid."
 msgstr "Avainväli %d on virheellinen.\n"
 
-#: lib/setup.c:3675 src/cryptsetup.c:1572 src/cryptsetup.c:1917
+#: lib/setup.c:3679 src/cryptsetup.c:1684 src/cryptsetup.c:2029
 #, fuzzy, c-format
 msgid "Keyslot %d is not active."
 msgstr "Avainväli %d ei ole käytössä.\n"
 
-#: lib/setup.c:3694
+#: lib/setup.c:3698
 #, fuzzy
 msgid "Device header overlaps with data area."
 msgstr "Tälle salasanalauseelle ei ole saatavissa laiteotsaketta.\n"
 
-#: lib/setup.c:3981
+#: lib/setup.c:3992
 msgid "Reencryption in-progress. Cannot activate device."
 msgstr ""
 
-#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2243
-#: lib/luks2/luks2_reencrypt.c:2836
+#: lib/setup.c:3994 lib/luks2/luks2_json_metadata.c:2430
+#: lib/luks2/luks2_reencrypt.c:2975
 #, fuzzy
 msgid "Failed to get reencryption lock."
 msgstr "Uudelleensalauslokitiedoston lukeminen epäonnistui.\n"
 
-#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855
+#: lib/setup.c:4007 lib/luks2/luks2_reencrypt.c:2994
 #, fuzzy
 msgid "LUKS2 reencryption recovery failed."
 msgstr "Uudelleensalauslokitiedoston avaus epäonnistui.\n"
 
-#: lib/setup.c:4127 lib/setup.c:4379
+#: lib/setup.c:4175 lib/setup.c:4437
 #, fuzzy
 msgid "Device type is not properly initialized."
 msgstr "Laitetyyppi ei ole alustettu oikein.\n"
 
-#: lib/setup.c:4171
-#, fuzzy, c-format
-msgid "Cannot use device %s, name is invalid or still in use."
-msgstr "Laitteen %s pohjustus epäonnistui, koska se on yhä käytössä.\n"
-
-#: lib/setup.c:4174
+#: lib/setup.c:4223
 #, fuzzy, c-format
 msgid "Device %s already exists."
 msgstr "Laite %s on jo olemassa.\n"
 
-#: lib/setup.c:4296
+#: lib/setup.c:4230
+#, fuzzy, c-format
+msgid "Cannot use device %s, name is invalid or still in use."
+msgstr "Laitteen %s pohjustus epäonnistui, koska se on yhä käytössä.\n"
+
+#: lib/setup.c:4350
 #, fuzzy
 msgid "Incorrect volume key specified for plain device."
 msgstr "Virheellinen taltioavain määritelty tavalliselle laitteelle.\n"
 
-#: lib/setup.c:4405
+#: lib/setup.c:4463
 #, fuzzy
 msgid "Incorrect root hash specified for verity device."
 msgstr "Virheellinen root-tiiviste määritelty verity-laitteelle.\n"
 
-#: lib/setup.c:4412
+#: lib/setup.c:4470
 msgid "Root hash signature required."
 msgstr ""
 
-#: lib/setup.c:4421
+#: lib/setup.c:4479
 msgid "Kernel keyring missing: required for passing signature to kernel."
 msgstr ""
 
-#: lib/setup.c:4438 lib/setup.c:5915
+#: lib/setup.c:4496 lib/setup.c:5976
 #, fuzzy
 msgid "Failed to load key in kernel keyring."
 msgstr "Avaintiedoston avaus epäonnistui.\n"
 
-#: lib/setup.c:4491 lib/setup.c:4507 lib/luks2/luks2_json_metadata.c:2296
-#: src/cryptsetup.c:2664
+#: lib/setup.c:4549 lib/setup.c:4565 lib/luks2/luks2_json_metadata.c:2483
+#: src/cryptsetup.c:2794
 #, fuzzy, c-format
 msgid "Device %s is still in use."
 msgstr "Laite %s on yhä käytössä.\n"
 
-#: lib/setup.c:4516
+#: lib/setup.c:4574
 #, fuzzy, c-format
 msgid "Invalid device %s."
 msgstr "Virheellinen laite %s.\n"
 
-#: lib/setup.c:4632
+#: lib/setup.c:4690
 #, fuzzy
 msgid "Volume key buffer too small."
 msgstr "Taltioavainpuskuri on liian pieni.\n"
 
-#: lib/setup.c:4640
+#: lib/setup.c:4698
 #, fuzzy
 msgid "Cannot retrieve volume key for plain device."
 msgstr "Taltioavaimen nouto tavalliselle laitteelle epäonnistui.\n"
 
-#: lib/setup.c:4657
+#: lib/setup.c:4715
 #, fuzzy
 msgid "Cannot retrieve root hash for verity device."
 msgstr "Virheellinen root-tiiviste määritelty verity-laitteelle.\n"
 
-#: lib/setup.c:4659
+#: lib/setup.c:4717
 #, fuzzy, c-format
 msgid "This operation is not supported for %s crypt device."
 msgstr "Tätä toimintoa ei tueta %s-salauslaitteelle.\n"
 
-#: lib/setup.c:4865
+#: lib/setup.c:4923
 #, fuzzy
 msgid "Dump operation is not supported for this device type."
 msgstr "Dump-toimintoa ei tueta tälle laitetyypille.\n"
 
-#: lib/setup.c:5190
+#: lib/setup.c:5251
 #, c-format
 msgid "Data offset is not multiple of %u bytes."
 msgstr ""
 
-#: lib/setup.c:5475
+#: lib/setup.c:5536
 #, fuzzy, c-format
 msgid "Cannot convert device %s which is still in use."
 msgstr "Laitteen %s pohjustus epäonnistui, koska se on yhä käytössä.\n"
 
-#: lib/setup.c:5772
+#: lib/setup.c:5833
 #, c-format
 msgid "Failed to assign keyslot %u as the new volume key."
 msgstr ""
 
-#: lib/setup.c:5845
+#: lib/setup.c:5906
 msgid "Failed to initialize default LUKS2 keyslot parameters."
 msgstr ""
 
-#: lib/setup.c:5851
+#: lib/setup.c:5912
 #, fuzzy, c-format
 msgid "Failed to assign keyslot %d to digest."
 msgstr "Uuden avainvälin vaihtaminen epäonnistui.\n"
 
-#: lib/setup.c:5982
+#: lib/setup.c:6043
 #, fuzzy
 msgid "Kernel keyring is not supported by the kernel."
 msgstr "Tätä toimintoa ei tueta tälle laitetyypille.\n"
 
-#: lib/setup.c:5992 lib/luks2/luks2_reencrypt.c:2952
+#: lib/setup.c:6053 lib/luks2/luks2_reencrypt.c:3179
 #, fuzzy, c-format
 msgid "Failed to read passphrase from keyring (error %d)."
 msgstr "Avainsäiliöstä lukeminen epäonnistui.\n"
 
-#: lib/setup.c:6016
+#: lib/setup.c:6077
 msgid "Failed to acquire global memory-hard access serialization lock."
 msgstr ""
 
@@ -638,8 +640,8 @@ msgstr "Avaintiedoston kutsuminen stat-funktiolla epäonnistui.\n"
 msgid "Cannot seek to requested keyfile offset."
 msgstr "Pyydetyn avaintiedostosiirrososoitteen etsintä epäonnistui.\n"
 
-#: lib/utils.c:213 lib/utils.c:228 src/utils_password.c:188
-#: src/utils_password.c:201
+#: lib/utils.c:213 lib/utils.c:228 src/utils_password.c:223
+#: src/utils_password.c:235
 #, fuzzy
 msgid "Out of memory while reading passphrase."
 msgstr "Muisti loppui luettaessa salasanalausetta.\n"
@@ -663,53 +665,58 @@ msgstr "Avaintiedoston enimmäiskoko ylitettiin.\n"
 msgid "Cannot read requested amount of data."
 msgstr "Pyydetyn tietomäärän lukeminen epäonnistui.\n"
 
-#: lib/utils_device.c:187 lib/utils_storage_wrappers.c:110
+#: lib/utils_device.c:190 lib/utils_storage_wrappers.c:110
 #: lib/luks1/keyencryption.c:91
 #, fuzzy, c-format
 msgid "Device %s does not exist or access denied."
 msgstr "Laite %s ei ole olemassa tai pääsy siihen on kielletty.\n"
 
-#: lib/utils_device.c:197
+#: lib/utils_device.c:200
 #, fuzzy, c-format
 msgid "Device %s is not compatible."
 msgstr "Laite %s ei ole aktiivinen.\n"
 
-#: lib/utils_device.c:642
+#: lib/utils_device.c:544
+#, c-format
+msgid "Ignoring bogus optimal-io size for data device (%u bytes)."
+msgstr ""
+
+#: lib/utils_device.c:666
 #, fuzzy, c-format
 msgid "Device %s is too small. Need at least %<PRIu64> bytes."
 msgstr "Laite %s on liian pieni. (LUKS vaatii vähintään %<PRIu64> tavua.)\n"
 
-#: lib/utils_device.c:723
+#: lib/utils_device.c:747
 #, fuzzy, c-format
 msgid "Cannot use device %s which is in use (already mapped or mounted)."
 msgstr "Laitteen %s käyttö epäonnistui, koska se on jo käytössä (jo kuvattu tai liitetty).\n"
 
-#: lib/utils_device.c:727
+#: lib/utils_device.c:751
 #, fuzzy, c-format
 msgid "Cannot use device %s, permission denied."
 msgstr "Laitteeseen %s kirjoittaminen epäonnistui, pääsy kielletty.\n"
 
-#: lib/utils_device.c:730
+#: lib/utils_device.c:754
 #, fuzzy, c-format
 msgid "Cannot get info about device %s."
 msgstr "Tietojen hakeminen laitteesta %s epäonnistui.\n"
 
-#: lib/utils_device.c:753
+#: lib/utils_device.c:777
 #, fuzzy
 msgid "Cannot use a loopback device, running as non-root user."
 msgstr "Silmukkalaitteen käyttö epäonnistui, suoritetaan ei-root-käyttäjänä.\n"
 
-#: lib/utils_device.c:763
+#: lib/utils_device.c:787
 #, fuzzy
 msgid "Attaching loopback device failed (loop device with autoclear flag is required)."
 msgstr "Silmukkalaitteeseen liittyminen epäonnistui (vaaditaan silmukkalaite autoclear-lipulla).\n"
 
-#: lib/utils_device.c:809
+#: lib/utils_device.c:833
 #, fuzzy, c-format
 msgid "Requested offset is beyond real size of device %s."
 msgstr "Pyydetty siirrososoite on laitteen %s todellisen koon ulkopuolella.\n"
 
-#: lib/utils_device.c:817
+#: lib/utils_device.c:841
 #, fuzzy, c-format
 msgid "Device %s has zero size."
 msgstr "Laitteen %s koko on nolla.\n"
@@ -785,7 +792,7 @@ msgstr ""
 
 #: lib/utils_device_locking.c:109
 #, c-format
-msgid "WARNING: Locking directory %s/%s is missing!\n"
+msgid "Locking directory %s/%s will be created with default compiled-in permissions."
 msgstr ""
 
 #: lib/utils_device_locking.c:119
@@ -793,8 +800,8 @@ msgstr ""
 msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)."
 msgstr ""
 
-#: lib/utils_wipe.c:184 src/cryptsetup_reencrypt.c:941
-#: src/cryptsetup_reencrypt.c:1025
+#: lib/utils_wipe.c:184 src/cryptsetup_reencrypt.c:959
+#: src/cryptsetup_reencrypt.c:1043
 #, fuzzy
 msgid "Cannot seek to device offset."
 msgstr "Laitteen siirrososoitteen etsintä epäonnistui.\n"
@@ -823,8 +830,8 @@ msgid "Cipher specification should be in [cipher]-[mode]-[iv] format."
 msgstr ""
 
 #: lib/luks1/keyencryption.c:97 lib/luks1/keymanage.c:344
-#: lib/luks1/keymanage.c:635 lib/luks1/keymanage.c:1080
-#: lib/luks2/luks2_json_metadata.c:1252 lib/luks2/luks2_keyslot.c:734
+#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1094
+#: lib/luks2/luks2_json_metadata.c:1347 lib/luks2/luks2_keyslot.c:740
 #, fuzzy, c-format
 msgid "Cannot write to device %s, permission denied."
 msgstr "Laitteeseen %s kirjoittaminen epäonnistui, pääsy kielletty.\n"
@@ -846,12 +853,12 @@ msgid "IO error while encrypting keyslot."
 msgstr "Siirräntävirhe salattaessa avainväliä.\n"
 
 #: lib/luks1/keyencryption.c:246 lib/luks1/keymanage.c:347
-#: lib/luks1/keymanage.c:588 lib/luks1/keymanage.c:638 lib/tcrypt/tcrypt.c:670
-#: lib/verity/verity.c:80 lib/verity/verity.c:178 lib/verity/verity_hash.c:311
-#: lib/verity/verity_hash.c:322 lib/verity/verity_hash.c:342
-#: lib/verity/verity_fec.c:241 lib/verity/verity_fec.c:253
-#: lib/verity/verity_fec.c:258 lib/luks2/luks2_json_metadata.c:1255
-#: src/cryptsetup_reencrypt.c:200 src/cryptsetup_reencrypt.c:212
+#: lib/luks1/keymanage.c:595 lib/luks1/keymanage.c:645 lib/tcrypt/tcrypt.c:670
+#: lib/verity/verity.c:81 lib/verity/verity.c:194 lib/verity/verity_hash.c:286
+#: lib/verity/verity_hash.c:295 lib/verity/verity_hash.c:315
+#: lib/verity/verity_fec.c:250 lib/verity/verity_fec.c:262
+#: lib/verity/verity_fec.c:267 lib/luks2/luks2_json_metadata.c:1350
+#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230
 #, fuzzy, c-format
 msgid "Cannot open device %s."
 msgstr "Laitteen %s avaus epäonnistui.\n"
@@ -873,44 +880,44 @@ msgstr "Laite %s on liian pieni. (LUKS vaatii vähintään %<PRIu64> tavua.)\n"
 msgid "LUKS keyslot %u is invalid."
 msgstr "LUKS-avainväli %u on virheellinen.\n"
 
-#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472
-#: lib/luks2/luks2_json_metadata.c:1083 src/cryptsetup.c:1433
-#: src/cryptsetup.c:1559 src/cryptsetup.c:1616 src/cryptsetup.c:1672
-#: src/cryptsetup.c:1739 src/cryptsetup.c:1842 src/cryptsetup.c:1906
-#: src/cryptsetup.c:2136 src/cryptsetup.c:2331 src/cryptsetup.c:2391
-#: src/cryptsetup.c:2457 src/cryptsetup.c:2621 src/cryptsetup.c:3271
-#: src/cryptsetup.c:3280 src/cryptsetup_reencrypt.c:1388
+#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479
+#: lib/luks2/luks2_json_metadata.c:1193 src/cryptsetup.c:1545
+#: src/cryptsetup.c:1671 src/cryptsetup.c:1728 src/cryptsetup.c:1784
+#: src/cryptsetup.c:1851 src/cryptsetup.c:1954 src/cryptsetup.c:2018
+#: src/cryptsetup.c:2248 src/cryptsetup.c:2459 src/cryptsetup.c:2521
+#: src/cryptsetup.c:2587 src/cryptsetup.c:2751 src/cryptsetup.c:3427
+#: src/cryptsetup.c:3436 src/cryptsetup_reencrypt.c:1406
 #, fuzzy, c-format
 msgid "Device %s is not a valid LUKS device."
 msgstr "Laite %s ei ole kelvollinen LUKS-laite.\n"
 
-#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1100
+#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1210
 #, fuzzy, c-format
 msgid "Requested header backup file %s already exists."
 msgstr "Pyydetty otsakevarmuuskopiotiedosto %s on jo olemassa.\n"
 
-#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1102
+#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1212
 #, fuzzy, c-format
 msgid "Cannot create header backup file %s."
 msgstr "Otsakevarmuuskopiotiedoston %s luominen epäonnistui.\n"
 
-#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1109
+#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1219
 #, fuzzy, c-format
 msgid "Cannot write header backup file %s."
 msgstr "Otsakevarmuuskopiotiedoston %s kirjoittaminen epäonnistui.\n"
 
-#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1161
+#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1256
 #, fuzzy
 msgid "Backup file does not contain valid LUKS header."
 msgstr "Varmuuskopiotiedosto ei sisällä kelvollista LUKS-otsaketta.\n"
 
-#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549
-#: lib/luks2/luks2_json_metadata.c:1182
+#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:556
+#: lib/luks2/luks2_json_metadata.c:1277
 #, fuzzy, c-format
 msgid "Cannot open header backup file %s."
 msgstr "Otsakevarmuuskopiotiedoston %s avaus epäonnistui.\n"
 
-#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1190
+#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1285
 #, fuzzy, c-format
 msgid "Cannot read header backup file %s."
 msgstr "Otsakevarmuuskopiotiedoston %s lukeminen epäonnistui.\n"
@@ -933,7 +940,7 @@ msgstr "ei sisällä LUKS-otsaketta. Otsakkeen korvaaminen voi tuhota tietoja tu
 msgid "already contains LUKS header. Replacing header will destroy existing keyslots."
 msgstr "sisältää jo LUKS-otsakkeen. Otsakkeen korvaaminen tuhoaa olemassaolevat avainvälit."
 
-#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1224
+#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1319
 msgid ""
 "\n"
 "WARNING: real device header has different UUID than backup!"
@@ -946,108 +953,108 @@ msgstr ""
 msgid "Non standard key size, manual repair required."
 msgstr "Ei-vakio avainkoko, manuaalinen korjaus pyydetty.\n"
 
-#: lib/luks1/keymanage.c:380
+#: lib/luks1/keymanage.c:385
 #, fuzzy
 msgid "Non standard keyslots alignment, manual repair required."
 msgstr "Ei-vakiot avainvälitasaukset, manuaalinen korjaus pyydetty.\n"
 
-#: lib/luks1/keymanage.c:390
+#: lib/luks1/keymanage.c:397
 #, fuzzy
 msgid "Repairing keyslots."
 msgstr "Korjataan avainvälit.\n"
 
-#: lib/luks1/keymanage.c:409
+#: lib/luks1/keymanage.c:416
 #, fuzzy, c-format
 msgid "Keyslot %i: offset repaired (%u -> %u)."
 msgstr "Avainväli %i: siirrososoite korjattu (%u -> %u).\n"
 
-#: lib/luks1/keymanage.c:417
+#: lib/luks1/keymanage.c:424
 #, fuzzy, c-format
 msgid "Keyslot %i: stripes repaired (%u -> %u)."
 msgstr "Avainväli %i: raidat korjattu (%u -> %u).\n"
 
-#: lib/luks1/keymanage.c:426
+#: lib/luks1/keymanage.c:433
 #, fuzzy, c-format
 msgid "Keyslot %i: bogus partition signature."
 msgstr "Avainväli %i: valeosiotunniste.\n"
 
-#: lib/luks1/keymanage.c:431
+#: lib/luks1/keymanage.c:438
 #, fuzzy, c-format
 msgid "Keyslot %i: salt wiped."
 msgstr "Avainväli %i: satunnaisarvosiemen tuhottu.\n"
 
-#: lib/luks1/keymanage.c:448
+#: lib/luks1/keymanage.c:455
 #, fuzzy
 msgid "Writing LUKS header to disk."
 msgstr "Kirjoitetaan LUKS-otsake levylle.\n"
 
-#: lib/luks1/keymanage.c:453
+#: lib/luks1/keymanage.c:460
 msgid "Repair failed."
 msgstr "Korjaus epäonnistui."
 
-#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750
+#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757
 #, fuzzy, c-format
 msgid "Requested LUKS hash %s is not supported."
 msgstr "Pyydetty LUKS-tiiviste %s ei ole tuettu.\n"
 
-#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1133
+#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1237
 #, fuzzy
 msgid "No known problems detected for LUKS header."
 msgstr "Tuntemattomat pulmat havaittu LUKS-otsakkeelle.\n"
 
-#: lib/luks1/keymanage.c:660
+#: lib/luks1/keymanage.c:667
 #, fuzzy, c-format
 msgid "Error during update of LUKS header on device %s."
 msgstr "Virhe LUKS-otsakkeen päivityksen aikana laitteessa %s.\n"
 
-#: lib/luks1/keymanage.c:668
+#: lib/luks1/keymanage.c:675
 #, fuzzy, c-format
 msgid "Error re-reading LUKS header after update on device %s."
 msgstr "Virhe luettaessa uudelleen LUKS-otsaketta päivityksen jälkeen laitteessa %s.\n"
 
-#: lib/luks1/keymanage.c:744
+#: lib/luks1/keymanage.c:751
 #, fuzzy
 msgid "Data offset for LUKS header must be either 0 or higher than header size."
 msgstr "Tietosiirrososoitteen irrotetulle LUKS-otsakkeelle on oltava joko 0 tai suurempi kuin otsakekoko (%d sektoria).\n"
 
-#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825
-#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1001
-#: src/cryptsetup.c:2784
+#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832
+#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1101
+#: src/cryptsetup.c:2914
 #, fuzzy
 msgid "Wrong LUKS UUID format provided."
 msgstr "Väärä LUKS UUID-muoto tarjottu.\n"
 
-#: lib/luks1/keymanage.c:778
+#: lib/luks1/keymanage.c:785
 #, fuzzy
 msgid "Cannot create LUKS header: reading random salt failed."
 msgstr "LUKS-otsakkeen luominen epäonnistui: satunnaisarvosiemenen lukeminen epäonnistui.\n"
 
-#: lib/luks1/keymanage.c:804
+#: lib/luks1/keymanage.c:811
 #, fuzzy, c-format
 msgid "Cannot create LUKS header: header digest failed (using hash %s)."
 msgstr "LUKS-otsakkeen luominen epäonnistui: otsaketiiviste epäonnistui (käytettäen tiivistettä %s).\n"
 
-#: lib/luks1/keymanage.c:848
+#: lib/luks1/keymanage.c:855
 #, fuzzy, c-format
 msgid "Key slot %d active, purge first."
 msgstr "Avainväli %d aktiivinen, puhdista ensimmäinen.\n"
 
-#: lib/luks1/keymanage.c:854
+#: lib/luks1/keymanage.c:861
 #, fuzzy, c-format
 msgid "Key slot %d material includes too few stripes. Header manipulation?"
 msgstr "Avainvälin %d materiaali sisältää liian vähän raitoja. Otsaketta on käsitelty?\n"
 
-#: lib/luks1/keymanage.c:990
+#: lib/luks1/keymanage.c:1002
 #, fuzzy, c-format
 msgid "Cannot open keyslot (using hash %s)."
 msgstr "Avainkäsittelyvirhe (käytetään tiivistealgoritmia %s).\n"
 
-#: lib/luks1/keymanage.c:1066
+#: lib/luks1/keymanage.c:1080
 #, fuzzy, c-format
 msgid "Key slot %d is invalid, please select keyslot between 0 and %d."
 msgstr "Avainväli %d on virheellinen, valitse avainväli välillä 0 ... %d.\n"
 
-#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738
+#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:744
 #, fuzzy, c-format
 msgid "Cannot wipe device %s."
 msgstr "Laitteen %s pyyhkiminen tyhjäksi epäonnistui.\n"
@@ -1086,12 +1093,12 @@ msgstr "TCRYPT-salasanalauseen enimmäispituus (%d) ylitettiin.\n"
 msgid "PBKDF2 hash algorithm %s not available, skipping."
 msgstr "PBKDF2-tiivistealgoritmi %s ei ole käytettävissä, ohitetaan.\n"
 
-#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1010
+#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059
 #, fuzzy
 msgid "Required kernel crypto interface not available."
 msgstr "Pyydetty ydinsalauskäyttöliittymä ei ole käytettävissä.\n"
 
-#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1012
+#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061
 #, fuzzy
 msgid "Ensure you have algif_skcipher kernel module loaded."
 msgstr "Varmista, että algif_skcipher-käyttöjärjestelmäydinmoduuli on ladattu.\n"
@@ -1106,167 +1113,180 @@ msgstr "Aktivointia ei tueta sektorikoolle %d.\n"
 msgid "Kernel does not support activation for this TCRYPT legacy mode."
 msgstr "Käyttöjärjestelmäydin ei tue aktivointia tälle TCRYPT-perinnetilassa.\n"
 
-#: lib/tcrypt/tcrypt.c:793
+#: lib/tcrypt/tcrypt.c:790
 #, fuzzy, c-format
 msgid "Activating TCRYPT system encryption for partition %s."
 msgstr "Aktivoidaan TCRYPT-järjestelmäsalaus osiolle %s.\n"
 
-#: lib/tcrypt/tcrypt.c:871
+#: lib/tcrypt/tcrypt.c:868
 #, fuzzy
 msgid "Kernel does not support TCRYPT compatible mapping."
 msgstr "Käyttöjärjestelmäydin ei tue TCRYPT -yhteensopivaa kuvausta.\n"
 
-#: lib/tcrypt/tcrypt.c:1093
+#: lib/tcrypt/tcrypt.c:1090
 msgid "This function is not supported without TCRYPT header load."
 msgstr "Tätä toimintoa ei tueta ilman TCRYPT-otsakelatausta."
 
-#: lib/bitlk/bitlk.c:333
+#: lib/bitlk/bitlk.c:350
 #, c-format
 msgid "Unexpected metadata entry type '%u' found when parsing supported Volume Master Key."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:380
+#: lib/bitlk/bitlk.c:397
 msgid "Invalid string found when parsing Volume Master Key."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:385
+#: lib/bitlk/bitlk.c:402
 #, c-format
 msgid "Unexpected string ('%s') found when parsing supported Volume Master Key."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:399
+#: lib/bitlk/bitlk.c:419
 #, c-format
 msgid "Unexpected metadata entry value '%u' found when parsing supported Volume Master Key."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:479
+#: lib/bitlk/bitlk.c:502
 #, fuzzy, c-format
 msgid "Failed to read BITLK signature from %s."
 msgstr "Avainsäiliöstä lukeminen epäonnistui.\n"
 
-#: lib/bitlk/bitlk.c:485
-msgid "BITLK version 1 is currently not supported."
+#: lib/bitlk/bitlk.c:514
+msgid "Invalid or unknown signature for BITLK device."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:491
-msgid "Invalid or unknown boot signature for BITLK device."
+#: lib/bitlk/bitlk.c:520
+msgid "BITLK version 1 is currently not supported."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:503
-msgid "Invalid or unknown signature for BITLK device."
+#: lib/bitlk/bitlk.c:526
+msgid "Invalid or unknown boot signature for BITLK device."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:510
+#: lib/bitlk/bitlk.c:538
 #, fuzzy, c-format
 msgid "Unsupported sector size %<PRIu16>."
 msgstr "Tukematon LUKS-versio %d.\n"
 
-#: lib/bitlk/bitlk.c:518
+#: lib/bitlk/bitlk.c:546
 #, fuzzy, c-format
 msgid "Failed to read BITLK header from %s."
 msgstr "Avainsäiliöstä lukeminen epäonnistui.\n"
 
-#: lib/bitlk/bitlk.c:543
+#: lib/bitlk/bitlk.c:571
 #, c-format
 msgid "Failed to read BITLK FVE metadata from %s."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:594
+#: lib/bitlk/bitlk.c:622
 #, fuzzy
 msgid "Unknown or unsupported encryption type."
 msgstr "UUID ei ole tuettu tälle laitetyypille.\n"
 
-#: lib/bitlk/bitlk.c:627
+#: lib/bitlk/bitlk.c:655
 #, c-format
 msgid "Failed to read BITLK metadata entries from %s."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:921
+#: lib/bitlk/bitlk.c:897
+#, c-format
+msgid "Unexpected metadata entry type '%u' found when parsing external key."
+msgstr ""
+
+#: lib/bitlk/bitlk.c:912
+#, c-format
+msgid "Unexpected metadata entry value '%u' found when parsing external key."
+msgstr ""
+
+#: lib/bitlk/bitlk.c:980
+msgid "Unexpected metadata entry found when parsing startup key."
+msgstr ""
+
+#: lib/bitlk/bitlk.c:1071
 #, fuzzy
 msgid "This operation is not supported."
 msgstr "Tätä toimintoa ei tueta %s-salauslaitteelle.\n"
 
-#: lib/bitlk/bitlk.c:929
-#, fuzzy
-msgid "Wrong key size."
-msgstr "Virheellinen avainkoko.\n"
+#: lib/bitlk/bitlk.c:1079
+msgid "Unexpected key data size."
+msgstr ""
 
-#: lib/bitlk/bitlk.c:981
+#: lib/bitlk/bitlk.c:1133
 msgid "This BITLK device is in an unsupported state and cannot be activated."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:987
+#: lib/bitlk/bitlk.c:1139
 #, c-format
 msgid "BITLK devices with type '%s' cannot be activated."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:1069
+#: lib/bitlk/bitlk.c:1234
 msgid "Activation of partially decrypted BITLK device is not supported."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:1205
+#: lib/bitlk/bitlk.c:1370
 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV."
 msgstr ""
 
-#: lib/bitlk/bitlk.c:1209
+#: lib/bitlk/bitlk.c:1374
 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser."
 msgstr ""
 
-#: lib/verity/verity.c:68 lib/verity/verity.c:171
+#: lib/verity/verity.c:69 lib/verity/verity.c:180
 #, fuzzy, c-format
 msgid "Verity device %s does not use on-disk header."
 msgstr "Verity-laite %s ei käytä paikallista levyotsaketta.\n"
 
-#: lib/verity/verity.c:90
+#: lib/verity/verity.c:91
 #, fuzzy, c-format
 msgid "Device %s is not a valid VERITY device."
 msgstr "Laite %s ei ole kelvollinen VERITY-laite.\n"
 
-#: lib/verity/verity.c:97
+#: lib/verity/verity.c:98
 #, fuzzy, c-format
 msgid "Unsupported VERITY version %d."
 msgstr "Tukematon VERITY-versio %d.\n"
 
-#: lib/verity/verity.c:128
+#: lib/verity/verity.c:129
 #, fuzzy
 msgid "VERITY header corrupted."
 msgstr "VERITY-otsake rikkinäinen.\n"
 
-#: lib/verity/verity.c:165
+#: lib/verity/verity.c:174
 #, fuzzy, c-format
 msgid "Wrong VERITY UUID format provided on device %s."
 msgstr "Väärä VERITY UUID-muoto tarjottu laitteessa %s.\n"
 
-#: lib/verity/verity.c:198
+#: lib/verity/verity.c:218
 #, fuzzy, c-format
 msgid "Error during update of verity header on device %s."
 msgstr "Virhe verity-otsakkeen päivityksen aikana laitteessa %s.\n"
 
-#: lib/verity/verity.c:256
+#: lib/verity/verity.c:276
 #, fuzzy
 msgid "Root hash signature verification is not supported."
 msgstr "Tiivistealgoritmia %s ei tueta.\n"
 
-#: lib/verity/verity.c:267
+#: lib/verity/verity.c:288
 msgid "Errors cannot be repaired with FEC device."
 msgstr ""
 
-#: lib/verity/verity.c:269
+#: lib/verity/verity.c:290
 #, c-format
 msgid "Found %u repairable errors with FEC device."
 msgstr ""
 
-#: lib/verity/verity.c:308
+#: lib/verity/verity.c:333
 #, fuzzy
 msgid "Kernel does not support dm-verity mapping."
 msgstr "Käyttöjärjestelmäydin ei tule dm-verity -yhteensopivaa kuvausta.\n"
 
-#: lib/verity/verity.c:312
+#: lib/verity/verity.c:337
 #, fuzzy
 msgid "Kernel does not support dm-verity signature option."
 msgstr "Käyttöjärjestelmäydin ei tule dm-verity -yhteensopivaa kuvausta.\n"
 
-#: lib/verity/verity.c:323
+#: lib/verity/verity.c:348
 #, fuzzy
 msgid "Verity device detected corruption after activation."
 msgstr "Verity-laite havaitsi rikkoutumisen aktivoinnin jälkeen.\n"
@@ -1276,47 +1296,42 @@ msgstr "Verity-laite havaitsi rikkoutumisen aktivoinnin jälkeen.\n"
 msgid "Spare area is not zeroed at position %<PRIu64>."
 msgstr "Vapaa-aluetta ei ole nollattu sijainnissa %<PRIu64>.\n"
 
-#: lib/verity/verity_hash.c:163 lib/verity/verity_hash.c:290
-#: lib/verity/verity_hash.c:303
+#: lib/verity/verity_hash.c:154 lib/verity/verity_hash.c:266
+#: lib/verity/verity_hash.c:277
 #, fuzzy
 msgid "Device offset overflow."
 msgstr "Laitesiirrososoitteen ylivuoto.\n"
 
-#: lib/verity/verity_hash.c:203
+#: lib/verity/verity_hash.c:194
 #, fuzzy, c-format
 msgid "Verification failed at position %<PRIu64>."
 msgstr "Todennus epäonnistui sijainnissa %<PRIu64>.\n"
 
-#: lib/verity/verity_hash.c:276
-#, fuzzy
-msgid "Invalid size parameters for verity device."
-msgstr "Virheelliset kokoparametrit verity-laitteelle.\n"
-
-#: lib/verity/verity_hash.c:296
+#: lib/verity/verity_hash.c:273
 msgid "Hash area overflow."
 msgstr ""
 
-#: lib/verity/verity_hash.c:373
+#: lib/verity/verity_hash.c:346
 #, fuzzy
 msgid "Verification of data area failed."
 msgstr "Data-alueen todentaminen epäonnistui.\n"
 
-#: lib/verity/verity_hash.c:378
+#: lib/verity/verity_hash.c:351
 #, fuzzy
 msgid "Verification of root hash failed."
 msgstr "Root-tiivisteen todentaminen epäonnistui.\n"
 
-#: lib/verity/verity_hash.c:384
+#: lib/verity/verity_hash.c:357
 #, fuzzy
 msgid "Input/output error while creating hash area."
 msgstr "Syöte/tulostevirhe luotaessa tiivistealuetta.\n"
 
-#: lib/verity/verity_hash.c:386
+#: lib/verity/verity_hash.c:359
 #, fuzzy
 msgid "Creation of hash area failed."
 msgstr "Tiivistealueen luominen epäonnistui.\n"
 
-#: lib/verity/verity_hash.c:433
+#: lib/verity/verity_hash.c:394
 #, fuzzy, c-format
 msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)."
 msgstr "VAROITUS: Käyttöjärjestelmäydin ei voi aktivoida laitetta, jos lohkokoko ylittää sivukoon (%u).\n"
@@ -1325,56 +1340,64 @@ msgstr "VAROITUS: Käyttöjärjestelmäydin ei voi aktivoida laitetta, jos lohko
 msgid "Failed to allocate RS context."
 msgstr ""
 
-#: lib/verity/verity_fec.c:146
+#: lib/verity/verity_fec.c:149
 #, fuzzy
 msgid "Failed to allocate buffer."
 msgstr "Avaintiedoston kutsuminen stat-funktiolla epäonnistui.\n"
 
-#: lib/verity/verity_fec.c:156
+#: lib/verity/verity_fec.c:159
 #, c-format
 msgid "Failed to read RS block %<PRIu64> byte %d."
 msgstr ""
 
-#: lib/verity/verity_fec.c:169
+#: lib/verity/verity_fec.c:172
 #, c-format
 msgid "Failed to read parity for RS block %<PRIu64>."
 msgstr ""
 
-#: lib/verity/verity_fec.c:177
+#: lib/verity/verity_fec.c:180
 #, c-format
 msgid "Failed to repair parity for block %<PRIu64>."
 msgstr ""
 
-#: lib/verity/verity_fec.c:188
+#: lib/verity/verity_fec.c:191
 #, c-format
 msgid "Failed to write parity for RS block %<PRIu64>."
 msgstr ""
 
-#: lib/verity/verity_fec.c:223
+#: lib/verity/verity_fec.c:227
 msgid "Block sizes must match for FEC."
 msgstr ""
 
-#: lib/verity/verity_fec.c:229
+#: lib/verity/verity_fec.c:233
 msgid "Invalid number of parity bytes."
 msgstr ""
 
-#: lib/verity/verity_fec.c:265
+#: lib/verity/verity_fec.c:238
+msgid "Invalid FEC segment length."
+msgstr ""
+
+#: lib/verity/verity_fec.c:302
 #, fuzzy, c-format
 msgid "Failed to determine size for device %s."
 msgstr "Tilapäisen avainsäiliön avaaminen epäonnistui.\n"
 
-#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343
+#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355
 #, fuzzy
 msgid "Kernel does not support dm-integrity mapping."
 msgstr "Käyttöjärjestelmäydin ei tule dm-verity -yhteensopivaa kuvausta.\n"
 
-#: lib/integrity/integrity.c:277
+#: lib/integrity/integrity.c:278
 #, fuzzy
 msgid "Kernel does not support dm-integrity fixed metadata alignment."
 msgstr "Käyttöjärjestelmäydin ei tule dm-verity -yhteensopivaa kuvausta.\n"
 
-#: lib/luks2/luks2_disk_metadata.c:383 lib/luks2/luks2_json_metadata.c:959
-#: lib/luks2/luks2_json_metadata.c:1244
+#: lib/integrity/integrity.c:287
+msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)."
+msgstr ""
+
+#: lib/luks2/luks2_disk_metadata.c:383 lib/luks2/luks2_json_metadata.c:1059
+#: lib/luks2/luks2_json_metadata.c:1339
 #, fuzzy, c-format
 msgid "Failed to acquire write lock on device %s."
 msgstr "Pääsy tilapäiseen avainsäiliölaitteeseen epäonnistui.\n"
@@ -1394,115 +1417,115 @@ msgstr ""
 msgid "Requested data offset is too small."
 msgstr "Laite %s on liian pieni.\n"
 
-#: lib/luks2/luks2_json_format.c:271
+#: lib/luks2/luks2_json_format.c:272
 #, c-format
 msgid "WARNING: keyslots area (%<PRIu64> bytes) is very small, available LUKS2 keyslot count is very limited.\n"
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:946 lib/luks2/luks2_json_metadata.c:1074
-#: lib/luks2/luks2_json_metadata.c:1150 lib/luks2/luks2_keyslot_luks2.c:92
+#: lib/luks2/luks2_json_metadata.c:1046 lib/luks2/luks2_json_metadata.c:1184
+#: lib/luks2/luks2_json_metadata.c:1245 lib/luks2/luks2_keyslot_luks2.c:92
 #: lib/luks2/luks2_keyslot_luks2.c:114
 #, fuzzy, c-format
 msgid "Failed to acquire read lock on device %s."
 msgstr "Pääsy tilapäiseen avainsäiliölaitteeseen epäonnistui.\n"
 
-#: lib/luks2/luks2_json_metadata.c:1167
+#: lib/luks2/luks2_json_metadata.c:1262
 #, c-format
 msgid "Forbidden LUKS2 requirements detected in backup %s."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:1208
+#: lib/luks2/luks2_json_metadata.c:1303
 #, fuzzy
 msgid "Data offset differ on device and backup, restore failed."
 msgstr "Tietosiirrososoite tai avainkoko eroaa laitteessa ja varmuuskopiossa, palautus epäonnistui.\n"
 
-#: lib/luks2/luks2_json_metadata.c:1214
+#: lib/luks2/luks2_json_metadata.c:1309
 #, fuzzy
 msgid "Binary header with keyslot areas size differ on device and backup, restore failed."
 msgstr "Tietosiirrososoite tai avainkoko eroaa laitteessa ja varmuuskopiossa, palautus epäonnistui.\n"
 
-#: lib/luks2/luks2_json_metadata.c:1221
+#: lib/luks2/luks2_json_metadata.c:1316
 #, fuzzy, c-format
 msgid "Device %s %s%s%s%s"
 msgstr "Laite %s %s%s"
 
-#: lib/luks2/luks2_json_metadata.c:1222
+#: lib/luks2/luks2_json_metadata.c:1317
 #, fuzzy
 msgid "does not contain LUKS2 header. Replacing header can destroy data on that device."
 msgstr "ei sisällä LUKS-otsaketta. Otsakkeen korvaaminen voi tuhota tietoja tuossa laitteessa."
 
-#: lib/luks2/luks2_json_metadata.c:1223
+#: lib/luks2/luks2_json_metadata.c:1318
 #, fuzzy
 msgid "already contains LUKS2 header. Replacing header will destroy existing keyslots."
 msgstr "sisältää jo LUKS-otsakkeen. Otsakkeen korvaaminen tuhoaa olemassaolevat avainvälit."
 
-#: lib/luks2/luks2_json_metadata.c:1225
+#: lib/luks2/luks2_json_metadata.c:1320
 msgid ""
 "\n"
 "WARNING: unknown LUKS2 requirements detected in real device header!\n"
 "Replacing header with backup may corrupt the data on that device!"
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:1227
+#: lib/luks2/luks2_json_metadata.c:1322
 msgid ""
 "\n"
 "WARNING: Unfinished offline reencryption detected on the device!\n"
 "Replacing header with backup may corrupt data."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:1323
+#: lib/luks2/luks2_json_metadata.c:1420
 #, c-format
 msgid "Ignored unknown flag %s."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2010 lib/luks2/luks2_reencrypt.c:1746
+#: lib/luks2/luks2_json_metadata.c:2197 lib/luks2/luks2_reencrypt.c:1856
 #, c-format
 msgid "Missing key for dm-crypt segment %u"
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2022 lib/luks2/luks2_reencrypt.c:1764
+#: lib/luks2/luks2_json_metadata.c:2209 lib/luks2/luks2_reencrypt.c:1874
 #, fuzzy
 msgid "Failed to set dm-crypt segment."
 msgstr "Avaintiedoston kutsuminen stat-funktiolla epäonnistui.\n"
 
-#: lib/luks2/luks2_json_metadata.c:2028 lib/luks2/luks2_reencrypt.c:1770
+#: lib/luks2/luks2_json_metadata.c:2215 lib/luks2/luks2_reencrypt.c:1880
 msgid "Failed to set dm-linear segment."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2155
+#: lib/luks2/luks2_json_metadata.c:2342
 msgid "Unsupported device integrity configuration."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2241
+#: lib/luks2/luks2_json_metadata.c:2428
 msgid "Reencryption in-progress. Cannot deactivate device."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2252 lib/luks2/luks2_reencrypt.c:3190
+#: lib/luks2/luks2_json_metadata.c:2439 lib/luks2/luks2_reencrypt.c:3416
 #, c-format
 msgid "Failed to replace suspended device %s with dm-error target."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2332
+#: lib/luks2/luks2_json_metadata.c:2519
 msgid "Failed to read LUKS2 requirements."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2339
+#: lib/luks2/luks2_json_metadata.c:2526
 msgid "Unmet LUKS2 requirements detected."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2347
+#: lib/luks2/luks2_json_metadata.c:2534
 msgid "Operation incompatible with device marked for legacy reencryption. Aborting."
 msgstr ""
 
-#: lib/luks2/luks2_json_metadata.c:2349
+#: lib/luks2/luks2_json_metadata.c:2536
 msgid "Operation incompatible with device marked for LUKS2 reencryption. Aborting."
 msgstr ""
 
-#: lib/luks2/luks2_keyslot.c:547 lib/luks2/luks2_keyslot.c:584
+#: lib/luks2/luks2_keyslot.c:556 lib/luks2/luks2_keyslot.c:593
 msgid "Not enough available memory to open a keyslot."
 msgstr ""
 
-#: lib/luks2/luks2_keyslot.c:549 lib/luks2/luks2_keyslot.c:586
+#: lib/luks2/luks2_keyslot.c:558 lib/luks2/luks2_keyslot.c:595
 #, fuzzy
 msgid "Keyslot open failed."
 msgstr "Avainväli %d on todennettu.\n"
@@ -1534,7 +1557,7 @@ msgstr ""
 msgid "Unable to move keyslot area. LUKS2 keyslots area too small."
 msgstr ""
 
-#: lib/luks2/luks2_luks1_convert.c:605 lib/luks2/luks2_luks1_convert.c:887
+#: lib/luks2/luks2_luks1_convert.c:605 lib/luks2/luks2_luks1_convert.c:889
 #, fuzzy
 msgid "Unable to move keyslot area."
 msgstr "Avaintiedoston avaus epäonnistui.\n"
@@ -1572,301 +1595,313 @@ msgstr ""
 msgid "Cannot convert to LUKS1 format - keyslot %u is not LUKS1 compatible."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:892
+#: lib/luks2/luks2_reencrypt.c:1002
 #, c-format
 msgid "Hotzone size must be multiple of calculated zone alignment (%zu bytes)."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:897
+#: lib/luks2/luks2_reencrypt.c:1007
 #, fuzzy, c-format
 msgid "Device size must be multiple of calculated zone alignment (%zu bytes)."
 msgstr "Pienennyskoon on oltava 512-tavuisen sektorin monikerta."
 
-#: lib/luks2/luks2_reencrypt.c:941
+#: lib/luks2/luks2_reencrypt.c:1051
 #, fuzzy, c-format
 msgid "Unsupported resilience mode %s"
 msgstr "Tukematon LUKS-versio %d.\n"
 
-#: lib/luks2/luks2_reencrypt.c:1158 lib/luks2/luks2_reencrypt.c:1313
-#: lib/luks2/luks2_reencrypt.c:1396 lib/luks2/luks2_reencrypt.c:1430
-#: lib/luks2/luks2_reencrypt.c:3030
+#: lib/luks2/luks2_reencrypt.c:1268 lib/luks2/luks2_reencrypt.c:1423
+#: lib/luks2/luks2_reencrypt.c:1506 lib/luks2/luks2_reencrypt.c:1540
+#: lib/luks2/luks2_reencrypt.c:3251
 #, fuzzy
 msgid "Failed to initialize old segment storage wrapper."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:1172 lib/luks2/luks2_reencrypt.c:1291
+#: lib/luks2/luks2_reencrypt.c:1282 lib/luks2/luks2_reencrypt.c:1401
 #, fuzzy
 msgid "Failed to initialize new segment storage wrapper."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:1340
+#: lib/luks2/luks2_reencrypt.c:1450
 #, fuzzy
 msgid "Failed to read checksums for current hotzone."
 msgstr "Avainsäiliöstä lukeminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038
+#: lib/luks2/luks2_reencrypt.c:1457 lib/luks2/luks2_reencrypt.c:3259
 #, fuzzy, c-format
 msgid "Failed to read hotzone area starting at %<PRIu64>."
 msgstr "Vapaa-aluetta ei ole nollattu sijainnissa %<PRIu64>.\n"
 
-#: lib/luks2/luks2_reencrypt.c:1366
+#: lib/luks2/luks2_reencrypt.c:1476
 #, fuzzy, c-format
 msgid "Failed to decrypt sector %zu."
 msgstr "Avainsäiliöstä lukeminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:1372
+#: lib/luks2/luks2_reencrypt.c:1482
 #, fuzzy, c-format
 msgid "Failed to recover sector %zu."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:1867
+#: lib/luks2/luks2_reencrypt.c:1977
 #, c-format
 msgid "Source and target device sizes don't match. Source %<PRIu64>, target: %<PRIu64>."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:1965
+#: lib/luks2/luks2_reencrypt.c:2075
 #, fuzzy, c-format
 msgid "Failed to activate hotzone device %s."
 msgstr "Pääsy tilapäiseen avainsäiliölaitteeseen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:1982
+#: lib/luks2/luks2_reencrypt.c:2092
 #, c-format
 msgid "Failed to activate overlay device %s with actual origin table."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:1989
+#: lib/luks2/luks2_reencrypt.c:2099
 #, fuzzy, c-format
 msgid "Failed to load new mapping for device %s."
 msgstr "Tilapäisen avainsäiliön avaaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:2060
+#: lib/luks2/luks2_reencrypt.c:2170
 msgid "Failed to refresh reencryption devices stack."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2216
+#: lib/luks2/luks2_reencrypt.c:2326
 #, fuzzy
 msgid "Failed to set new keyslots area size."
 msgstr "Uuden avainvälin vaihtaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:2318
+#: lib/luks2/luks2_reencrypt.c:2430
 #, c-format
 msgid "Data shift is not aligned to requested encryption sector size (%<PRIu32> bytes)."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2339
+#: lib/luks2/luks2_reencrypt.c:2451
 #, c-format
 msgid "Data device is not aligned to requested encryption sector size (%<PRIu32> bytes)."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2360
+#: lib/luks2/luks2_reencrypt.c:2472
 #, c-format
 msgid "Data shift (%<PRIu64> sectors) is less than future data offset (%<PRIu64> sectors)."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2366 lib/luks2/luks2_reencrypt.c:2779
-#: lib/luks2/luks2_reencrypt.c:2800
+#: lib/luks2/luks2_reencrypt.c:2478 lib/luks2/luks2_reencrypt.c:2918
+#: lib/luks2/luks2_reencrypt.c:2939
 #, fuzzy, c-format
 msgid "Failed to open %s in exclusive mode (already mapped or mounted)."
 msgstr "Laitteen %s käyttö epäonnistui, koska se on jo käytössä (jo kuvattu tai liitetty).\n"
 
-#: lib/luks2/luks2_reencrypt.c:2534
+#: lib/luks2/luks2_reencrypt.c:2647
 #, fuzzy
 msgid "Device not marked for LUKS2 reencryption."
 msgstr "Älä vaihda avainta, yhtään data-aluetta ei ole salattu uudelleen."
 
-#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295
+#: lib/luks2/luks2_reencrypt.c:2664 lib/luks2/luks2_reencrypt.c:3536
 msgid "Failed to load LUKS2 reencryption context."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2619
+#: lib/luks2/luks2_reencrypt.c:2744
 #, fuzzy
 msgid "Failed to get reencryption state."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:2623
+#: lib/luks2/luks2_reencrypt.c:2748 lib/luks2/luks2_reencrypt.c:3032
 #, fuzzy
 msgid "Device is not in reencryption."
 msgstr "Laite %s ei ole aktiivinen.\n"
 
-#: lib/luks2/luks2_reencrypt.c:2630
+#: lib/luks2/luks2_reencrypt.c:2755 lib/luks2/luks2_reencrypt.c:3039
 msgid "Reencryption process is already running."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2632
+#: lib/luks2/luks2_reencrypt.c:2757 lib/luks2/luks2_reencrypt.c:3041
 #, fuzzy
 msgid "Failed to acquire reencryption lock."
 msgstr "Uudelleensalauslokitiedoston lukeminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:2650
+#: lib/luks2/luks2_reencrypt.c:2775
 msgid "Cannot proceed with reencryption. Run reencryption recovery first."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2750
+#: lib/luks2/luks2_reencrypt.c:2889
 msgid "Active device size and requested reencryption size don't match."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2764
+#: lib/luks2/luks2_reencrypt.c:2903
 msgid "Illegal device size requested in reencryption parameters."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2834
+#: lib/luks2/luks2_reencrypt.c:2973
 msgid "Reencryption in-progress. Cannot perform recovery."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2906
+#: lib/luks2/luks2_reencrypt.c:3129
 msgid "LUKS2 reencryption already initialized in metadata."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:2913
+#: lib/luks2/luks2_reencrypt.c:3136
 msgid "Failed to initialize LUKS2 reencryption in metadata."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3004
+#: lib/luks2/luks2_reencrypt.c:3225
 msgid "Failed to set device segments for next reencryption hotzone."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3046
+#: lib/luks2/luks2_reencrypt.c:3267
 #, fuzzy
 msgid "Failed to write reencryption resilience metadata."
 msgstr "Uudelleensalauslokitiedoston kirjoittaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:3053
+#: lib/luks2/luks2_reencrypt.c:3274
 #, fuzzy
 msgid "Decryption failed."
 msgstr "Korjaus epäonnistui."
 
-#: lib/luks2/luks2_reencrypt.c:3058
+#: lib/luks2/luks2_reencrypt.c:3279
 #, fuzzy, c-format
 msgid "Failed to write hotzone area starting at %<PRIu64>."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:3063
+#: lib/luks2/luks2_reencrypt.c:3284
 #, fuzzy
 msgid "Failed to sync data."
 msgstr "Avaintiedoston kutsuminen stat-funktiolla epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:3071
+#: lib/luks2/luks2_reencrypt.c:3292
 msgid "Failed to update metadata after current reencryption hotzone completed."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3138
+#: lib/luks2/luks2_reencrypt.c:3359
 #, fuzzy
 msgid "Failed to write LUKS2 metadata."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:3161
+#: lib/luks2/luks2_reencrypt.c:3382
 msgid "Failed to wipe backup segment data."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3174
-msgid "Failed to disable reencryption requirement flag."
+#: lib/luks2/luks2_reencrypt.c:3388
+#, c-format
+msgid "Failed to remove unused (unbound) keyslot %d."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3182
+#: lib/luks2/luks2_reencrypt.c:3398
+#, fuzzy
+msgid "Failed to remove reencryption keyslot."
+msgstr "poista kaikki avainvälit (poista salausavain)"
+
+#: lib/luks2/luks2_reencrypt.c:3408
 #, c-format
 msgid "Fatal error while reencrypting chunk starting at %<PRIu64>, %<PRIu64> sectors long."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3191
+#: lib/luks2/luks2_reencrypt.c:3417
 msgid "Do not resume the device unless replaced with error target manually."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3240
+#: lib/luks2/luks2_reencrypt.c:3467
 msgid "Cannot proceed with reencryption. Unexpected reencryption status."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3246
+#: lib/luks2/luks2_reencrypt.c:3473
 msgid "Missing or invalid reencrypt context."
 msgstr ""
 
-#: lib/luks2/luks2_reencrypt.c:3253
+#: lib/luks2/luks2_reencrypt.c:3480
 #, fuzzy
 msgid "Failed to initialize reencryption device stack."
 msgstr "Salaustaustaohjelman alustus epäonnistui.\n"
 
-#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308
+#: lib/luks2/luks2_reencrypt.c:3508 lib/luks2/luks2_reencrypt.c:3549
 #, fuzzy
 msgid "Failed to update reencryption context."
 msgstr "Uudelleensalauslokitiedoston avaus epäonnistui.\n"
 
-#: lib/luks2/luks2_token.c:262
+#: lib/luks2/luks2_reencrypt_digest.c:376
+#, fuzzy
+msgid "Reencryption metadata is invalid."
+msgstr "Avainväli on virheellinen."
+
+#: lib/luks2/luks2_token.c:263
 msgid "No free token slot."
 msgstr ""
 
-#: lib/luks2/luks2_token.c:269
+#: lib/luks2/luks2_token.c:270
 #, fuzzy, c-format
 msgid "Failed to create builtin token %s."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: src/cryptsetup.c:164
+#: src/cryptsetup.c:198
 #, fuzzy
 msgid "Can't do passphrase verification on non-tty inputs."
 msgstr "Salasanalauseiden todennus epäonnistui ei-tty-syötteissä.\n"
 
-#: src/cryptsetup.c:221
+#: src/cryptsetup.c:261
 #, fuzzy
 msgid "Keyslot encryption parameters can be set only for LUKS2 device."
 msgstr "Tätä toimintoa tuetaan vain LUKS-laitteelle.\n"
 
-#: src/cryptsetup.c:251 src/cryptsetup.c:959 src/cryptsetup.c:1269
-#: src/cryptsetup.c:3145 src/cryptsetup_reencrypt.c:723
-#: src/cryptsetup_reencrypt.c:793
+#: src/cryptsetup.c:291 src/cryptsetup.c:1006 src/cryptsetup.c:1389
+#: src/cryptsetup.c:3295 src/cryptsetup_reencrypt.c:741
+#: src/cryptsetup_reencrypt.c:811
 #, fuzzy
 msgid "No known cipher specification pattern detected."
 msgstr "Havaittu tuntematon salakirjoitusmenetelmämäärittelymalli.\n"
 
-#: src/cryptsetup.c:259
+#: src/cryptsetup.c:299
 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n"
 msgstr "VAROITUS: Parametri --hash ohitetaan tavallisessa tilassa kun avaintiedosto on määritelty.\n"
 
-#: src/cryptsetup.c:267
+#: src/cryptsetup.c:307
 msgid "WARNING: The --keyfile-size option is being ignored, the read size is the same as the encryption key size.\n"
 msgstr "VAROITUS: Valitsin --keyfile-size ohitetaan , lukukoko on sama kuin salausavaimen koko.\n"
 
-#: src/cryptsetup.c:307
+#: src/cryptsetup.c:347
 #, c-format
 msgid "Detected device signature(s) on %s. Proceeding further may damage existing data."
 msgstr ""
 
-#: src/cryptsetup.c:313 src/cryptsetup.c:1090 src/cryptsetup.c:1142
-#: src/cryptsetup.c:1246 src/cryptsetup.c:1319 src/cryptsetup.c:1974
-#: src/cryptsetup.c:2682 src/cryptsetup.c:2805 src/integritysetup.c:233
+#: src/cryptsetup.c:353 src/cryptsetup.c:1137 src/cryptsetup.c:1184
+#: src/cryptsetup.c:1246 src/cryptsetup.c:1366 src/cryptsetup.c:1439
+#: src/cryptsetup.c:2086 src/cryptsetup.c:2812 src/cryptsetup.c:2936
+#: src/integritysetup.c:242
 msgid "Operation aborted.\n"
 msgstr ""
 
-#: src/cryptsetup.c:381
+#: src/cryptsetup.c:421
 #, fuzzy
 msgid "Option --key-file is required."
 msgstr "Vaaditaan valitsin --key-file.\n"
 
-#: src/cryptsetup.c:434
+#: src/cryptsetup.c:474
 msgid "Enter VeraCrypt PIM: "
 msgstr ""
 
-#: src/cryptsetup.c:443
+#: src/cryptsetup.c:483
 msgid "Invalid PIM value: parse error."
 msgstr ""
 
-#: src/cryptsetup.c:446
+#: src/cryptsetup.c:486
 #, fuzzy
 msgid "Invalid PIM value: 0."
 msgstr "Virheellinen laite %s.\n"
 
-#: src/cryptsetup.c:449
+#: src/cryptsetup.c:489
 msgid "Invalid PIM value: outside of range."
 msgstr ""
 
-#: src/cryptsetup.c:472
+#: src/cryptsetup.c:512
 #, fuzzy
 msgid "No device header detected with this passphrase."
 msgstr "Tälle salasanalauseelle ei ole saatavissa laiteotsaketta.\n"
 
-#: src/cryptsetup.c:541
+#: src/cryptsetup.c:582
 #, fuzzy, c-format
 msgid "Device %s is not a valid BITLK device."
 msgstr "Laite %s ei ole kelvollinen LUKS-laite.\n"
 
-#: src/cryptsetup.c:576
+#: src/cryptsetup.c:617
 msgid ""
 "Header dump with volume key is sensitive information\n"
 "which allows access to encrypted partition without passphrase.\n"
@@ -1876,199 +1911,213 @@ msgstr ""
 "joka sallii pääsyn salatulle osiolle ilman salasanaa.\n"
 "Tämä vedos pitäisi aina tallentaa salattuna turvallisessa paikasssa."
 
-#: src/cryptsetup.c:673
+#: src/cryptsetup.c:714
 #, c-format
 msgid "Device %s is still active and scheduled for deferred removal.\n"
 msgstr ""
 
-#: src/cryptsetup.c:701
+#: src/cryptsetup.c:742
 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set."
 msgstr ""
 
-#: src/cryptsetup.c:838
+#: src/cryptsetup.c:885
 #, fuzzy
 msgid "Benchmark interrupted."
 msgstr "koestussalaus"
 
-#: src/cryptsetup.c:859
+#: src/cryptsetup.c:906
 #, c-format
 msgid "PBKDF2-%-9s     N/A\n"
 msgstr ""
 
-#: src/cryptsetup.c:861
+#: src/cryptsetup.c:908
 #, c-format
 msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n"
 msgstr ""
 
-#: src/cryptsetup.c:875
+#: src/cryptsetup.c:922
 #, c-format
 msgid "%-10s N/A\n"
 msgstr ""
 
-#: src/cryptsetup.c:877
+#: src/cryptsetup.c:924
 #, c-format
 msgid "%-10s %4u iterations, %5u memory, %1u parallel threads (CPUs) for %zu-bit key (requested %u ms time)\n"
 msgstr ""
 
-#: src/cryptsetup.c:901
+#: src/cryptsetup.c:948
 #, fuzzy
 msgid "Result of benchmark is not reliable."
 msgstr "Suorituskykytestin tulos ei ole luotettava.\n"
 
-#: src/cryptsetup.c:951
+#: src/cryptsetup.c:998
 msgid "# Tests are approximate using memory only (no storage IO).\n"
 msgstr "# Testit käyttävät vain muistia ylimalkaan (ei tallennussiirtos).\n"
 
 #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned.
-#: src/cryptsetup.c:971
+#: src/cryptsetup.c:1018
 #, fuzzy, c-format
 msgid "#%*s Algorithm |       Key |      Encryption |      Decryption\n"
 msgstr "#  Algoritmi | Avain |  Salaus |  Salauksen purku\n"
 
-#: src/cryptsetup.c:975
+#: src/cryptsetup.c:1022
 #, fuzzy, c-format
 msgid "Cipher %s (with %i bits key) is not available."
 msgstr "Salaus %s ei ole käytettävissä.\n"
 
 #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned.
-#: src/cryptsetup.c:994
+#: src/cryptsetup.c:1041
 #, fuzzy
 msgid "#     Algorithm |       Key |      Encryption |      Decryption\n"
 msgstr "#  Algoritmi | Avain |  Salaus |  Salauksen purku\n"
 
-#: src/cryptsetup.c:1003
+#: src/cryptsetup.c:1052
 msgid "N/A"
 msgstr "Ei käytössä"
 
-#: src/cryptsetup.c:1083
+#: src/cryptsetup.c:1134
 msgid ""
-"Seems device does not require reencryption recovery.\n"
-"Do you want to proceed anyway?"
+"Unprotected LUKS2 reencryption metadata detected. Please verify the reencryption operation is desirable (see luksDump output)\n"
+"and continue (upgrade metadata) only if you acknowledge the operation as genuine."
 msgstr ""
 
-#: src/cryptsetup.c:1089
+#: src/cryptsetup.c:1140
+#, fuzzy
+msgid "Enter passphrase to protect and uppgrade reencryption metadata: "
+msgstr "Kirjoita poistettava salasanalause: "
+
+#: src/cryptsetup.c:1183
 msgid "Really proceed with LUKS2 reencryption recovery?"
 msgstr ""
 
-#: src/cryptsetup.c:1098
+#: src/cryptsetup.c:1193
+#, fuzzy
+msgid "Enter passphrase to verify reencryption metadata digest: "
+msgstr "Kirjoita poistettava salasanalause: "
+
+#: src/cryptsetup.c:1195
 #, fuzzy
 msgid "Enter passphrase for reencryption recovery: "
 msgstr "Kirjoita salasanalause avainvälille %u: "
 
-#: src/cryptsetup.c:1141
+#: src/cryptsetup.c:1245
 msgid "Really try to repair LUKS device header?"
 msgstr "Yritetäänkö todella korjata LUKS-laiteotsake?"
 
-#: src/cryptsetup.c:1160 src/integritysetup.c:146
+#: src/cryptsetup.c:1265 src/integritysetup.c:157
 msgid ""
 "Wiping device to initialize integrity checksum.\n"
 "You can interrupt this by pressing CTRL+c (rest of not wiped device will contain invalid checksum).\n"
 msgstr ""
 
-#: src/cryptsetup.c:1182 src/integritysetup.c:168
+#: src/cryptsetup.c:1287 src/integritysetup.c:179
 #, fuzzy, c-format
 msgid "Cannot deactivate temporary device %s."
 msgstr "Tilapäisen LUKS-laitteen avaaminen epäonnistui.\n"
 
-#: src/cryptsetup.c:1231
+#: src/cryptsetup.c:1351
 msgid "Integrity option can be used only for LUKS2 format."
 msgstr ""
 
-#: src/cryptsetup.c:1236 src/cryptsetup.c:1296
+#: src/cryptsetup.c:1356 src/cryptsetup.c:1416
 #, fuzzy
 msgid "Unsupported LUKS2 metadata size options."
 msgstr "Tukematon LUKS-versio %d.\n"
 
-#: src/cryptsetup.c:1253
+#: src/cryptsetup.c:1365
+msgid "Header file does not exist, do you want to create it?"
+msgstr ""
+
+#: src/cryptsetup.c:1373
 #, fuzzy, c-format
 msgid "Cannot create header file %s."
 msgstr "Otsakevarmuuskopiotiedoston %s luominen epäonnistui.\n"
 
-#: src/cryptsetup.c:1276 src/integritysetup.c:195 src/integritysetup.c:204
-#: src/integritysetup.c:213 src/integritysetup.c:284 src/integritysetup.c:293
-#: src/integritysetup.c:303
+#: src/cryptsetup.c:1396 src/integritysetup.c:205 src/integritysetup.c:213
+#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303
+#: src/integritysetup.c:313
 #, fuzzy
 msgid "No known integrity specification pattern detected."
 msgstr "Havaittu tuntematon salakirjoitusmenetelmämäärittelymalli.\n"
 
-#: src/cryptsetup.c:1289
+#: src/cryptsetup.c:1409
 #, fuzzy, c-format
 msgid "Cannot use %s as on-disk header."
 msgstr "Kohteen %s käyttö paikallisena levyotsakkeena epäonnistui.\n"
 
-#: src/cryptsetup.c:1313 src/integritysetup.c:227
+#: src/cryptsetup.c:1433 src/integritysetup.c:236
 #, c-format
 msgid "This will overwrite data on %s irrevocably."
 msgstr "Tämä korvaa tiedot kohteella %s peruuttamattomasti."
 
-#: src/cryptsetup.c:1354 src/cryptsetup.c:1688 src/cryptsetup.c:1755
-#: src/cryptsetup.c:1857 src/cryptsetup.c:1923 src/cryptsetup_reencrypt.c:553
+#: src/cryptsetup.c:1466 src/cryptsetup.c:1800 src/cryptsetup.c:1867
+#: src/cryptsetup.c:1969 src/cryptsetup.c:2035 src/cryptsetup_reencrypt.c:571
 #, fuzzy
 msgid "Failed to set pbkdf parameters."
 msgstr "Avaintiedoston kutsuminen stat-funktiolla epäonnistui.\n"
 
-#: src/cryptsetup.c:1439
+#: src/cryptsetup.c:1551
 #, fuzzy
 msgid "Reduced data offset is allowed only for detached LUKS header."
 msgstr "Pienennetty tietosiirrososoite sallitaan vain irrotetulle LUKS-otsakkeelle.\n"
 
-#: src/cryptsetup.c:1450 src/cryptsetup.c:1761
+#: src/cryptsetup.c:1562 src/cryptsetup.c:1873
 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option."
 msgstr ""
 
-#: src/cryptsetup.c:1488
+#: src/cryptsetup.c:1600
 msgid "Device activated but cannot make flags persistent."
 msgstr ""
 
-#: src/cryptsetup.c:1569 src/cryptsetup.c:1639
+#: src/cryptsetup.c:1681 src/cryptsetup.c:1751
 #, fuzzy, c-format
 msgid "Keyslot %d is selected for deletion."
 msgstr "Avainväli %d valittu poistoa varten.\n"
 
-#: src/cryptsetup.c:1581 src/cryptsetup.c:1642
+#: src/cryptsetup.c:1693 src/cryptsetup.c:1754
 msgid "This is the last keyslot. Device will become unusable after purging this key."
 msgstr "Tämä on viimeinen avainväli. Laite tulee käyttökelvottomaksi tämän avaimen poistamisen jälkeen."
 
-#: src/cryptsetup.c:1582
+#: src/cryptsetup.c:1694
 msgid "Enter any remaining passphrase: "
 msgstr "Kirjoita mikä tahansa jäljellä oleva salasanalause: "
 
-#: src/cryptsetup.c:1583 src/cryptsetup.c:1644
+#: src/cryptsetup.c:1695 src/cryptsetup.c:1756
 msgid "Operation aborted, the keyslot was NOT wiped.\n"
 msgstr ""
 
-#: src/cryptsetup.c:1621
+#: src/cryptsetup.c:1733
 msgid "Enter passphrase to be deleted: "
 msgstr "Kirjoita poistettava salasanalause: "
 
-#: src/cryptsetup.c:1702 src/cryptsetup.c:1776 src/cryptsetup.c:1810
+#: src/cryptsetup.c:1814 src/cryptsetup.c:1888 src/cryptsetup.c:1922
 msgid "Enter new passphrase for key slot: "
 msgstr "Kirjoita uusi salasanalause avainvälille: "
 
-#: src/cryptsetup.c:1793 src/cryptsetup_reencrypt.c:1343
+#: src/cryptsetup.c:1905 src/cryptsetup_reencrypt.c:1361
 #, c-format
 msgid "Enter any existing passphrase: "
 msgstr "Kirjoita mikä tahansa olemassa oleva salasanalause: "
 
-#: src/cryptsetup.c:1861
+#: src/cryptsetup.c:1973
 msgid "Enter passphrase to be changed: "
 msgstr "Kirjoita vaihdettava salasanalause: "
 
-#: src/cryptsetup.c:1877 src/cryptsetup_reencrypt.c:1329
+#: src/cryptsetup.c:1989 src/cryptsetup_reencrypt.c:1347
 msgid "Enter new passphrase: "
 msgstr "Kirjoita uusi salasanalause: "
 
-#: src/cryptsetup.c:1927
+#: src/cryptsetup.c:2039
 #, fuzzy
 msgid "Enter passphrase for keyslot to be converted: "
 msgstr "Kirjoita salasanalause avainvälille %u: "
 
-#: src/cryptsetup.c:1951
+#: src/cryptsetup.c:2063
 #, fuzzy
 msgid "Only one device argument for isLuks operation is supported."
 msgstr "Tuetaan vain yhtä laiteargumenttia isLuks-toiminnolle.\n"
 
-#: src/cryptsetup.c:2001
+#: src/cryptsetup.c:2113
 #, fuzzy
 msgid ""
 "The header dump with volume key is sensitive information\n"
@@ -2079,12 +2128,12 @@ msgstr ""
 "joka sallii pääsyn salatulle osiolle ilman salasanaa.\n"
 "Tämä vedos pitäisi aina tallentaa salattuna turvallisessa paikasssa."
 
-#: src/cryptsetup.c:2066
+#: src/cryptsetup.c:2178
 #, fuzzy, c-format
 msgid "Keyslot %d does not contain unbound key."
 msgstr "Avainväli %d ei ole käytössä.\n"
 
-#: src/cryptsetup.c:2072
+#: src/cryptsetup.c:2184
 #, fuzzy
 msgid ""
 "The header dump with unbound key is sensitive information.\n"
@@ -2094,32 +2143,42 @@ msgstr ""
 "joka sallii pääsyn salatulle osiolle ilman salasanaa.\n"
 "Tämä vedos pitäisi aina tallentaa salattuna turvallisessa paikasssa."
 
-#: src/cryptsetup.c:2207 src/cryptsetup.c:2228
+#: src/cryptsetup.c:2273 src/cryptsetup.c:2302
+#, fuzzy, c-format
+msgid "%s is not active %s device name."
+msgstr "%s ei ole LUKS-laite."
+
+#: src/cryptsetup.c:2297
+#, c-format
+msgid "%s is not active LUKS device name or header is missing."
+msgstr ""
+
+#: src/cryptsetup.c:2335 src/cryptsetup.c:2356
 #, fuzzy
 msgid "Option --header-backup-file is required."
 msgstr "Vaaditaan valitsin --header-backup-file.\n"
 
-#: src/cryptsetup.c:2258
+#: src/cryptsetup.c:2386
 #, fuzzy, c-format
 msgid "%s is not cryptsetup managed device."
 msgstr "%s ei ole LUKS-laite."
 
-#: src/cryptsetup.c:2269
+#: src/cryptsetup.c:2397
 #, fuzzy, c-format
 msgid "Refresh is not supported for device type %s"
 msgstr "Jatkamista ei tueta laiteelle %s.\n"
 
-#: src/cryptsetup.c:2311
+#: src/cryptsetup.c:2439
 #, fuzzy, c-format
 msgid "Unrecognized metadata device type %s."
 msgstr "Tunnistamaton metatietolaitetyyppi %s.\n"
 
-#: src/cryptsetup.c:2314
+#: src/cryptsetup.c:2442
 #, fuzzy
 msgid "Command requires device and mapped name as arguments."
 msgstr "Komento vaatii laitteen ja kuvausnimen argumenttina.\n"
 
-#: src/cryptsetup.c:2336
+#: src/cryptsetup.c:2464
 #, c-format
 msgid ""
 "This operation will erase all keyslots on device %s.\n"
@@ -2128,96 +2187,96 @@ msgstr ""
 "Tämä toiminto poistaa kaikki avainvälit laitteesta %s.\n"
 "Laite tulee käyttökelvottomaksi tämän toiminnon jälkeen."
 
-#: src/cryptsetup.c:2343
+#: src/cryptsetup.c:2471
 msgid "Operation aborted, keyslots were NOT wiped.\n"
 msgstr ""
 
-#: src/cryptsetup.c:2380
+#: src/cryptsetup.c:2510
 msgid "Invalid LUKS type, only luks1 and luks2 are supported."
 msgstr ""
 
-#: src/cryptsetup.c:2398
+#: src/cryptsetup.c:2528
 #, fuzzy, c-format
 msgid "Device is already %s type."
 msgstr "Laite %s on jo olemassa.\n"
 
-#: src/cryptsetup.c:2403
+#: src/cryptsetup.c:2533
 #, fuzzy, c-format
 msgid "This operation will convert %s to %s format.\n"
 msgstr "Tätä toimintoa ei tueta %s-salauslaitteelle.\n"
 
-#: src/cryptsetup.c:2409
+#: src/cryptsetup.c:2539
 msgid "Operation aborted, device was NOT converted.\n"
 msgstr ""
 
-#: src/cryptsetup.c:2449
+#: src/cryptsetup.c:2579
 msgid "Option --priority, --label or --subsystem is missing."
 msgstr ""
 
-#: src/cryptsetup.c:2483 src/cryptsetup.c:2516 src/cryptsetup.c:2539
+#: src/cryptsetup.c:2613 src/cryptsetup.c:2646 src/cryptsetup.c:2669
 #, fuzzy, c-format
 msgid "Token %d is invalid."
 msgstr "Avainväli %d on virheellinen.\n"
 
-#: src/cryptsetup.c:2486 src/cryptsetup.c:2542
+#: src/cryptsetup.c:2616 src/cryptsetup.c:2672
 #, c-format
 msgid "Token %d in use."
 msgstr ""
 
-#: src/cryptsetup.c:2493
+#: src/cryptsetup.c:2623
 #, fuzzy, c-format
 msgid "Failed to add luks2-keyring token %d."
 msgstr "Avainsäiliöstä lukeminen epäonnistui.\n"
 
-#: src/cryptsetup.c:2502 src/cryptsetup.c:2564
+#: src/cryptsetup.c:2632 src/cryptsetup.c:2694
 #, fuzzy, c-format
 msgid "Failed to assign token %d to keyslot %d."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: src/cryptsetup.c:2519
+#: src/cryptsetup.c:2649
 #, fuzzy, c-format
 msgid "Token %d is not in use."
 msgstr "Avainväli %d ei ole käytössä.\n"
 
-#: src/cryptsetup.c:2554
+#: src/cryptsetup.c:2684
 #, fuzzy
 msgid "Failed to import token from file."
 msgstr "Avaintiedoston avaus epäonnistui.\n"
 
-#: src/cryptsetup.c:2579
+#: src/cryptsetup.c:2709
 #, fuzzy, c-format
 msgid "Failed to get token %d for export."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: src/cryptsetup.c:2594
+#: src/cryptsetup.c:2724
 msgid "--key-description parameter is mandatory for token add action."
 msgstr ""
 
-#: src/cryptsetup.c:2600 src/cryptsetup.c:2608
+#: src/cryptsetup.c:2730 src/cryptsetup.c:2738
 msgid "Action requires specific token. Use --token-id parameter."
 msgstr ""
 
-#: src/cryptsetup.c:2613
+#: src/cryptsetup.c:2743
 #, fuzzy, c-format
 msgid "Invalid token operation %s."
 msgstr "Virheellinen avainkoko %d.\n"
 
-#: src/cryptsetup.c:2668
+#: src/cryptsetup.c:2798
 #, c-format
 msgid "Auto-detected active dm device '%s' for data device %s.\n"
 msgstr ""
 
-#: src/cryptsetup.c:2672
+#: src/cryptsetup.c:2802
 #, fuzzy, c-format
 msgid "Device %s is not a block device.\n"
 msgstr "Laite %s ei ole kelvollinen LUKS-laite.\n"
 
-#: src/cryptsetup.c:2674
+#: src/cryptsetup.c:2804
 #, fuzzy, c-format
 msgid "Failed to auto-detect device %s holders."
 msgstr "Laitekuvaajahakemiston hankkiminen epäonnistui."
 
-#: src/cryptsetup.c:2676
+#: src/cryptsetup.c:2806
 #, c-format
 msgid ""
 "Unable to decide if device %s is activated or not.\n"
@@ -2226,244 +2285,253 @@ msgid ""
 "To run reencryption in online mode, use --active-name parameter instead.\n"
 msgstr ""
 
-#: src/cryptsetup.c:2756
+#: src/cryptsetup.c:2886
 #, fuzzy
 msgid "Invalid LUKS device type."
 msgstr "Virheellinen laite %s.\n"
 
-#: src/cryptsetup.c:2761
+#: src/cryptsetup.c:2891
 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)."
 msgstr ""
 
-#: src/cryptsetup.c:2766
+#: src/cryptsetup.c:2896
 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter."
 msgstr ""
 
-#: src/cryptsetup.c:2775
+#: src/cryptsetup.c:2905
 #, c-format
 msgid "Adjusting --reduce-device-size value to twice the --offset %<PRIu64> (sectors).\n"
 msgstr ""
 
-#: src/cryptsetup.c:2779
+#: src/cryptsetup.c:2909
 #, fuzzy
 msgid "Encryption is supported only for LUKS2 format."
 msgstr "Tätä toimintoa tuetaan vain LUKS-laitteelle.\n"
 
-#: src/cryptsetup.c:2801
+#: src/cryptsetup.c:2932
 #, c-format
 msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?"
 msgstr ""
 
-#: src/cryptsetup.c:2816
+#: src/cryptsetup.c:2950
 #, fuzzy, c-format
 msgid "Temporary header file %s already exists. Aborting."
 msgstr "Pyydetty otsakevarmuuskopiotiedosto %s on jo olemassa.\n"
 
-#: src/cryptsetup.c:2818 src/cryptsetup.c:2825
+#: src/cryptsetup.c:2952 src/cryptsetup.c:2959
 #, fuzzy, c-format
 msgid "Cannot create temporary header file %s."
 msgstr "Otsakevarmuuskopiotiedoston %s luominen epäonnistui.\n"
 
-#: src/cryptsetup.c:2889
+#: src/cryptsetup.c:3026
 #, c-format
 msgid "%s/%s is now active and ready for online encryption.\n"
 msgstr ""
 
-#: src/cryptsetup.c:3053 src/cryptsetup.c:3059
+#: src/cryptsetup.c:3063
+msgid "LUKS2 decryption is supported with detached header device only."
+msgstr ""
+
+#: src/cryptsetup.c:3196 src/cryptsetup.c:3202
 #, fuzzy
 msgid "Not enough free keyslots for reencryption."
 msgstr "Älä vaihda avainta, yhtään data-aluetta ei ole salattu uudelleen."
 
-#: src/cryptsetup.c:3079 src/cryptsetup_reencrypt.c:1294
+#: src/cryptsetup.c:3222 src/cryptsetup_reencrypt.c:1312
 #, fuzzy
 msgid "Key file can be used only with --key-slot or with exactly one key slot active."
 msgstr "Avaintiedostoa voidaan käyttää vain valitsimen --key-slot kanssa tai täsmälleen yhden avainvälin ollessa aktiivisena.\n"
 
-#: src/cryptsetup.c:3088 src/cryptsetup_reencrypt.c:1341
-#: src/cryptsetup_reencrypt.c:1352
+#: src/cryptsetup.c:3231 src/cryptsetup_reencrypt.c:1359
+#: src/cryptsetup_reencrypt.c:1370
 #, fuzzy, c-format
 msgid "Enter passphrase for key slot %d: "
 msgstr "Kirjoita salasanalause avainvälille %u: "
 
-#: src/cryptsetup.c:3096
+#: src/cryptsetup.c:3240
 #, c-format
 msgid "Enter passphrase for key slot %u: "
 msgstr "Kirjoita salasanalause avainvälille %u: "
 
-#: src/cryptsetup.c:3263
+#: src/cryptsetup.c:3286
+#, c-format
+msgid "Switching data encryption cipher to %s.\n"
+msgstr ""
+
+#: src/cryptsetup.c:3419
 #, fuzzy
 msgid "Command requires device as argument."
 msgstr "Komento vaatii laitteen ja kuvausnimen argumenttina.\n"
 
-#: src/cryptsetup.c:3285
+#: src/cryptsetup.c:3441
 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1."
 msgstr ""
 
-#: src/cryptsetup.c:3297
+#: src/cryptsetup.c:3453
 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility."
 msgstr ""
 
-#: src/cryptsetup.c:3307 src/cryptsetup_reencrypt.c:178
+#: src/cryptsetup.c:3463 src/cryptsetup_reencrypt.c:196
 msgid "Reencryption of device with integrity profile is not supported."
 msgstr ""
 
-#: src/cryptsetup.c:3315
+#: src/cryptsetup.c:3471
 msgid "LUKS2 reencryption already initialized. Aborting operation."
 msgstr ""
 
-#: src/cryptsetup.c:3319
+#: src/cryptsetup.c:3475
 #, fuzzy
 msgid "LUKS2 device is not in reencryption."
 msgstr "Lokitiedosto %s on olemassa, aloitetaan salaus uudelleen.\n"
 
-#: src/cryptsetup.c:3346
+#: src/cryptsetup.c:3502
 msgid "<device> [--type <type>] [<name>]"
 msgstr "<laite> [--type <tyyppi>] [<nimi>]"
 
-#: src/cryptsetup.c:3346 src/veritysetup.c:394 src/integritysetup.c:480
+#: src/cryptsetup.c:3502 src/veritysetup.c:408 src/integritysetup.c:493
 #, fuzzy
 msgid "open device as <name>"
 msgstr "avaa laite kuvauksena <nimi>"
 
-#: src/cryptsetup.c:3347 src/cryptsetup.c:3348 src/cryptsetup.c:3349
-#: src/veritysetup.c:395 src/veritysetup.c:396 src/integritysetup.c:481
-#: src/integritysetup.c:482
+#: src/cryptsetup.c:3503 src/cryptsetup.c:3504 src/cryptsetup.c:3505
+#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494
+#: src/integritysetup.c:495
 msgid "<name>"
 msgstr "<nimi>"
 
-#: src/cryptsetup.c:3347 src/veritysetup.c:395 src/integritysetup.c:481
+#: src/cryptsetup.c:3503 src/veritysetup.c:409 src/integritysetup.c:494
 msgid "close device (remove mapping)"
 msgstr "sulje laite (poista kuvaus)"
 
-#: src/cryptsetup.c:3348
+#: src/cryptsetup.c:3504
 msgid "resize active device"
 msgstr "muuta käytössä olevan laitteen kokoa"
 
-#: src/cryptsetup.c:3349
+#: src/cryptsetup.c:3505
 msgid "show device status"
 msgstr "näytä laitetila"
 
-#: src/cryptsetup.c:3350
+#: src/cryptsetup.c:3506
 msgid "[--cipher <cipher>]"
 msgstr ""
 
-#: src/cryptsetup.c:3350
+#: src/cryptsetup.c:3506
 msgid "benchmark cipher"
 msgstr "koestussalaus"
 
-#: src/cryptsetup.c:3351 src/cryptsetup.c:3352 src/cryptsetup.c:3353
-#: src/cryptsetup.c:3354 src/cryptsetup.c:3355 src/cryptsetup.c:3362
-#: src/cryptsetup.c:3363 src/cryptsetup.c:3364 src/cryptsetup.c:3365
-#: src/cryptsetup.c:3366 src/cryptsetup.c:3367 src/cryptsetup.c:3368
-#: src/cryptsetup.c:3369 src/cryptsetup.c:3370
+#: src/cryptsetup.c:3507 src/cryptsetup.c:3508 src/cryptsetup.c:3509
+#: src/cryptsetup.c:3510 src/cryptsetup.c:3511 src/cryptsetup.c:3518
+#: src/cryptsetup.c:3519 src/cryptsetup.c:3520 src/cryptsetup.c:3521
+#: src/cryptsetup.c:3522 src/cryptsetup.c:3523 src/cryptsetup.c:3524
+#: src/cryptsetup.c:3525 src/cryptsetup.c:3526
 msgid "<device>"
 msgstr "<laite>"
 
-#: src/cryptsetup.c:3351
+#: src/cryptsetup.c:3507
 msgid "try to repair on-disk metadata"
 msgstr "yritä korjata levyn sisäiset metatiedot"
 
-#: src/cryptsetup.c:3352
+#: src/cryptsetup.c:3508
 #, fuzzy
 msgid "reencrypt LUKS2 device"
 msgstr "lisää avain LUKS-laitteeseen"
 
-#: src/cryptsetup.c:3353
+#: src/cryptsetup.c:3509
 msgid "erase all keyslots (remove encryption key)"
 msgstr "poista kaikki avainvälit (poista salausavain)"
 
-#: src/cryptsetup.c:3354
+#: src/cryptsetup.c:3510
 msgid "convert LUKS from/to LUKS2 format"
 msgstr ""
 
-#: src/cryptsetup.c:3355
+#: src/cryptsetup.c:3511
 msgid "set permanent configuration options for LUKS2"
 msgstr ""
 
-#: src/cryptsetup.c:3356 src/cryptsetup.c:3357
+#: src/cryptsetup.c:3512 src/cryptsetup.c:3513
 msgid "<device> [<new key file>]"
 msgstr "<laite> [<uusi avaintiedosto>]"
 
-#: src/cryptsetup.c:3356
+#: src/cryptsetup.c:3512
 msgid "formats a LUKS device"
 msgstr "pohjustaa LUKS-laitteen"
 
-#: src/cryptsetup.c:3357
+#: src/cryptsetup.c:3513
 msgid "add key to LUKS device"
 msgstr "lisää avain LUKS-laitteeseen"
 
-#: src/cryptsetup.c:3358 src/cryptsetup.c:3359 src/cryptsetup.c:3360
+#: src/cryptsetup.c:3514 src/cryptsetup.c:3515 src/cryptsetup.c:3516
 msgid "<device> [<key file>]"
 msgstr "<laite> [<avaintiedosto>]"
 
-#: src/cryptsetup.c:3358
+#: src/cryptsetup.c:3514
 msgid "removes supplied key or key file from LUKS device"
 msgstr "poistaa tarjotun avaimen tai avaintiedoston LUKS-laitteesta"
 
-#: src/cryptsetup.c:3359
+#: src/cryptsetup.c:3515
 msgid "changes supplied key or key file of LUKS device"
 msgstr "vaihtaa LUKS-laitteen tarjotun avaimen tai avaintiedoston"
 
-#: src/cryptsetup.c:3360
+#: src/cryptsetup.c:3516
 msgid "converts a key to new pbkdf parameters"
 msgstr ""
 
-#: src/cryptsetup.c:3361
+#: src/cryptsetup.c:3517
 msgid "<device> <key slot>"
 msgstr "<laite> <avainväli>"
 
-#: src/cryptsetup.c:3361
+#: src/cryptsetup.c:3517
 msgid "wipes key with number <key slot> from LUKS device"
 msgstr "pyyhkäisee pois avaimen numerolla <avainväli> LUKS-laitteesta"
 
-#: src/cryptsetup.c:3362
+#: src/cryptsetup.c:3518
 msgid "print UUID of LUKS device"
 msgstr "tulostaa LUKS-laitteen UUID-tunnuksen"
 
-#: src/cryptsetup.c:3363
+#: src/cryptsetup.c:3519
 msgid "tests <device> for LUKS partition header"
 msgstr "testaa <laite> LUKS-osio-otsakkeesta"
 
-#: src/cryptsetup.c:3364
+#: src/cryptsetup.c:3520
 msgid "dump LUKS partition information"
 msgstr "vedosta LUKS-osiotiedot"
 
-#: src/cryptsetup.c:3365
+#: src/cryptsetup.c:3521
 msgid "dump TCRYPT device information"
 msgstr "vedosta TCRYPT-laitetiedot"
 
-#: src/cryptsetup.c:3366
+#: src/cryptsetup.c:3522
 #, fuzzy
 msgid "dump BITLK device information"
 msgstr "vedosta TCRYPT-laitetiedot"
 
-#: src/cryptsetup.c:3367
+#: src/cryptsetup.c:3523
 #, fuzzy
 msgid "Suspend LUKS device and wipe key (all IOs are frozen)"
 msgstr "Keskeytä LUKS-laite ja pyyhi pois avain (kaikki siirräntäliitännät jäädytetään)."
 
-#: src/cryptsetup.c:3368
+#: src/cryptsetup.c:3524
 #, fuzzy
 msgid "Resume suspended LUKS device"
 msgstr "Aloita uudelleen pysäytetty LUKS-laite."
 
-#: src/cryptsetup.c:3369
+#: src/cryptsetup.c:3525
 msgid "Backup LUKS device header and keyslots"
 msgstr "Varmuuskopioi LUKS-laiteotsake ja avainvälit"
 
-#: src/cryptsetup.c:3370
+#: src/cryptsetup.c:3526
 msgid "Restore LUKS device header and keyslots"
 msgstr "Palauta LUKS-laiteotsake ja avainvälit"
 
-#: src/cryptsetup.c:3371
+#: src/cryptsetup.c:3527
 msgid "<add|remove|import|export> <device>"
 msgstr ""
 
-#: src/cryptsetup.c:3371
+#: src/cryptsetup.c:3527
 msgid "Manipulate LUKS2 tokens"
 msgstr ""
 
-#: src/cryptsetup.c:3389 src/veritysetup.c:412 src/integritysetup.c:498
+#: src/cryptsetup.c:3545 src/veritysetup.c:426 src/integritysetup.c:511
 msgid ""
 "\n"
 "<action> is one of:\n"
@@ -2471,7 +2539,7 @@ msgstr ""
 "\n"
 "<toiminto> on yksi seuraavista:\n"
 
-#: src/cryptsetup.c:3395
+#: src/cryptsetup.c:3551
 #, fuzzy
 msgid ""
 "\n"
@@ -2484,7 +2552,7 @@ msgstr ""
 "\topen: luo (plainOpen), luksOpen, loopaesOpen, tcryptOpen\n"
 "\tclose: poista (plainClose), luksClose, loopaesClose, tcryptClose\n"
 
-#: src/cryptsetup.c:3399
+#: src/cryptsetup.c:3555
 #, c-format
 msgid ""
 "\n"
@@ -2499,14 +2567,14 @@ msgstr ""
 "<avainväli> on LUKS-avainväli muokattavaksi\n"
 "<avaintiedosto> valinnainen avaintiedosto uudelle avaimelle luksAddKey-toimintoa varten\n"
 
-#: src/cryptsetup.c:3406
+#: src/cryptsetup.c:3562
 #, c-format
 msgid ""
 "\n"
 "Default compiled-in metadata format is %s (for luksFormat action).\n"
 msgstr ""
 
-#: src/cryptsetup.c:3411
+#: src/cryptsetup.c:3567
 #, fuzzy, c-format
 msgid ""
 "\n"
@@ -2522,7 +2590,7 @@ msgstr ""
 "\tsalasanalauseen enimmäispituus %d (merkkiä)\n"
 "PBKDF2-iteroinnin enimmäisaika LUKS-avainvälille: %d (millisekuntia)\n"
 
-#: src/cryptsetup.c:3422
+#: src/cryptsetup.c:3578
 #, fuzzy, c-format
 msgid ""
 "\n"
@@ -2537,480 +2605,488 @@ msgstr ""
 "\tplain-tyyppi: %s, Avain: %d bittiä, Salasanatiivistys: %s\n"
 "\tLUKS1: %s, Avain: %d bittiä, LUKS-otsaketiivistys: %s, RNG: %s\n"
 
-#: src/cryptsetup.c:3431
+#: src/cryptsetup.c:3587
 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n"
 msgstr ""
 
-#: src/cryptsetup.c:3447 src/veritysetup.c:569 src/integritysetup.c:642
+#: src/cryptsetup.c:3605 src/veritysetup.c:587 src/integritysetup.c:665
 #, c-format
 msgid "%s: requires %s as arguments"
 msgstr "%s: vaatii %s argumentteina"
 
-#: src/cryptsetup.c:3480 src/veritysetup.c:457 src/integritysetup.c:536
-#: src/cryptsetup_reencrypt.c:1607
+#: src/cryptsetup.c:3637 src/veritysetup.c:472 src/integritysetup.c:553
+#: src/cryptsetup_reencrypt.c:1627
 msgid "Show this help message"
 msgstr "Näytä tämä opastesanoma"
 
-#: src/cryptsetup.c:3481 src/veritysetup.c:458 src/integritysetup.c:537
-#: src/cryptsetup_reencrypt.c:1608
+#: src/cryptsetup.c:3638 src/veritysetup.c:473 src/integritysetup.c:554
+#: src/cryptsetup_reencrypt.c:1628
 msgid "Display brief usage"
 msgstr "Näytä lyhyt käyttöopaste"
 
-#: src/cryptsetup.c:3482 src/veritysetup.c:459 src/integritysetup.c:538
-#: src/cryptsetup_reencrypt.c:1609
+#: src/cryptsetup.c:3639 src/veritysetup.c:474 src/integritysetup.c:555
+#: src/cryptsetup_reencrypt.c:1629
 msgid "Print package version"
 msgstr "Tulosta pakkausversio"
 
-#: src/cryptsetup.c:3486 src/veritysetup.c:463 src/integritysetup.c:542
-#: src/cryptsetup_reencrypt.c:1613
+#: src/cryptsetup.c:3643 src/veritysetup.c:478 src/integritysetup.c:559
+#: src/cryptsetup_reencrypt.c:1633
 msgid "Help options:"
 msgstr "Opastevalitsimet:"
 
-#: src/cryptsetup.c:3487 src/veritysetup.c:464 src/integritysetup.c:543
-#: src/cryptsetup_reencrypt.c:1614
+#: src/cryptsetup.c:3644 src/veritysetup.c:479 src/integritysetup.c:560
+#: src/cryptsetup_reencrypt.c:1634
 msgid "Shows more detailed error messages"
 msgstr "Näyttää yksityiskohtaisemmat virheilmoitukset"
 
-#: src/cryptsetup.c:3488 src/veritysetup.c:465 src/integritysetup.c:544
-#: src/cryptsetup_reencrypt.c:1615
+#: src/cryptsetup.c:3645 src/veritysetup.c:480 src/integritysetup.c:561
+#: src/cryptsetup_reencrypt.c:1635
 msgid "Show debug messages"
 msgstr "Näytä vianjäljityssanomat"
 
-#: src/cryptsetup.c:3489
+#: src/cryptsetup.c:3646
 #, fuzzy
 msgid "Show debug messages including JSON metadata"
 msgstr "Näytä vianjäljityssanomat"
 
-#: src/cryptsetup.c:3490 src/cryptsetup_reencrypt.c:1617
+#: src/cryptsetup.c:3647 src/cryptsetup_reencrypt.c:1637
 msgid "The cipher used to encrypt the disk (see /proc/crypto)"
 msgstr "Salakirjoitusmenetelmä, jota käytetään salaamaan levy (katso /proc/crypto)"
 
-#: src/cryptsetup.c:3491 src/cryptsetup_reencrypt.c:1619
+#: src/cryptsetup.c:3648 src/cryptsetup_reencrypt.c:1639
 msgid "The hash used to create the encryption key from the passphrase"
 msgstr "Tiivisteavain, jota käytetään salausavaimen luomiseen salasanalauseesta"
 
-#: src/cryptsetup.c:3492
+#: src/cryptsetup.c:3649
 msgid "Verifies the passphrase by asking for it twice"
 msgstr "Todentaa salasanalauseen kysymällä kahdesti"
 
-#: src/cryptsetup.c:3493 src/cryptsetup_reencrypt.c:1621
+#: src/cryptsetup.c:3650 src/cryptsetup_reencrypt.c:1641
 #, fuzzy
 msgid "Read the key from a file"
 msgstr "Lue avain tiedostosta."
 
-#: src/cryptsetup.c:3494
+#: src/cryptsetup.c:3651
 msgid "Read the volume (master) key from file."
 msgstr "Lue taltion (pää)avain tiedostosta."
 
-#: src/cryptsetup.c:3495
+#: src/cryptsetup.c:3652
 #, fuzzy
 msgid "Dump volume (master) key instead of keyslots info"
 msgstr "Vedosta taltion (pää)avain eikä avainvälien tiedot."
 
-#: src/cryptsetup.c:3496 src/cryptsetup_reencrypt.c:1618
+#: src/cryptsetup.c:3653 src/cryptsetup_reencrypt.c:1638
 msgid "The size of the encryption key"
 msgstr "Salausavaimen koko"
 
-#: src/cryptsetup.c:3496 src/cryptsetup.c:3557 src/integritysetup.c:562
-#: src/integritysetup.c:566 src/integritysetup.c:570
-#: src/cryptsetup_reencrypt.c:1618
+#: src/cryptsetup.c:3653 src/cryptsetup.c:3716 src/integritysetup.c:579
+#: src/integritysetup.c:583 src/integritysetup.c:587
+#: src/cryptsetup_reencrypt.c:1638
 msgid "BITS"
 msgstr "BITTIÄ"
 
-#: src/cryptsetup.c:3497 src/cryptsetup_reencrypt.c:1634
+#: src/cryptsetup.c:3654 src/cryptsetup_reencrypt.c:1654
 msgid "Limits the read from keyfile"
 msgstr "Avaintiedostosta luettavat rajat"
 
-#: src/cryptsetup.c:3497 src/cryptsetup.c:3498 src/cryptsetup.c:3499
-#: src/cryptsetup.c:3500 src/cryptsetup.c:3503 src/cryptsetup.c:3554
-#: src/cryptsetup.c:3555 src/cryptsetup.c:3563 src/cryptsetup.c:3564
-#: src/veritysetup.c:468 src/veritysetup.c:469 src/veritysetup.c:470
-#: src/veritysetup.c:473 src/veritysetup.c:474 src/integritysetup.c:551
-#: src/integritysetup.c:557 src/integritysetup.c:558
-#: src/cryptsetup_reencrypt.c:1633 src/cryptsetup_reencrypt.c:1634
-#: src/cryptsetup_reencrypt.c:1635 src/cryptsetup_reencrypt.c:1636
+#: src/cryptsetup.c:3654 src/cryptsetup.c:3655 src/cryptsetup.c:3656
+#: src/cryptsetup.c:3657 src/cryptsetup.c:3660 src/cryptsetup.c:3713
+#: src/cryptsetup.c:3714 src/cryptsetup.c:3722 src/cryptsetup.c:3723
+#: src/veritysetup.c:483 src/veritysetup.c:484 src/veritysetup.c:485
+#: src/veritysetup.c:488 src/veritysetup.c:489 src/integritysetup.c:568
+#: src/integritysetup.c:574 src/integritysetup.c:575
+#: src/cryptsetup_reencrypt.c:1653 src/cryptsetup_reencrypt.c:1654
+#: src/cryptsetup_reencrypt.c:1655 src/cryptsetup_reencrypt.c:1656
 msgid "bytes"
 msgstr "tavua"
 
-#: src/cryptsetup.c:3498 src/cryptsetup_reencrypt.c:1633
+#: src/cryptsetup.c:3655 src/cryptsetup_reencrypt.c:1653
 msgid "Number of bytes to skip in keyfile"
 msgstr "Avaintiedostossa ohitettavien tavujen määrä"
 
-#: src/cryptsetup.c:3499
+#: src/cryptsetup.c:3656
 msgid "Limits the read from newly added keyfile"
 msgstr "Äskettäin lisätystä avaintiedostosta luetut rajat"
 
-#: src/cryptsetup.c:3500
+#: src/cryptsetup.c:3657
 msgid "Number of bytes to skip in newly added keyfile"
 msgstr "Ohitettu tavumäärä äskettäin lisätyssä avaintiedostossa"
 
-#: src/cryptsetup.c:3501
+#: src/cryptsetup.c:3658
 msgid "Slot number for new key (default is first free)"
 msgstr "Välinumero uudelle avaimelle (oletus on ensimmäinen vapaa)"
 
-#: src/cryptsetup.c:3502
+#: src/cryptsetup.c:3659
 msgid "The size of the device"
 msgstr "Laitteen koko"
 
-#: src/cryptsetup.c:3502 src/cryptsetup.c:3504 src/cryptsetup.c:3505
-#: src/cryptsetup.c:3511 src/integritysetup.c:552 src/integritysetup.c:559
+#: src/cryptsetup.c:3659 src/cryptsetup.c:3661 src/cryptsetup.c:3662
+#: src/cryptsetup.c:3668 src/integritysetup.c:569 src/integritysetup.c:576
 msgid "SECTORS"
 msgstr "SEKTORIA"
 
-#: src/cryptsetup.c:3503 src/cryptsetup_reencrypt.c:1636
+#: src/cryptsetup.c:3660 src/cryptsetup_reencrypt.c:1656
 msgid "Use only specified device size (ignore rest of device). DANGEROUS!"
 msgstr "Käytä vain määriteltyä laitekokoa (ohita laitteen loppu). VAARALLINEN!"
 
-#: src/cryptsetup.c:3504
+#: src/cryptsetup.c:3661
 msgid "The start offset in the backend device"
 msgstr "Alkusiirrososoite taustalaitteessa"
 
-#: src/cryptsetup.c:3505
+#: src/cryptsetup.c:3662
 msgid "How many sectors of the encrypted data to skip at the beginning"
 msgstr "Kuinka monta salaustietojen sektoria ohitetaan alussa"
 
-#: src/cryptsetup.c:3506
+#: src/cryptsetup.c:3663
 msgid "Create a readonly mapping"
 msgstr "Luo kirjoitussuojattu kuvaus"
 
-#: src/cryptsetup.c:3507 src/integritysetup.c:545
-#: src/cryptsetup_reencrypt.c:1624
+#: src/cryptsetup.c:3664 src/integritysetup.c:562
+#: src/cryptsetup_reencrypt.c:1644
 msgid "Do not ask for confirmation"
 msgstr "Älä pyydä vahvistusta"
 
-#: src/cryptsetup.c:3508
+#: src/cryptsetup.c:3665
 msgid "Timeout for interactive passphrase prompt (in seconds)"
 msgstr "Aikakatkaisu vuorovaikutteiselle salasanalausekyselylle (sekunteina)"
 
-#: src/cryptsetup.c:3508 src/cryptsetup.c:3509 src/integritysetup.c:546
-#: src/cryptsetup_reencrypt.c:1625
+#: src/cryptsetup.c:3665 src/cryptsetup.c:3666 src/integritysetup.c:563
+#: src/cryptsetup_reencrypt.c:1645
 msgid "secs"
 msgstr "s"
 
-#: src/cryptsetup.c:3509 src/integritysetup.c:546
-#: src/cryptsetup_reencrypt.c:1625
+#: src/cryptsetup.c:3666 src/integritysetup.c:563
+#: src/cryptsetup_reencrypt.c:1645
 msgid "Progress line update (in seconds)"
 msgstr ""
 
-#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1626
+#: src/cryptsetup.c:3667 src/cryptsetup_reencrypt.c:1646
 msgid "How often the input of the passphrase can be retried"
 msgstr "Kuinka usein salasanasyötettä voidaan yrittää uudelleen"
 
-#: src/cryptsetup.c:3511
+#: src/cryptsetup.c:3668
 msgid "Align payload at <n> sector boundaries - for luksFormat"
 msgstr "Tasaa tietosisältö osoitteessa <n> sektorirajoihin - kohdetta luksFormat varten"
 
-#: src/cryptsetup.c:3512
+#: src/cryptsetup.c:3669
 #, fuzzy
 msgid "File with LUKS header and keyslots backup"
 msgstr "Tiedosto LUKS-otsakkeella ja avainvälien varmuuskopiolla."
 
-#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1627
+#: src/cryptsetup.c:3670 src/cryptsetup_reencrypt.c:1647
 #, fuzzy
 msgid "Use /dev/random for generating volume key"
 msgstr "Käytä /dev/random taltioavaimen synnyttämiseen."
 
-#: src/cryptsetup.c:3514 src/cryptsetup_reencrypt.c:1628
+#: src/cryptsetup.c:3671 src/cryptsetup_reencrypt.c:1648
 #, fuzzy
 msgid "Use /dev/urandom for generating volume key"
 msgstr "Käytä /dev/urandom taltioavaimen synnyttämiseen."
 
-#: src/cryptsetup.c:3515
+#: src/cryptsetup.c:3672
 #, fuzzy
 msgid "Share device with another non-overlapping crypt segment"
 msgstr "Jaa laite toisen ei-päällekkäisen salaussegmentin kanssa."
 
-#: src/cryptsetup.c:3516 src/veritysetup.c:477
+#: src/cryptsetup.c:3673 src/veritysetup.c:492
 #, fuzzy
 msgid "UUID for device to use"
 msgstr "UUID laitteelle käytettäväksi."
 
-#: src/cryptsetup.c:3517 src/integritysetup.c:579
+#: src/cryptsetup.c:3674 src/integritysetup.c:599
 #, fuzzy
 msgid "Allow discards (aka TRIM) requests for device"
 msgstr "Salli hylkäys(lempinimeltään TRIM)-pyynnöt laitteelle."
 
-#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1645
+#: src/cryptsetup.c:3675 src/cryptsetup_reencrypt.c:1665
 #, fuzzy
 msgid "Device or file with separated LUKS header"
 msgstr "Laite tai tiedosto erillisellä LUKS-otsakkeella."
 
-#: src/cryptsetup.c:3519
+#: src/cryptsetup.c:3676
 #, fuzzy
 msgid "Do not activate device, just check passphrase"
 msgstr "Älä aktivoi laitetta, tarkista vain salasanalauseke."
 
-#: src/cryptsetup.c:3520
+#: src/cryptsetup.c:3677
 #, fuzzy
 msgid "Use hidden header (hidden TCRYPT device)"
 msgstr "Käytä piilotettua otsaketta (piilotettu TCRYPT-laite)."
 
-#: src/cryptsetup.c:3521
+#: src/cryptsetup.c:3678
 #, fuzzy
 msgid "Device is system TCRYPT drive (with bootloader)"
 msgstr "Laite on järjestelmä-TCRYPT-levyasema (alkulatausohjelmalla)."
 
-#: src/cryptsetup.c:3522
+#: src/cryptsetup.c:3679
 #, fuzzy
 msgid "Use backup (secondary) TCRYPT header"
 msgstr "Käytä (toissijaista) TCRYPT-varmuuskopio-otsaketta."
 
-#: src/cryptsetup.c:3523
+#: src/cryptsetup.c:3680
 #, fuzzy
 msgid "Scan also for VeraCrypt compatible device"
 msgstr "Tutkinta myös VeraCrypt-yhteensopivalle laitteelle."
 
-#: src/cryptsetup.c:3524
+#: src/cryptsetup.c:3681
 #, fuzzy
 msgid "Personal Iteration Multiplier for VeraCrypt compatible device"
 msgstr "Tutkinta myös VeraCrypt-yhteensopivalle laitteelle."
 
-#: src/cryptsetup.c:3525
+#: src/cryptsetup.c:3682
 #, fuzzy
 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device"
 msgstr "Tutkinta myös VeraCrypt-yhteensopivalle laitteelle."
 
-#: src/cryptsetup.c:3526
+#: src/cryptsetup.c:3683
 #, fuzzy
 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk"
 msgstr "Laitemetatietojen tyyppi: luks, plain, loopaes, tcrypt."
 
-#: src/cryptsetup.c:3527
+#: src/cryptsetup.c:3684
 #, fuzzy
 msgid "Disable password quality check (if enabled)"
 msgstr "Ota pois käytöstä salasanan laatutarkistus (jos käytössä)."
 
-#: src/cryptsetup.c:3528
+#: src/cryptsetup.c:3685
 #, fuzzy
 msgid "Use dm-crypt same_cpu_crypt performance compatibility option"
 msgstr "Käytä dm-crypt same_cpu_crypt-suorituskyky-yhteensopivuusvalitsinta."
 
-#: src/cryptsetup.c:3529
+#: src/cryptsetup.c:3686
 #, fuzzy
 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option"
 msgstr "Käytä dm-crypt submit_from_crypt_cpus-suorituskyky-yhteensopivuusvalitsinta."
 
-#: src/cryptsetup.c:3530
+#: src/cryptsetup.c:3687
+msgid "Bypass dm-crypt workqueue and process read requests synchronously"
+msgstr ""
+
+#: src/cryptsetup.c:3688
+msgid "Bypass dm-crypt workqueue and process write requests synchronously"
+msgstr ""
+
+#: src/cryptsetup.c:3689
 msgid "Device removal is deferred until the last user closes it"
 msgstr ""
 
-#: src/cryptsetup.c:3531
+#: src/cryptsetup.c:3690
 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)"
 msgstr ""
 
-#: src/cryptsetup.c:3532
+#: src/cryptsetup.c:3691
 #, fuzzy
 msgid "PBKDF iteration time for LUKS (in ms)"
 msgstr "PBKDF2-iterointiaika kohteelle LUKS (millisekunneissa)"
 
-#: src/cryptsetup.c:3532 src/cryptsetup_reencrypt.c:1623
+#: src/cryptsetup.c:3691 src/cryptsetup_reencrypt.c:1643
 msgid "msecs"
 msgstr "ms"
 
-#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1641
+#: src/cryptsetup.c:3692 src/cryptsetup_reencrypt.c:1661
 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2"
 msgstr ""
 
-#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1642
+#: src/cryptsetup.c:3693 src/cryptsetup_reencrypt.c:1662
 msgid "PBKDF memory cost limit"
 msgstr ""
 
-#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1642
+#: src/cryptsetup.c:3693 src/cryptsetup_reencrypt.c:1662
 #, fuzzy
 msgid "kilobytes"
 msgstr "tavua"
 
-#: src/cryptsetup.c:3535 src/cryptsetup_reencrypt.c:1643
+#: src/cryptsetup.c:3694 src/cryptsetup_reencrypt.c:1663
 msgid "PBKDF parallel cost"
 msgstr ""
 
-#: src/cryptsetup.c:3535 src/cryptsetup_reencrypt.c:1643
+#: src/cryptsetup.c:3694 src/cryptsetup_reencrypt.c:1663
 msgid "threads"
 msgstr ""
 
-#: src/cryptsetup.c:3536 src/cryptsetup_reencrypt.c:1644
+#: src/cryptsetup.c:3695 src/cryptsetup_reencrypt.c:1664
 msgid "PBKDF iterations cost (forced, disables benchmark)"
 msgstr ""
 
-#: src/cryptsetup.c:3537
+#: src/cryptsetup.c:3696
 msgid "Keyslot priority: ignore, normal, prefer"
 msgstr ""
 
-#: src/cryptsetup.c:3538
+#: src/cryptsetup.c:3697
 #, fuzzy
 msgid "Disable locking of on-disk metadata"
 msgstr "yritä korjata levyn sisäiset metatiedot"
 
-#: src/cryptsetup.c:3539
+#: src/cryptsetup.c:3698
 msgid "Disable loading volume keys via kernel keyring"
 msgstr ""
 
-#: src/cryptsetup.c:3540
+#: src/cryptsetup.c:3699
 msgid "Data integrity algorithm (LUKS2 only)"
 msgstr ""
 
-#: src/cryptsetup.c:3541 src/integritysetup.c:573
+#: src/cryptsetup.c:3700 src/integritysetup.c:590
 msgid "Disable journal for integrity device"
 msgstr ""
 
-#: src/cryptsetup.c:3542 src/integritysetup.c:547
+#: src/cryptsetup.c:3701 src/integritysetup.c:564
 msgid "Do not wipe device after format"
 msgstr ""
 
-#: src/cryptsetup.c:3543 src/integritysetup.c:577
+#: src/cryptsetup.c:3702 src/integritysetup.c:594
 msgid "Use inefficient legacy padding (old kernels)"
 msgstr ""
 
-#: src/cryptsetup.c:3544
+#: src/cryptsetup.c:3703
 msgid "Do not ask for passphrase if activation by token fails"
 msgstr ""
 
-#: src/cryptsetup.c:3545
+#: src/cryptsetup.c:3704
 msgid "Token number (default: any)"
 msgstr ""
 
-#: src/cryptsetup.c:3546
+#: src/cryptsetup.c:3705
 msgid "Key description"
 msgstr ""
 
-#: src/cryptsetup.c:3547
+#: src/cryptsetup.c:3706
 msgid "Encryption sector size (default: 512 bytes)"
 msgstr ""
 
-#: src/cryptsetup.c:3548
+#: src/cryptsetup.c:3707
 msgid "Use IV counted in sector size (not in 512 bytes)"
 msgstr ""
 
-#: src/cryptsetup.c:3549
+#: src/cryptsetup.c:3708
 msgid "Set activation flags persistent for device"
 msgstr ""
 
-#: src/cryptsetup.c:3550
+#: src/cryptsetup.c:3709
 #, fuzzy
 msgid "Set label for the LUKS2 device"
 msgstr "pohjustaa LUKS-laitteen"
 
-#: src/cryptsetup.c:3551
+#: src/cryptsetup.c:3710
 msgid "Set subsystem label for the LUKS2 device"
 msgstr ""
 
-#: src/cryptsetup.c:3552
+#: src/cryptsetup.c:3711
 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot"
 msgstr ""
 
-#: src/cryptsetup.c:3553
+#: src/cryptsetup.c:3712
 #, fuzzy
 msgid "Read or write the json from or to a file"
 msgstr "Lue avain tiedostosta."
 
-#: src/cryptsetup.c:3554
+#: src/cryptsetup.c:3713
 msgid "LUKS2 header metadata area size"
 msgstr ""
 
-#: src/cryptsetup.c:3555
+#: src/cryptsetup.c:3714
 #, fuzzy
 msgid "LUKS2 header keyslots area size"
 msgstr "Tiedosto LUKS-otsakkeella ja avainvälien varmuuskopiolla."
 
-#: src/cryptsetup.c:3556
+#: src/cryptsetup.c:3715
 msgid "Refresh (reactivate) device with new parameters"
 msgstr ""
 
-#: src/cryptsetup.c:3557
+#: src/cryptsetup.c:3716
 #, fuzzy
 msgid "LUKS2 keyslot: The size of the encryption key"
 msgstr "Salausavaimen koko"
 
-#: src/cryptsetup.c:3558
+#: src/cryptsetup.c:3717
 msgid "LUKS2 keyslot: The cipher used for keyslot encryption"
 msgstr ""
 
-#: src/cryptsetup.c:3559
+#: src/cryptsetup.c:3718
 #, fuzzy
 msgid "Encrypt LUKS2 device (in-place encryption)."
 msgstr "Poista laitteen salaus pysyvästi (poista salaus)"
 
-#: src/cryptsetup.c:3560
+#: src/cryptsetup.c:3719
 #, fuzzy
 msgid "Decrypt LUKS2 device (remove encryption)."
 msgstr "Poista laitteen salaus pysyvästi (poista salaus)"
 
-#: src/cryptsetup.c:3561
+#: src/cryptsetup.c:3720
 msgid "Initialize LUKS2 reencryption in metadata only."
 msgstr ""
 
-#: src/cryptsetup.c:3562
+#: src/cryptsetup.c:3721
 msgid "Resume initialized LUKS2 reencryption only."
 msgstr ""
 
-#: src/cryptsetup.c:3563 src/cryptsetup_reencrypt.c:1635
+#: src/cryptsetup.c:3722 src/cryptsetup_reencrypt.c:1655
 msgid "Reduce data device size (move data offset). DANGEROUS!"
 msgstr "Pienennä datalaitekokoa (siirrä datasiirrososoitetta). VAARALLINEN!"
 
-#: src/cryptsetup.c:3564
+#: src/cryptsetup.c:3723
 #, fuzzy
 msgid "Maximal reencryption hotzone size."
 msgstr "Uudelleensalauslohkon koko"
 
-#: src/cryptsetup.c:3565
+#: src/cryptsetup.c:3724
 msgid "Reencryption hotzone resilience type (checksum,journal,none)"
 msgstr ""
 
-#: src/cryptsetup.c:3566
+#: src/cryptsetup.c:3725
 #, fuzzy
 msgid "Reencryption hotzone checksums hash"
 msgstr "Uudelleensalauslohkon koko"
 
-#: src/cryptsetup.c:3567
+#: src/cryptsetup.c:3726
 msgid "Override device autodetection of dm device to be reencrypted"
 msgstr ""
 
-#: src/cryptsetup.c:3583 src/veritysetup.c:499 src/integritysetup.c:595
+#: src/cryptsetup.c:3742 src/veritysetup.c:515 src/integritysetup.c:615
 msgid "[OPTION...] <action> <action-specific>"
 msgstr "[VALITSIN...] <toiminto> <toimintokohtainen>"
 
-#: src/cryptsetup.c:3634 src/veritysetup.c:533 src/integritysetup.c:606
+#: src/cryptsetup.c:3797 src/veritysetup.c:551 src/integritysetup.c:626
 msgid "Argument <action> missing."
 msgstr "Argumentti <toiminto> puuttuu."
 
-#: src/cryptsetup.c:3703 src/veritysetup.c:564 src/integritysetup.c:637
+#: src/cryptsetup.c:3867 src/veritysetup.c:582 src/integritysetup.c:660
 msgid "Unknown action."
 msgstr "Tuntematon toiminto."
 
-#: src/cryptsetup.c:3713
+#: src/cryptsetup.c:3877
 msgid "Options --refresh and --test-passphrase are mutually exclusive."
 msgstr ""
 
-#: src/cryptsetup.c:3718
+#: src/cryptsetup.c:3882
 #, fuzzy
 msgid "Option --deferred is allowed only for close command."
 msgstr "Valitsin --shared sallitaan vain pelkän laitteen avaukseen.\n"
 
-#: src/cryptsetup.c:3723
+#: src/cryptsetup.c:3887
 #, fuzzy
 msgid "Option --shared is allowed only for open of plain device."
 msgstr "Valitsin --shared sallitaan vain pelkän laitteen avaukseen.\n"
 
-#: src/cryptsetup.c:3728 src/integritysetup.c:654
+#: src/cryptsetup.c:3892 src/integritysetup.c:677
 #, fuzzy
 msgid "Option --allow-discards is allowed only for open operation."
 msgstr "Valitsin --allow-discards sallitaan vain open-toiminnolle.\n"
 
-#: src/cryptsetup.c:3733
+#: src/cryptsetup.c:3897
 #, fuzzy
 msgid "Option --persistent is allowed only for open operation."
 msgstr "Valitsin --allow-discards sallitaan vain open-toiminnolle.\n"
 
-#: src/cryptsetup.c:3738
+#: src/cryptsetup.c:3902
 #, fuzzy
 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation."
 msgstr "Valitsin --allow-discards sallitaan vain open-toiminnolle.\n"
 
-#: src/cryptsetup.c:3743
+#: src/cryptsetup.c:3907
 msgid "Option --persistent is not allowed with --test-passphrase."
 msgstr ""
 
-#: src/cryptsetup.c:3753
+#: src/cryptsetup.c:3917
 #, fuzzy
 msgid ""
 "Option --key-size is allowed only for luksFormat, luksAddKey,\n"
@@ -3019,284 +3095,284 @@ msgstr ""
 "Valitsin --key-size sallitaan vain muodoille luksFormat, open ja benchmark.\n"
 "Käytä avaintiedostosta lukemisen rajoittamiseksi valitsinta --keyfile-size=(tavua)."
 
-#: src/cryptsetup.c:3759
+#: src/cryptsetup.c:3923
 #, fuzzy
 msgid "Option --integrity is allowed only for luksFormat (LUKS2)."
 msgstr "Valitsin --align-payload sallitaan vain luksFormat-muodolle."
 
-#: src/cryptsetup.c:3764
+#: src/cryptsetup.c:3928
 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension."
 msgstr ""
 
-#: src/cryptsetup.c:3770
+#: src/cryptsetup.c:3934
 #, fuzzy
 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations."
 msgstr "Valitsin --uuid sallitaan vain luksFormat-muodolle ja luksUUID-muodolle."
 
-#: src/cryptsetup.c:3776
+#: src/cryptsetup.c:3940
 #, fuzzy
 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices."
 msgstr "Valitsin --test-passphrase sallitaan vain LUKS- ja TCRYPT-laitteiden avaamiseen.\n"
 
-#: src/cryptsetup.c:3781 src/cryptsetup_reencrypt.c:1708
+#: src/cryptsetup.c:3945 src/cryptsetup_reencrypt.c:1728
 msgid "Key size must be a multiple of 8 bits"
 msgstr "Avainkoon on oltava 8-bitin monikerta"
 
-#: src/cryptsetup.c:3787 src/cryptsetup_reencrypt.c:1394
-#: src/cryptsetup_reencrypt.c:1713
+#: src/cryptsetup.c:3951 src/cryptsetup_reencrypt.c:1412
+#: src/cryptsetup_reencrypt.c:1733
 msgid "Key slot is invalid."
 msgstr "Avainväli on virheellinen."
 
-#: src/cryptsetup.c:3794
+#: src/cryptsetup.c:3958
 #, fuzzy
 msgid "Option --key-file takes precedence over specified key file argument."
 msgstr "Valitsin --key-file on ensisijainen määritellylle avaintiedostoargumentille.\n"
 
-#: src/cryptsetup.c:3801 src/veritysetup.c:576 src/integritysetup.c:663
-#: src/cryptsetup_reencrypt.c:1687
+#: src/cryptsetup.c:3965 src/veritysetup.c:594 src/integritysetup.c:686
+#: src/cryptsetup_reencrypt.c:1707
 msgid "Negative number for option not permitted."
 msgstr "Valitsimelle ei sallita negatiivista numeroa."
 
-#: src/cryptsetup.c:3805
+#: src/cryptsetup.c:3969
 #, fuzzy
 msgid "Only one --key-file argument is allowed."
 msgstr "Vain yksi --use-[u]random -valitsin on sallittu."
 
-#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1679
-#: src/cryptsetup_reencrypt.c:1717
+#: src/cryptsetup.c:3973 src/cryptsetup_reencrypt.c:1699
+#: src/cryptsetup_reencrypt.c:1737
 msgid "Only one of --use-[u]random options is allowed."
 msgstr "Vain yksi --use-[u]random -valitsin on sallittu."
 
-#: src/cryptsetup.c:3813
+#: src/cryptsetup.c:3977
 msgid "Option --use-[u]random is allowed only for luksFormat."
 msgstr "Valitsin --use-[u]random sallitaan vain luksFormat-muodolle."
 
-#: src/cryptsetup.c:3817
+#: src/cryptsetup.c:3981
 msgid "Option --uuid is allowed only for luksFormat and luksUUID."
 msgstr "Valitsin --uuid sallitaan vain luksFormat-muodolle ja luksUUID-muodolle."
 
-#: src/cryptsetup.c:3821
+#: src/cryptsetup.c:3985
 msgid "Option --align-payload is allowed only for luksFormat."
 msgstr "Valitsin --align-payload sallitaan vain luksFormat-muodolle."
 
-#: src/cryptsetup.c:3825
+#: src/cryptsetup.c:3989
 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2."
 msgstr ""
 
-#: src/cryptsetup.c:3830
+#: src/cryptsetup.c:3994
 #, fuzzy
 msgid "Invalid LUKS2 metadata size specification."
 msgstr "Virheellinen laitekokomäärittely."
 
-#: src/cryptsetup.c:3834
+#: src/cryptsetup.c:3998
 #, fuzzy
 msgid "Invalid LUKS2 keyslots size specification."
 msgstr "Virheellinen laitekokomäärittely."
 
-#: src/cryptsetup.c:3838
+#: src/cryptsetup.c:4002
 #, fuzzy
 msgid "Options --align-payload and --offset cannot be combined."
 msgstr "Valitsin --align-payload sallitaan vain luksFormat-muodolle."
 
-#: src/cryptsetup.c:3844
+#: src/cryptsetup.c:4008
 #, fuzzy
 msgid "Option --skip is supported only for open of plain and loopaes devices."
 msgstr "Valitsinta --skip tuetaan vain plain- ja loopaes-laitteiden avaamiseen.\n"
 
-#: src/cryptsetup.c:3851
+#: src/cryptsetup.c:4015
 #, fuzzy
 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption."
 msgstr "Valitsinta --offset tuetaan vain plain- ja loopaes-laitteiden avaamiseen.\n"
 
-#: src/cryptsetup.c:3857
+#: src/cryptsetup.c:4021
 #, fuzzy
 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device."
 msgstr "Valitsinta --tcrypt-hidden, --tcrypt-system tai --tcrypt-backup tuetaan vain TCRYPT-laiteeelle.\n"
 
-#: src/cryptsetup.c:3862
+#: src/cryptsetup.c:4026
 #, fuzzy
 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards."
 msgstr "Valitsinta --tcrypt-hidden ei voida yhdistää valitsimeen --allow-discards.\n"
 
-#: src/cryptsetup.c:3867
+#: src/cryptsetup.c:4031
 #, fuzzy
 msgid "Option --veracrypt is supported only for TCRYPT device type."
 msgstr "Valitsinta --veracrypt tuetaan vain TCRYPT-laiteeelle.\n"
 
-#: src/cryptsetup.c:3873
+#: src/cryptsetup.c:4037
 msgid "Invalid argument for parameter --veracrypt-pim supplied."
 msgstr ""
 
-#: src/cryptsetup.c:3877
+#: src/cryptsetup.c:4041
 #, fuzzy
 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices."
 msgstr "Valitsinta --veracrypt tuetaan vain TCRYPT-laiteeelle.\n"
 
-#: src/cryptsetup.c:3885
+#: src/cryptsetup.c:4049
 #, fuzzy
 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices."
 msgstr "Valitsinta --veracrypt tuetaan vain TCRYPT-laiteeelle.\n"
 
-#: src/cryptsetup.c:3889
+#: src/cryptsetup.c:4053
 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive."
 msgstr ""
 
-#: src/cryptsetup.c:3896
+#: src/cryptsetup.c:4060
 msgid "Option --priority can be only ignore/normal/prefer."
 msgstr ""
 
-#: src/cryptsetup.c:3901 src/cryptsetup.c:3939
+#: src/cryptsetup.c:4065 src/cryptsetup.c:4103
 msgid "Keyslot specification is required."
 msgstr ""
 
-#: src/cryptsetup.c:3906 src/cryptsetup_reencrypt.c:1693
+#: src/cryptsetup.c:4070 src/cryptsetup_reencrypt.c:1713
 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id."
 msgstr ""
 
-#: src/cryptsetup.c:3911 src/cryptsetup_reencrypt.c:1698
+#: src/cryptsetup.c:4075 src/cryptsetup_reencrypt.c:1718
 msgid "PBKDF forced iterations cannot be combined with iteration time option."
 msgstr ""
 
-#: src/cryptsetup.c:3917
+#: src/cryptsetup.c:4081
 #, fuzzy
 msgid "Sector size option is not supported for this command."
 msgstr "Tätä toimintoa ei tueta tälle laitetyypille.\n"
 
-#: src/cryptsetup.c:3929
+#: src/cryptsetup.c:4093
 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes."
 msgstr ""
 
-#: src/cryptsetup.c:3934
+#: src/cryptsetup.c:4098
 msgid "Key size is required with --unbound option."
 msgstr ""
 
-#: src/cryptsetup.c:3944
+#: src/cryptsetup.c:4108
 msgid "Option --unbound may be used only with luksAddKey and luksDump actions."
 msgstr ""
 
-#: src/cryptsetup.c:3949
+#: src/cryptsetup.c:4113
 #, fuzzy
 msgid "Option --refresh may be used only with open action."
 msgstr "Valitsinta --keep-key voidaan käyttää vain valitsimen --hash tai --iter-time kanssa."
 
-#: src/cryptsetup.c:3960
+#: src/cryptsetup.c:4124
 msgid "Cannot disable metadata locking."
 msgstr ""
 
-#: src/cryptsetup.c:3970
+#: src/cryptsetup.c:4135
 #, fuzzy
 msgid "Invalid max reencryption hotzone size specification."
 msgstr "Virheellinen laitekokomäärittely."
 
-#: src/cryptsetup.c:3978 src/cryptsetup_reencrypt.c:1722
-#: src/cryptsetup_reencrypt.c:1727
+#: src/cryptsetup.c:4143 src/cryptsetup_reencrypt.c:1742
+#: src/cryptsetup_reencrypt.c:1747
 msgid "Invalid device size specification."
 msgstr "Virheellinen laitekokomäärittely."
 
-#: src/cryptsetup.c:3981
+#: src/cryptsetup.c:4146
 #, fuzzy
 msgid "Maximum device reduce size is 1 GiB."
 msgstr "Maksimi laitepienennyskoko on 64 mebitavua."
 
-#: src/cryptsetup.c:3984 src/cryptsetup_reencrypt.c:1733
+#: src/cryptsetup.c:4149 src/cryptsetup_reencrypt.c:1753
 msgid "Reduce size must be multiple of 512 bytes sector."
 msgstr "Pienennyskoon on oltava 512-tavuisen sektorin monikerta."
 
-#: src/cryptsetup.c:3989
+#: src/cryptsetup.c:4154
 #, fuzzy
 msgid "Invalid data size specification."
 msgstr "Virheellinen laitekokomäärittely."
 
-#: src/cryptsetup.c:3994
+#: src/cryptsetup.c:4159
 #, fuzzy
 msgid "Reduce size overflow."
 msgstr "Laitesiirrososoitteen ylivuoto.\n"
 
-#: src/cryptsetup.c:3998
+#: src/cryptsetup.c:4163
 msgid "LUKS2 decryption requires option --header."
 msgstr ""
 
-#: src/cryptsetup.c:4002
+#: src/cryptsetup.c:4167
 #, fuzzy
 msgid "Device size must be multiple of 512 bytes sector."
 msgstr "Pienennyskoon on oltava 512-tavuisen sektorin monikerta."
 
-#: src/cryptsetup.c:4006
+#: src/cryptsetup.c:4171
 msgid "Options --reduce-device-size and --data-size cannot be combined."
 msgstr ""
 
-#: src/cryptsetup.c:4010
+#: src/cryptsetup.c:4175
 msgid "Options --device-size and --size cannot be combined."
 msgstr ""
 
-#: src/cryptsetup.c:4014
+#: src/cryptsetup.c:4179
 msgid "Options --keyslot-cipher and --keyslot-key-size must be used together."
 msgstr ""
 
-#: src/veritysetup.c:66
+#: src/veritysetup.c:76
 #, fuzzy
 msgid "Invalid salt string specified."
 msgstr "Määritelty virheellinen satunnaisarvosiemenmerkkijono.\n"
 
-#: src/veritysetup.c:97
+#: src/veritysetup.c:107
 #, fuzzy, c-format
 msgid "Cannot create hash image %s for writing."
 msgstr "Tiivistevedoksen %s luominen kirjoittamista varten epäonnistui.\n"
 
-#: src/veritysetup.c:107
+#: src/veritysetup.c:117
 #, fuzzy, c-format
 msgid "Cannot create FEC image %s for writing."
 msgstr "Tiivistevedoksen %s luominen kirjoittamista varten epäonnistui.\n"
 
-#: src/veritysetup.c:179
+#: src/veritysetup.c:191
 #, fuzzy
 msgid "Invalid root hash string specified."
 msgstr "Virheellinen root-tiivistemerkkijono määritelty.\n"
 
-#: src/veritysetup.c:187
+#: src/veritysetup.c:199
 #, fuzzy, c-format
 msgid "Invalid signature file %s."
 msgstr "Virheellinen laite %s.\n"
 
-#: src/veritysetup.c:194
+#: src/veritysetup.c:206
 #, fuzzy, c-format
 msgid "Cannot read signature file %s."
 msgstr "Avaintiedoston %s lukeminen epäonnistui.\n"
 
-#: src/veritysetup.c:392
+#: src/veritysetup.c:406
 msgid "<data_device> <hash_device>"
 msgstr "<data_laite> <tiiviste_laite>"
 
-#: src/veritysetup.c:392 src/integritysetup.c:479
+#: src/veritysetup.c:406 src/integritysetup.c:492
 msgid "format device"
 msgstr "pohjusta laite"
 
-#: src/veritysetup.c:393
+#: src/veritysetup.c:407
 msgid "<data_device> <hash_device> <root_hash>"
 msgstr "<data_laite> <tiiviste_laite> <root_tiiviste>"
 
-#: src/veritysetup.c:393
+#: src/veritysetup.c:407
 msgid "verify device"
 msgstr "todenna laite"
 
-#: src/veritysetup.c:394
+#: src/veritysetup.c:408
 #, fuzzy
 msgid "<data_device> <name> <hash_device> <root_hash>"
 msgstr "<data_laite> <tiiviste_laite> <root_tiiviste>"
 
-#: src/veritysetup.c:396 src/integritysetup.c:482
+#: src/veritysetup.c:410 src/integritysetup.c:495
 msgid "show active device status"
 msgstr "näytä aktiivilaitteen tila"
 
-#: src/veritysetup.c:397
+#: src/veritysetup.c:411
 msgid "<hash_device>"
 msgstr "<tiiviste_laite>"
 
-#: src/veritysetup.c:397 src/integritysetup.c:483
+#: src/veritysetup.c:411 src/integritysetup.c:496
 msgid "show on-disk information"
 msgstr "näytä paikallisen levyn tiedot"
 
-#: src/veritysetup.c:416
+#: src/veritysetup.c:430
 #, c-format
 msgid ""
 "\n"
@@ -3311,7 +3387,7 @@ msgstr ""
 "<tiiviste_laite> on todennusdataa sisältävä laite\n"
 "<root_tiiviste> root-solmun tiiviste kohteella <tiiviste_laite>\n"
 
-#: src/veritysetup.c:423
+#: src/veritysetup.c:437
 #, c-format
 msgid ""
 "\n"
@@ -3322,132 +3398,145 @@ msgstr ""
 "Käännetyt dm-verity oletusparametrit:\n"
 "\tTiiviste: %s, Data-lohko (tavua): %u, Tiivistelohko (tavua): %u, Satunnaislukuarvosiemenen koko: %u, Tiivistemuoto: %u\n"
 
-#: src/veritysetup.c:466
+#: src/veritysetup.c:481
 msgid "Do not use verity superblock"
 msgstr "Älä käytä verity-superlohkoa"
 
-#: src/veritysetup.c:467
+#: src/veritysetup.c:482
 msgid "Format type (1 - normal, 0 - original Chrome OS)"
 msgstr "Muototyyppi (1 - normaali, 0 - alkuperäinen Chrome OS)"
 
-#: src/veritysetup.c:467
+#: src/veritysetup.c:482
 msgid "number"
 msgstr "numero"
 
-#: src/veritysetup.c:468
+#: src/veritysetup.c:483
 msgid "Block size on the data device"
 msgstr "Data-laitteen lohkokoko"
 
-#: src/veritysetup.c:469
+#: src/veritysetup.c:484
 msgid "Block size on the hash device"
 msgstr "Tiivistelaitteen lohkokoko"
 
-#: src/veritysetup.c:470
+#: src/veritysetup.c:485
 msgid "FEC parity bytes"
 msgstr ""
 
-#: src/veritysetup.c:471
+#: src/veritysetup.c:486
 msgid "The number of blocks in the data file"
 msgstr "Data-tiedoston lohkojen määrä"
 
-#: src/veritysetup.c:471
+#: src/veritysetup.c:486
 msgid "blocks"
 msgstr "lohkoa"
 
-#: src/veritysetup.c:472
+#: src/veritysetup.c:487
 msgid "Path to device with error correction data"
 msgstr ""
 
-#: src/veritysetup.c:472 src/integritysetup.c:549
+#: src/veritysetup.c:487 src/integritysetup.c:566
 msgid "path"
 msgstr ""
 
-#: src/veritysetup.c:473
+#: src/veritysetup.c:488
 msgid "Starting offset on the hash device"
 msgstr "Tiivistelaitteen alkusiirrososoite"
 
-#: src/veritysetup.c:474
+#: src/veritysetup.c:489
 #, fuzzy
 msgid "Starting offset on the FEC device"
 msgstr "Tiivistelaitteen alkusiirrososoite"
 
-#: src/veritysetup.c:475
+#: src/veritysetup.c:490
 msgid "Hash algorithm"
 msgstr "Tiivistealgoritmi"
 
-#: src/veritysetup.c:475
+#: src/veritysetup.c:490
 msgid "string"
 msgstr "merkkijono"
 
-#: src/veritysetup.c:476
+#: src/veritysetup.c:491
 msgid "Salt"
 msgstr "Satunnaisarvosiemenluku"
 
-#: src/veritysetup.c:476
+#: src/veritysetup.c:491
 msgid "hex string"
 msgstr "heksadesimaalimerkkijono"
 
-#: src/veritysetup.c:478
+#: src/veritysetup.c:493
 #, fuzzy
 msgid "Path to root hash signature file"
 msgstr "Tiivistealueen luominen epäonnistui.\n"
 
-#: src/veritysetup.c:479
+#: src/veritysetup.c:494
 msgid "Restart kernel if corruption is detected"
 msgstr ""
 
-#: src/veritysetup.c:480
+#: src/veritysetup.c:495
+msgid "Panic kernel if corruption is detected"
+msgstr ""
+
+#: src/veritysetup.c:496
 msgid "Ignore corruption, log it only"
 msgstr ""
 
-#: src/veritysetup.c:481
+#: src/veritysetup.c:497
 #, fuzzy
 msgid "Do not verify zeroed blocks"
 msgstr "Älä käytä verity-superlohkoa"
 
-#: src/veritysetup.c:482
+#: src/veritysetup.c:498
 msgid "Verify data block only the first time it is read"
 msgstr ""
 
-#: src/veritysetup.c:582
+#: src/veritysetup.c:600
 #, fuzzy
 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation."
 msgstr "Valitsin --allow-discards sallitaan vain open-toiminnolle.\n"
 
-#: src/veritysetup.c:587
+#: src/veritysetup.c:605
 #, fuzzy
 msgid "Option --root-hash-signature can be used only for open operation."
 msgstr "Valitsin --allow-discards sallitaan vain open-toiminnolle.\n"
 
-#: src/veritysetup.c:592
+#: src/veritysetup.c:610
 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together."
 msgstr ""
 
-#: src/integritysetup.c:84 src/utils_password.c:305
+#: src/veritysetup.c:615
+msgid "Option --panic-on-corruption and --restart-on-corruption cannot be used together."
+msgstr ""
+
+#: src/integritysetup.c:85
+#, fuzzy, c-format
+msgid "Invalid key size. Maximum is %u bytes."
+msgstr "Virheellinen avainkoko %d.\n"
+
+#: src/integritysetup.c:95 src/utils_password.c:339
 #, fuzzy, c-format
 msgid "Cannot read keyfile %s."
 msgstr "Avaintiedoston %s lukeminen epäonnistui.\n"
 
-#: src/integritysetup.c:88 src/utils_password.c:310
+#: src/integritysetup.c:99 src/utils_password.c:344
 #, fuzzy, c-format
 msgid "Cannot read %d bytes from keyfile %s."
 msgstr "Ei voida lukea %d tavua avaintiedostosta %s.\n"
 
-#: src/integritysetup.c:254
+#: src/integritysetup.c:266
 #, c-format
 msgid "Formatted with tag size %u, internal integrity %s.\n"
 msgstr ""
 
-#: src/integritysetup.c:479 src/integritysetup.c:483
+#: src/integritysetup.c:492 src/integritysetup.c:496
 #, fuzzy
 msgid "<integrity_device>"
 msgstr "todenna laite"
 
-#: src/integritysetup.c:480
+#: src/integritysetup.c:493
 msgid "<integrity_device> <name>"
 msgstr ""
 
-#: src/integritysetup.c:502
+#: src/integritysetup.c:515
 #, fuzzy, c-format
 msgid ""
 "\n"
@@ -3460,439 +3549,444 @@ msgstr ""
 "<tiiviste_laite> on todennusdataa sisältävä laite\n"
 "<root_tiiviste> root-solmun tiiviste kohteella <tiiviste_laite>\n"
 
-#: src/integritysetup.c:507
+#: src/integritysetup.c:520
 #, c-format
 msgid ""
 "\n"
 "Default compiled-in dm-integrity parameters:\n"
 "\tChecksum algorithm: %s\n"
+"\tMaximum keyfile size: %dkB\n"
 msgstr ""
 
-#: src/integritysetup.c:549
+#: src/integritysetup.c:566
 msgid "Path to data device (if separated)"
 msgstr ""
 
-#: src/integritysetup.c:551
+#: src/integritysetup.c:568
 msgid "Journal size"
 msgstr ""
 
-#: src/integritysetup.c:552
+#: src/integritysetup.c:569
 msgid "Interleave sectors"
 msgstr ""
 
-#: src/integritysetup.c:553
+#: src/integritysetup.c:570
 msgid "Journal watermark"
 msgstr ""
 
-#: src/integritysetup.c:553
+#: src/integritysetup.c:570
 msgid "percent"
 msgstr ""
 
-#: src/integritysetup.c:554
+#: src/integritysetup.c:571
 msgid "Journal commit time"
 msgstr ""
 
-#: src/integritysetup.c:554 src/integritysetup.c:556
+#: src/integritysetup.c:571 src/integritysetup.c:573
 msgid "ms"
 msgstr ""
 
-#: src/integritysetup.c:555
+#: src/integritysetup.c:572
 msgid "Number of 512-byte sectors per bit (bitmap mode)."
 msgstr ""
 
-#: src/integritysetup.c:556
+#: src/integritysetup.c:573
 msgid "Bitmap mode flush time"
 msgstr ""
 
-#: src/integritysetup.c:557
+#: src/integritysetup.c:574
 msgid "Tag size (per-sector)"
 msgstr ""
 
-#: src/integritysetup.c:558
+#: src/integritysetup.c:575
 msgid "Sector size"
 msgstr ""
 
-#: src/integritysetup.c:559
+#: src/integritysetup.c:576
 msgid "Buffers size"
 msgstr ""
 
-#: src/integritysetup.c:561
+#: src/integritysetup.c:578
 msgid "Data integrity algorithm"
 msgstr ""
 
-#: src/integritysetup.c:562
+#: src/integritysetup.c:579
 #, fuzzy
 msgid "The size of the data integrity key"
 msgstr "Salausavaimen koko"
 
-#: src/integritysetup.c:563
+#: src/integritysetup.c:580
 #, fuzzy
 msgid "Read the integrity key from a file"
 msgstr "Lue avain tiedostosta."
 
-#: src/integritysetup.c:565
+#: src/integritysetup.c:582
 msgid "Journal integrity algorithm"
 msgstr ""
 
-#: src/integritysetup.c:566
+#: src/integritysetup.c:583
 #, fuzzy
 msgid "The size of the journal integrity key"
 msgstr "Salausavaimen koko"
 
-#: src/integritysetup.c:567
+#: src/integritysetup.c:584
 #, fuzzy
 msgid "Read the journal integrity key from a file"
 msgstr "Lue avain tiedostosta."
 
-#: src/integritysetup.c:569
+#: src/integritysetup.c:586
 msgid "Journal encryption algorithm"
 msgstr ""
 
-#: src/integritysetup.c:570
+#: src/integritysetup.c:587
 #, fuzzy
 msgid "The size of the journal encryption key"
 msgstr "Salausavaimen koko"
 
-#: src/integritysetup.c:571
+#: src/integritysetup.c:588
 #, fuzzy
 msgid "Read the journal encryption key from a file"
 msgstr "Lue avain tiedostosta."
 
-#: src/integritysetup.c:574
+#: src/integritysetup.c:591
 msgid "Recovery mode (no journal, no tag checking)"
 msgstr ""
 
-#: src/integritysetup.c:575
+#: src/integritysetup.c:592
 msgid "Use bitmap to track changes and disable journal for integrity device"
 msgstr ""
 
-#: src/integritysetup.c:576
+#: src/integritysetup.c:593
 msgid "Recalculate initial tags automatically."
 msgstr ""
 
-#: src/integritysetup.c:649
+#: src/integritysetup.c:596
+msgid "Do not protect superblock with HMAC (old kernels)"
+msgstr ""
+
+#: src/integritysetup.c:597
+msgid "Allow recalculating of volumes with HMAC keys (old kernels)"
+msgstr ""
+
+#: src/integritysetup.c:672
 #, fuzzy
 msgid "Option --integrity-recalculate can be used only for open action."
 msgstr "Valitsin --allow-discards sallitaan vain open-toiminnolle.\n"
 
-#: src/integritysetup.c:669
+#: src/integritysetup.c:692
 msgid "Options --journal-size, --interleave-sectors, --sector-size, --tag-size and --no-wipe can be used only for format action."
 msgstr ""
 
-#: src/integritysetup.c:675
+#: src/integritysetup.c:698
 #, fuzzy
 msgid "Invalid journal size specification."
 msgstr "Virheellinen laitekokomäärittely."
 
-#: src/integritysetup.c:680
+#: src/integritysetup.c:703
 msgid "Both key file and key size options must be specified."
 msgstr ""
 
-#: src/integritysetup.c:683
-msgid "Integrity algorithm must be specified if integrity key is used."
-msgstr ""
-
-#: src/integritysetup.c:688
+#: src/integritysetup.c:708
 msgid "Both journal integrity key file and key size options must be specified."
 msgstr ""
 
-#: src/integritysetup.c:691
+#: src/integritysetup.c:711
 msgid "Journal integrity algorithm must be specified if journal integrity key is used."
 msgstr ""
 
-#: src/integritysetup.c:696
+#: src/integritysetup.c:716
 msgid "Both journal encryption key file and key size options must be specified."
 msgstr ""
 
-#: src/integritysetup.c:699
+#: src/integritysetup.c:719
 msgid "Journal encryption algorithm must be specified if journal encryption key is used."
 msgstr ""
 
-#: src/integritysetup.c:703
+#: src/integritysetup.c:723
 msgid "Recovery and bitmap mode options are mutually exclusive."
 msgstr ""
 
-#: src/integritysetup.c:707
+#: src/integritysetup.c:727
 msgid "Journal options cannot be used in bitmap mode."
 msgstr ""
 
-#: src/integritysetup.c:711
+#: src/integritysetup.c:731
 msgid "Bitmap options can be used only in bitmap mode."
 msgstr ""
 
-#: src/cryptsetup_reencrypt.c:172
+#: src/cryptsetup_reencrypt.c:190
 #, fuzzy
 msgid "Reencryption already in-progress."
 msgstr "Uudelleensalauslohkon koko"
 
-#: src/cryptsetup_reencrypt.c:208
+#: src/cryptsetup_reencrypt.c:226
 #, fuzzy, c-format
 msgid "Cannot exclusively open %s, device in use."
 msgstr "Kohteen %s avaaminen eksklusiivisesti epäonnistui, laite on käytössä.\n"
 
-#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135
+#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153
 #, fuzzy
 msgid "Allocation of aligned memory failed."
 msgstr "Tasatun muistin varaaminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:229
+#: src/cryptsetup_reencrypt.c:247
 #, fuzzy, c-format
 msgid "Cannot read device %s."
 msgstr "Laitteen %s lukeminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:240
+#: src/cryptsetup_reencrypt.c:258
 #, fuzzy, c-format
 msgid "Marking LUKS1 device %s unusable."
 msgstr "Merkitään LUKS-laite %s käyttökelvottomaksi.\n"
 
-#: src/cryptsetup_reencrypt.c:244
+#: src/cryptsetup_reencrypt.c:262
 #, c-format
 msgid "Setting LUKS2 offline reencrypt flag on device %s."
 msgstr ""
 
-#: src/cryptsetup_reencrypt.c:261
+#: src/cryptsetup_reencrypt.c:279
 #, fuzzy, c-format
 msgid "Cannot write device %s."
 msgstr "Laitteelle %s kirjoittaminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:309
+#: src/cryptsetup_reencrypt.c:327
 #, fuzzy
 msgid "Cannot write reencryption log file."
 msgstr "Uudelleensalauslokitiedoston kirjoittaminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:365
+#: src/cryptsetup_reencrypt.c:383
 #, fuzzy
 msgid "Cannot read reencryption log file."
 msgstr "Uudelleensalauslokitiedoston lukeminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:403
+#: src/cryptsetup_reencrypt.c:421
 #, c-format
 msgid "Log file %s exists, resuming reencryption.\n"
 msgstr "Lokitiedosto %s on olemassa, aloitetaan salaus uudelleen.\n"
 
-#: src/cryptsetup_reencrypt.c:452
+#: src/cryptsetup_reencrypt.c:470
 #, fuzzy
 msgid "Activating temporary device using old LUKS header."
 msgstr "Aktivoidaan tilapäinen laite käyttäen vanhaa LUKS-otsaketta.\n"
 
-#: src/cryptsetup_reencrypt.c:462
+#: src/cryptsetup_reencrypt.c:480
 #, fuzzy
 msgid "Activating temporary device using new LUKS header."
 msgstr "Aktivoidaan tilapäinen laite käyttäen uutta LUKS-otsaketta.\n"
 
-#: src/cryptsetup_reencrypt.c:472
+#: src/cryptsetup_reencrypt.c:490
 #, fuzzy
 msgid "Activation of temporary devices failed."
 msgstr "Tilapäisten laitteiden aktivoiminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:559
+#: src/cryptsetup_reencrypt.c:577
 #, fuzzy
 msgid "Failed to set data offset."
 msgstr "Avaintiedoston kutsuminen stat-funktiolla epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:565
+#: src/cryptsetup_reencrypt.c:583
 #, fuzzy
 msgid "Failed to set metadata size."
 msgstr "Avaintiedoston kutsuminen stat-funktiolla epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:573
+#: src/cryptsetup_reencrypt.c:591
 #, fuzzy, c-format
 msgid "New LUKS header for device %s created."
 msgstr "Luotiin uusi LUKS-otsake laitteelle %s.\n"
 
-#: src/cryptsetup_reencrypt.c:633
+#: src/cryptsetup_reencrypt.c:651
 #, c-format
 msgid "This version of cryptsetup-reencrypt can't handle new internal token type %s."
 msgstr ""
 
-#: src/cryptsetup_reencrypt.c:655
+#: src/cryptsetup_reencrypt.c:673
 msgid "Failed to read activation flags from backup header."
 msgstr ""
 
-#: src/cryptsetup_reencrypt.c:659
+#: src/cryptsetup_reencrypt.c:677
 #, fuzzy
 msgid "Failed to write activation flags to new header."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667
+#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685
 #, fuzzy
 msgid "Failed to read requirements from backup header."
 msgstr "Avainsäiliöstä lukeminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:705
+#: src/cryptsetup_reencrypt.c:723
 #, fuzzy, c-format
 msgid "%s header backup of device %s created."
 msgstr "Laitteen %s LUKS-otsakkeen varmuuskopio luotu.\n"
 
-#: src/cryptsetup_reencrypt.c:768
+#: src/cryptsetup_reencrypt.c:786
 #, fuzzy
 msgid "Creation of LUKS backup headers failed."
 msgstr "LUKS-varmuuskopio-otsakkeiden luominen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:901
+#: src/cryptsetup_reencrypt.c:919
 #, fuzzy, c-format
 msgid "Cannot restore %s header on device %s."
 msgstr "LUKS-otsakkeen palautus laitteeseen %s epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:903
+#: src/cryptsetup_reencrypt.c:921
 #, fuzzy, c-format
 msgid "%s header on device %s restored."
 msgstr "LUKS-otsake palautettu laitteessa %s.\n"
 
-#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113
+#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131
 #, fuzzy
 msgid "Cannot open temporary LUKS device."
 msgstr "Tilapäisen LUKS-laitteen avaaminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123
+#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141
 #, fuzzy
 msgid "Cannot get device size."
 msgstr "Laitekoon hakeminen epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:1158
+#: src/cryptsetup_reencrypt.c:1176
 #, fuzzy
 msgid "IO error during reencryption."
 msgstr "Siirräntävirhe uudelleensalauksen aikana.\n"
 
-#: src/cryptsetup_reencrypt.c:1189
+#: src/cryptsetup_reencrypt.c:1207
 #, fuzzy
 msgid "Provided UUID is invalid."
 msgstr "Avainväli on virheellinen."
 
-#: src/cryptsetup_reencrypt.c:1423
+#: src/cryptsetup_reencrypt.c:1441
 #, fuzzy
 msgid "Cannot open reencryption log file."
 msgstr "Uudelleensalauslokitiedoston avaus epäonnistui.\n"
 
-#: src/cryptsetup_reencrypt.c:1429
+#: src/cryptsetup_reencrypt.c:1447
 msgid "No decryption in progress, provided UUID can be used only to resume suspended decryption process."
 msgstr ""
 
-#: src/cryptsetup_reencrypt.c:1504
+#: src/cryptsetup_reencrypt.c:1522
 #, c-format
 msgid "Changed pbkdf parameters in keyslot %i."
 msgstr ""
 
-#: src/cryptsetup_reencrypt.c:1616
+#: src/cryptsetup_reencrypt.c:1636
 msgid "Reencryption block size"
 msgstr "Uudelleensalauslohkon koko"
 
-#: src/cryptsetup_reencrypt.c:1616
+#: src/cryptsetup_reencrypt.c:1636
 msgid "MiB"
 msgstr "Mebitavua"
 
-#: src/cryptsetup_reencrypt.c:1620
+#: src/cryptsetup_reencrypt.c:1640
 #, fuzzy
 msgid "Do not change key, no data area reencryption"
 msgstr "Älä vaihda avainta, yhtään data-aluetta ei ole salattu uudelleen."
 
-#: src/cryptsetup_reencrypt.c:1622
+#: src/cryptsetup_reencrypt.c:1642
 #, fuzzy
 msgid "Read new volume (master) key from file"
 msgstr "Lue taltion (pää)avain tiedostosta."
 
-#: src/cryptsetup_reencrypt.c:1623
+#: src/cryptsetup_reencrypt.c:1643
 msgid "PBKDF2 iteration time for LUKS (in ms)"
 msgstr "PBKDF2-iterointiaika kohteelle LUKS (millisekunneissa)"
 
-#: src/cryptsetup_reencrypt.c:1629
+#: src/cryptsetup_reencrypt.c:1649
 #, fuzzy
 msgid "Use direct-io when accessing devices"
 msgstr "Käytä direct-io -siirräntää laitteisiin yhdistettäessä."
 
-#: src/cryptsetup_reencrypt.c:1630
+#: src/cryptsetup_reencrypt.c:1650
 #, fuzzy
 msgid "Use fsync after each block"
 msgstr "Käytä fsync-komentoa jokaisen lohkon jälkeen."
 
-#: src/cryptsetup_reencrypt.c:1631
+#: src/cryptsetup_reencrypt.c:1651
 #, fuzzy
 msgid "Update log file after every block"
 msgstr "Päivitä lokitiedosto jokaisen lohkon jälkeen."
 
-#: src/cryptsetup_reencrypt.c:1632
+#: src/cryptsetup_reencrypt.c:1652
 #, fuzzy
 msgid "Use only this slot (others will be disabled)"
 msgstr "Käytä vain tätä väliä (muut ovat pois käytöstä)."
 
-#: src/cryptsetup_reencrypt.c:1637
+#: src/cryptsetup_reencrypt.c:1657
 #, fuzzy
 msgid "Create new header on not encrypted device"
 msgstr "Luo uusi otsake ei-salattuun laitteeseen."
 
-#: src/cryptsetup_reencrypt.c:1638
+#: src/cryptsetup_reencrypt.c:1658
 #, fuzzy
 msgid "Permanently decrypt device (remove encryption)"
 msgstr "Poista laitteen salaus pysyvästi (poista salaus)"
 
-#: src/cryptsetup_reencrypt.c:1639
+#: src/cryptsetup_reencrypt.c:1659
 #, fuzzy
 msgid "The UUID used to resume decryption"
 msgstr "Salausavaimen koko"
 
-#: src/cryptsetup_reencrypt.c:1640
+#: src/cryptsetup_reencrypt.c:1660
 #, fuzzy
 msgid "Type of LUKS metadata: luks1, luks2"
 msgstr "Laitemetatietojen tyyppi: luks, plain, loopaes, tcrypt."
 
-#: src/cryptsetup_reencrypt.c:1659
+#: src/cryptsetup_reencrypt.c:1679
 msgid "[OPTION...] <device>"
 msgstr "[VALITSIN...] <laite>"
 
-#: src/cryptsetup_reencrypt.c:1667
+#: src/cryptsetup_reencrypt.c:1687
 #, fuzzy, c-format
 msgid "Reencryption will change: %s%s%s%s%s%s."
 msgstr "Uudelleensalauas muuttuu: taltio key%s%s%s%s.\n"
 
-#: src/cryptsetup_reencrypt.c:1668
+#: src/cryptsetup_reencrypt.c:1688
 msgid "volume key"
 msgstr ""
 
-#: src/cryptsetup_reencrypt.c:1670
+#: src/cryptsetup_reencrypt.c:1690
 #, fuzzy
 msgid "set hash to "
 msgstr ", aseta tiivisteeksi "
 
-#: src/cryptsetup_reencrypt.c:1671
+#: src/cryptsetup_reencrypt.c:1691
 msgid ", set cipher to "
 msgstr ", aseta salaukseksi "
 
-#: src/cryptsetup_reencrypt.c:1675
+#: src/cryptsetup_reencrypt.c:1695
 msgid "Argument required."
 msgstr "Argumentti vaadittu."
 
-#: src/cryptsetup_reencrypt.c:1703
+#: src/cryptsetup_reencrypt.c:1723
 msgid "Only values between 1 MiB and 64 MiB allowed for reencryption block size."
 msgstr "Vain arvot välillä 1 mebitavua ja 64 mebitavua ovat sallittuja uudelleensalauslohkokokoja."
 
-#: src/cryptsetup_reencrypt.c:1730
+#: src/cryptsetup_reencrypt.c:1750
 msgid "Maximum device reduce size is 64 MiB."
 msgstr "Maksimi laitepienennyskoko on 64 mebitavua."
 
-#: src/cryptsetup_reencrypt.c:1737
+#: src/cryptsetup_reencrypt.c:1757
 #, fuzzy
 msgid "Option --new must be used together with --reduce-device-size or --header."
 msgstr "Valitsinta --new on käytettävä yhdessä valitsimen --reduce-device-size kanssa."
 
-#: src/cryptsetup_reencrypt.c:1741
+#: src/cryptsetup_reencrypt.c:1761
 #, fuzzy
 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations."
 msgstr "Valitsinta --keep-key voidaan käyttää vain valitsimen --hash tai --iter-time kanssa."
 
-#: src/cryptsetup_reencrypt.c:1745
+#: src/cryptsetup_reencrypt.c:1765
 msgid "Option --new cannot be used together with --decrypt."
 msgstr "Valitsinta --new ei voi käytttää yhdessä valitsimen --decrypt kanssa."
 
-#: src/cryptsetup_reencrypt.c:1749
+#: src/cryptsetup_reencrypt.c:1769
 msgid "Option --decrypt is incompatible with specified parameters."
 msgstr "Valitsin --decrypt on yhteensopimaton määriteltyjen parametrien kanssa."
 
-#: src/cryptsetup_reencrypt.c:1753
+#: src/cryptsetup_reencrypt.c:1773
 #, fuzzy
 msgid "Option --uuid is allowed only together with --decrypt."
 msgstr "Valitsinta --new ei voi käytttää yhdessä valitsimen --decrypt kanssa."
 
-#: src/cryptsetup_reencrypt.c:1757
+#: src/cryptsetup_reencrypt.c:1777
 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'."
 msgstr ""
 
@@ -3937,95 +4031,95 @@ msgstr ""
 msgid "Command failed with code %i (%s).\n"
 msgstr "Komento epäonnistui koodilla %i"
 
-#: src/utils_tools.c:283
+#: src/utils_tools.c:284
 #, fuzzy, c-format
 msgid "Key slot %i created."
 msgstr "Avaivälin %d vaihtui.\n"
 
-#: src/utils_tools.c:285
+#: src/utils_tools.c:286
 #, fuzzy, c-format
 msgid "Key slot %i unlocked."
 msgstr "Avaivälin %d lukitus avattu.\n"
 
-#: src/utils_tools.c:287
+#: src/utils_tools.c:288
 #, fuzzy, c-format
 msgid "Key slot %i removed."
 msgstr "Avaivälin %d lukitus avattu.\n"
 
-#: src/utils_tools.c:296
+#: src/utils_tools.c:297
 #, c-format
 msgid "Token %i created."
 msgstr ""
 
-#: src/utils_tools.c:298
+#: src/utils_tools.c:299
 #, c-format
 msgid "Token %i removed."
 msgstr ""
 
-#: src/utils_tools.c:464
+#: src/utils_tools.c:465
 msgid ""
 "\n"
 "Wipe interrupted."
 msgstr ""
 
-#: src/utils_tools.c:475
+#: src/utils_tools.c:476
 #, c-format
 msgid "WARNING: Device %s already contains a '%s' partition signature.\n"
 msgstr ""
 
-#: src/utils_tools.c:483
+#: src/utils_tools.c:484
 #, c-format
 msgid "WARNING: Device %s already contains a '%s' superblock signature.\n"
 msgstr ""
 
-#: src/utils_tools.c:504 src/utils_tools.c:568
+#: src/utils_tools.c:505 src/utils_tools.c:569
 #, fuzzy
 msgid "Failed to initialize device signature probes."
 msgstr "Laitekuvaajahakemiston hankkiminen epäonnistui."
 
-#: src/utils_tools.c:548
+#: src/utils_tools.c:549
 #, fuzzy, c-format
 msgid "Failed to stat device %s."
 msgstr "Avaintiedoston kutsuminen stat-funktiolla epäonnistui.\n"
 
-#: src/utils_tools.c:561
+#: src/utils_tools.c:562
 #, c-format
 msgid "Device %s is in use. Can not proceed with format operation."
 msgstr ""
 
-#: src/utils_tools.c:563
+#: src/utils_tools.c:564
 #, c-format
 msgid "Failed to open file %s in read/write mode."
 msgstr ""
 
-#: src/utils_tools.c:577
+#: src/utils_tools.c:578
 #, c-format
 msgid "Existing '%s' partition signature (offset: %<PRIi64> bytes) on device %s will be wiped."
 msgstr ""
 
-#: src/utils_tools.c:580
+#: src/utils_tools.c:581
 #, c-format
 msgid "Existing '%s' superblock signature (offset: %<PRIi64> bytes) on device %s will be wiped."
 msgstr ""
 
-#: src/utils_tools.c:583
+#: src/utils_tools.c:584
 #, fuzzy
 msgid "Failed to wipe device signature."
 msgstr "Avainsäiliöön kirjoittaminen epäonnistui.\n"
 
-#: src/utils_tools.c:590
+#: src/utils_tools.c:591
 #, fuzzy, c-format
 msgid "Failed to probe device %s for a signature."
 msgstr "Laitekuvaajahakemiston hankkiminen epäonnistui."
 
-#: src/utils_tools.c:629
+#: src/utils_tools.c:622
 #, fuzzy
 msgid ""
 "\n"
 "Reencryption interrupted."
 msgstr "Uudelleensalauslohkon koko"
 
-#: src/utils_password.c:43 src/utils_password.c:75
+#: src/utils_password.c:43 src/utils_password.c:76
 #, fuzzy, c-format
 msgid "Cannot check password quality: %s"
 msgstr "Salasanan laatutarkistus epäonnistui: %s\n"
@@ -4044,50 +4138,50 @@ msgstr ""
 msgid "Password quality check failed: Bad passphrase (%s)"
 msgstr "Salasanan laatutarkistus epäonnistui: Virheellinen salasana (%s)\n"
 
-#: src/utils_password.c:193 src/utils_password.c:208
+#: src/utils_password.c:228 src/utils_password.c:242
 #, fuzzy
 msgid "Error reading passphrase from terminal."
 msgstr "Virhe luettaessa salasanalausetta pääteikkunasta.\n"
 
-#: src/utils_password.c:206
+#: src/utils_password.c:240
 msgid "Verify passphrase: "
 msgstr "Todenna salasanalause: "
 
-#: src/utils_password.c:213
+#: src/utils_password.c:247
 #, fuzzy
 msgid "Passphrases do not match."
 msgstr "Salasanalauseet eivät täsmää.\n"
 
-#: src/utils_password.c:250
+#: src/utils_password.c:284
 #, fuzzy
 msgid "Cannot use offset with terminal input."
 msgstr "Siirrososoitteen käyttö pääteikkunasyötteellä epäonnistui.\n"
 
-#: src/utils_password.c:253
+#: src/utils_password.c:287
 #, c-format
 msgid "Enter passphrase: "
 msgstr "Kirjoita salasanalause: "
 
-#: src/utils_password.c:256
+#: src/utils_password.c:290
 #, c-format
 msgid "Enter passphrase for %s: "
 msgstr "Kirjoita salasanalause kohteelle %s: "
 
-#: src/utils_password.c:287
+#: src/utils_password.c:321
 #, fuzzy
 msgid "No key available with this passphrase."
 msgstr "Tälle salasanalauseelle ei ole saatavissa avainta.\n"
 
-#: src/utils_password.c:289
+#: src/utils_password.c:323
 msgid "No usable keyslot is available."
 msgstr ""
 
-#: src/utils_password.c:328
+#: src/utils_password.c:365
 #, fuzzy, c-format
 msgid "Cannot open keyfile %s for write."
 msgstr "Tiedoston %s avaus epäonnistui.\n"
 
-#: src/utils_password.c:335
+#: src/utils_password.c:372
 #, fuzzy, c-format
 msgid "Cannot write to keyfile %s."
 msgstr "Avaintiedoston %s lukeminen epäonnistui.\n"
@@ -4129,6 +4223,7 @@ msgstr ""
 msgid "Failed to write JSON file."
 msgstr "Avaintiedoston avaus epäonnistui.\n"
 
+#, c-format
 #~ msgid "Replaced with key slot %d.\n"
 #~ msgstr "Korvattiin avainvälillä %d.\n"
 
@@ -4138,12 +4233,16 @@ msgstr "Avaintiedoston avaus epäonnistui.\n"
 #~ msgid "Cannot find a free loopback device.\n"
 #~ msgstr "Vapaan silmukkalaiteen löytäminen epäonnistui.\n"
 
+#~ msgid "Invalid size parameters for verity device.\n"
+#~ msgstr "Virheelliset kokoparametrit verity-laitteelle.\n"
+
 #~ msgid "Too many tree levels for verity volume.\n"
 #~ msgstr "Verity-taltiolla liian monta puutasoa.\n"
 
 #~ msgid "memory allocation error in action_luksFormat"
 #~ msgstr "muistivarausvirhe kohteessa action_luksFormat"
 
+#, c-format
 #~ msgid "Key %d not active. Can't wipe.\n"
 #~ msgstr "Avain %d ei ole käytössä. Ei voida pyyhkiä pois.\n"
 
@@ -4156,15 +4255,19 @@ msgstr "Avaintiedoston avaus epäonnistui.\n"
 #~ msgid "remove (deactivate) device"
 #~ msgstr "poista (deaktivoi) laite"
 
+#, c-format
 #~ msgid "Cannot open device %s\n"
 #~ msgstr "Laitteen %s avaus epäonnistui.\n"
 
+#, c-format
 #~ msgid "Marking LUKS device %s usable.\n"
 #~ msgstr "Merkitään LUKS-laite %s käyttökelpoiseksi.\n"
 
+#, c-format
 #~ msgid "Activated keyslot %i.\n"
 #~ msgstr "Aktivoitiin avainväli %i.\n"
 
+#, c-format
 #~ msgid "Progress: %5.1f%%, ETA %02llu:%02llu, %4llu MiB written, speed %5.1f MiB/s%s"
 #~ msgstr "Eteneminen: %5.1f%%, ETA %02llu:%02llu, %4llu Mebitavua kirjoitettu, nopeus %5.1f Mebitavua/s%s"