diff -Nru cryptsetup-2.3.4/autogen.sh cryptsetup-2.3.6/autogen.sh --- cryptsetup-2.3.4/autogen.sh 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/autogen.sh 2021-05-28 04:57:08.000000000 -0500 @@ -9,16 +9,23 @@ (autopoint --version) < /dev/null > /dev/null 2>&1 || { echo echo "**Error**: You must have autopoint installed." - echo "Download the appropriate package for your distribution," - echo "or see http://www.gnu.org/software/gettext" + echo "Download the appropriate package for your distribution." DIE=1 } + +(msgfmt --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "**Warning**: You should have gettext installed." + echo "Download the appropriate package for your distribution." + echo "To disable translation, you can also use --disable-nls" + echo "configure option." +} + (autoconf --version) < /dev/null > /dev/null 2>&1 || { echo - echo "**Error**: You must have autoconf installed to." - echo "Download the appropriate package for your distribution," - echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/" + echo "**Error**: You must have autoconf installed." + echo "Download the appropriate package for your distribution." DIE=1 } @@ -26,8 +33,7 @@ (libtool --version) < /dev/null > /dev/null 2>&1 || { echo echo "**Error**: You must have libtool installed." - echo "Get ftp://ftp.gnu.org/pub/gnu/" - echo "(or a newer version if it is available)" + echo "Download the appropriate package for your distribution." DIE=1 } } @@ -35,8 +41,7 @@ (automake --version) < /dev/null > /dev/null 2>&1 || { echo echo "**Error**: You must have automake installed." - echo "Get ftp://ftp.gnu.org/pub/gnu/" - echo "(or a newer version if it is available)" + echo "Download the appropriate package for your distribution." DIE=1 NO_AUTOMAKE=yes } @@ -47,8 +52,6 @@ echo echo "**Error**: Missing aclocal. The version of automake" echo "installed doesn't appear recent enough." - echo "Get ftp://ftp.gnu.org/pub/gnu/" - echo "(or a newer version if it is available)" DIE=1 } diff -Nru cryptsetup-2.3.4/configure.ac cryptsetup-2.3.6/configure.ac --- cryptsetup-2.3.4/configure.ac 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/configure.ac 2021-05-28 04:57:08.000000000 -0500 @@ -1,5 +1,5 @@ AC_PREREQ([2.67]) -AC_INIT([cryptsetup],[2.3.4]) +AC_INIT([cryptsetup],[2.3.6]) dnl library version from ..[-] LIBCRYPTSETUP_VERSION=$(echo $PACKAGE_VERSION | cut -f1 -d-) @@ -176,7 +176,15 @@ if test "x$enable_passwdqc" = "xyes"; then AC_DEFINE(ENABLE_PASSWDQC, 1, [Enable password quality checking using passwdqc library]) - PASSWDQC_LIBS="-lpasswdqc" + saved_LIBS="$LIBS" + AC_SEARCH_LIBS([passwdqc_check], [passwdqc]) + case "$ac_cv_search_passwdqc_check" in + no) AC_MSG_ERROR([failed to find passwdqc_check]) ;; + -l*) PASSWDQC_LIBS="$ac_cv_search_passwdqc_check" ;; + *) PASSWDQC_LIBS= ;; + esac + AC_CHECK_FUNCS([passwdqc_params_free]) + LIBS="$saved_LIBS" fi if test "x$enable_pwquality$enable_passwdqc" = "xyesyes"; then @@ -596,7 +604,8 @@ CS_NUM_WITH([loopaes-keybits],[key length in bits for loop-AES mode], [256]) CS_NUM_WITH([keyfile-size-maxkb],[maximum keyfile size (in KiB)], [8192]) -CS_NUM_WITH([passphrase-size-max],[maximum keyfile size (in characters)], [512]) +CS_NUM_WITH([integrity-keyfile-size-maxkb],[maximum integritysetup keyfile size (in KiB)], [4]) +CS_NUM_WITH([passphrase-size-max],[maximum passphrase size (in characters)], [512]) CS_STR_WITH([verity-hash], [hash function for verity mode], [sha256]) CS_NUM_WITH([verity-data-block], [data block size for verity mode], [4096]) diff -Nru cryptsetup-2.3.4/debian/changelog cryptsetup-2.3.6/debian/changelog --- cryptsetup-2.3.4/debian/changelog 2021-02-22 05:10:36.000000000 -0600 +++ cryptsetup-2.3.6/debian/changelog 2021-08-19 17:17:34.000000000 -0500 @@ -1,3 +1,9 @@ +cryptsetup (2:2.3.6-0ubuntu1) impish; urgency=medium + + * New upstream release. + + -- Matthieu Clemenceau Thu, 19 Aug 2021 17:17:34 -0500 + cryptsetup (2:2.3.4-1ubuntu3) hirsute; urgency=medium * Stop building the udeb on request. diff -Nru cryptsetup-2.3.4/debian/patches/decrease_memlock_ulimit.patch cryptsetup-2.3.6/debian/patches/decrease_memlock_ulimit.patch --- cryptsetup-2.3.4/debian/patches/decrease_memlock_ulimit.patch 2020-11-09 15:35:40.000000000 -0600 +++ cryptsetup-2.3.6/debian/patches/decrease_memlock_ulimit.patch 2021-08-19 17:17:34.000000000 -0500 @@ -8,11 +8,9 @@ Bug-Ubuntu: https://bugs.launchpad.net/bugs/1891473 Last-Update: 2020-09-09 -Index: cryptsetup-2.3.3/tests/compat-test -=================================================================== ---- cryptsetup-2.3.3.orig/tests/compat-test -+++ cryptsetup-2.3.3/tests/compat-test -@@ -45,6 +45,10 @@ TEST_UUID="12345678-1234-1234-1234-12345 +--- a/tests/compat-test ++++ b/tests/compat-test +@@ -46,6 +46,10 @@ LOOPDEV=$(losetup -f 2>/dev/null) [ -f /etc/system-fips ] && FIPS_MODE=$(cat /proc/sys/crypto/fips_enabled 2>/dev/null) @@ -23,11 +21,9 @@ function remove_mapping() { [ -b /dev/mapper/$DEV_NAME3 ] && dmsetup remove --retry $DEV_NAME3 >/dev/null 2>&1 -Index: cryptsetup-2.3.3/tests/luks2-validation-test -=================================================================== ---- cryptsetup-2.3.3.orig/tests/luks2-validation-test -+++ cryptsetup-2.3.3/tests/luks2-validation-test -@@ -21,6 +21,10 @@ FAILS=0 +--- a/tests/luks2-validation-test ++++ b/tests/luks2-validation-test +@@ -21,6 +21,10 @@ [ -z "$srcdir" ] && srcdir="." @@ -38,11 +34,9 @@ function remove_mapping() { rm -rf $IMG $TST_IMGS >/dev/null 2>&1 -Index: cryptsetup-2.3.3/tests/tcrypt-compat-test -=================================================================== ---- cryptsetup-2.3.3.orig/tests/tcrypt-compat-test -+++ cryptsetup-2.3.3/tests/tcrypt-compat-test -@@ -13,6 +13,10 @@ PIM=1234 +--- a/tests/tcrypt-compat-test ++++ b/tests/tcrypt-compat-test +@@ -13,6 +13,10 @@ [ -z "$srcdir" ] && srcdir="." diff -Nru cryptsetup-2.3.4/docs/examples/crypt_log_usage.c cryptsetup-2.3.6/docs/examples/crypt_log_usage.c --- cryptsetup-2.3.4/docs/examples/crypt_log_usage.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/docs/examples/crypt_log_usage.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * libcryptsetup API log example * - * Copyright (C) 2011-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2011-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/docs/examples/crypt_luks_usage.c cryptsetup-2.3.6/docs/examples/crypt_luks_usage.c --- cryptsetup-2.3.4/docs/examples/crypt_luks_usage.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/docs/examples/crypt_luks_usage.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * libcryptsetup API - using LUKS device example * - * Copyright (C) 2011-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2011-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/docs/v2.3.5-ReleaseNotes cryptsetup-2.3.6/docs/v2.3.5-ReleaseNotes --- cryptsetup-2.3.4/docs/v2.3.5-ReleaseNotes 1969-12-31 18:00:00.000000000 -0600 +++ cryptsetup-2.3.6/docs/v2.3.5-ReleaseNotes 2021-05-28 04:57:08.000000000 -0500 @@ -0,0 +1,181 @@ +Cryptsetup 2.3.5 Release Notes +============================== +Stable bug-fix release with minor extensions. + +All users of cryptsetup 2.x and later should upgrade to this version. + +Changes since version 2.3.4 +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +* Fix partial reads of passphrase from an interactive terminal. + Some stable kernels (5.3.11) started to return buffer from a terminal + in parts of maximal size 64 bytes. + This breaks the reading of passphrases longer than 64 characters + entered through an interactive terminal. The change is already fixed + in later kernel releases, but tools now support such partial read from + terminal properly. + +* Fix maximal length of password entered through a terminal. + Now the maximal interactive passphrase length is exactly + 512 characters (not 511). + +* integritysetup: support new dm-integrity HMAC recalculation options. + + In older kernels (since version 4.19), an attacker can force + an automatic recalculation of integrity tags by modifying + the dm-integrity superblock. + This is a problem with a keyed algorithms (HMAC), where it expects + nobody can trigger such recalculation without the key. + (Automatic recalculation will start after the next activation.) + + Note that dm-integrity in standalone mode was *not* supposed + to provide cryptographic data integrity protection. + Despite that, we try to keep the system secure if keyed algorithms + are used. + Thank Daniel Glöckner for the original report of this problem. + + Authenticated encryption that provides data integrity protection (in + combination with dm-crypt and LUKS2) is not affected by this problem. + + The fix in the kernel for this problem contains two parts. + + Firstly, the dm-integrity kernel module disables integrity + recalculation if keyed algorithms (HMAC) are used. + This change is included in long-term stable kernels. + + Secondly, since the kernel version 5.11, dm-integrity introduces + modified protection where a journal-integrity algorithm guards + superblock; also, journal sections are protected. An attacker cannot + copy sectors from one journal section to another, and the superblock + also contains salt to prevent header replacement from another device. + + If you want to protect data with HMAC, you should always also use HMAC + for --journal-integrity. Keys can be independent. + If HMAC is used for data but not for the journal, the recalculation + option is disabled. + + If you need to use (insecure) backward compatibility implementation, + two new integritysetup options are introduced: + - Use --integrity-legacy-recalc (instead of --integrity-recalc) + to allow recalculation on legacy devices. + - Use --integrity-legacy-hmac in format action to force old insecure + HMAC format. + + Libcryptsetup API also introduces flags + CRYPT_COMPAT_LEGACY_INTEGRITY_HMAC and + CRYPT_COMPAT_LEGACY_INTEGRITY_RECALC + to set these through crypt_set_compatibility() call. + +* integritysetup: display of recalculating sector in dump command. + +* veritysetup: fix verity FEC if stored in the same image with hashes. + + Optional FEC (Forward Error Correction) data should cover the whole + data area, hashes (Merkle tree), and optionally additional metadata + (located after hash area). + + Unfortunately, if FEC data is stored in the same file as hash, + the calculation wrongly used the whole file size, thus overlaps with + the FEC area itself. This produced unusable and too large FEC data. + There is no problem if the FEC image is a separate image. + + The problem is now fixed, introducing FEC blocks calculation as: + - If the hash device is in a separate image, metadata covers the + whole rest of the image after the hash area. (Unchanged behavior.) + - If hash and FEC device is in the image, metadata ends on the FEC + area offset. + + Note: there is also a fix for FEC in the dm-verity kernel (on the way + to stable kernels) that fixes error correction with larger RS roots. + +* veritysetup: run FEC repair check even if root hash fails. + + Note: The userspace FEC verify command reports are only informational + for now. Code does not check verity hash after FEC recovery in + userspace. The Reed-Solomon decoder can then report the possibility + that it fixed data even if parity is too damaged. + This will be fixed in the next major release. + +* veritysetup: do not process hash image if hash area is empty. + + Sometimes the device is so small that there is only a root hash + needed, and the hash area is not used. + Also, the size of the hash image is not increased for hash block + alignment in this case. + +* veritysetup: store verity hash algorithm in superblock in lowercase. + + Otherwise, the kernel could refuse the activation of the device. + +* bitlk: fix a crash if the device disappears during BitLocker scan. + +* bitlk: show a better error when trying to open an NTFS device. + + Both BitLocker version 1 and NTFS have the same signature. + If a user opens an NTFS device without BitLocker, it now correctly + informs that it is not a BITLK device. + +* bitlk: add support for startup key protected VMKs. + + The startup key can be provided in --key-file option for open command. + +* Fix LUKS1 repair code (regression since version 1.7.x). + + We cannot trust possibly broken keyslots metadata in repair, so the + code recalculates them instead. + This makes the repair code working again when the master boot record + signature overwrites the LUKS header. + +* Fix luksKeyChange for LUKS2 with assigned tokens. + + The token references are now correctly assigned to the new keyslot + number. + +* Fix cryptsetup resize using LUKS2 tokens. + + Code needlessly asked for passphrase even though volume key was + already unlocked via LUKS2 token. + +* Print a visible error if device resize is not supported. + +* Add error message when suspending wrong non-LUKS device. + +* Fix default XTS mode key size in reencryption. + + The same luksFormat logic (double key size because XTS uses two keys) + is applied in the reencryption code. + +* Rephrase missing locking directory warning and move it to debug level. + + The system should later provide a safe transition to tempdir + configuration, so creating locking directory inside libcryptsetup + call is safe. + +* Many fixes for the use of cipher_null (empty debug cipher). + + Support for this empty cipher was intended as a debug feature and for + measuring performance overhead. Unfortunately, many systems started to + use it as an "empty shell" for LUKS (to enable encryption later). + + This use is very dangerous and it creates a false sense of security. + + Anyway, to not break such systems, we try to support these + configurations. + Using cipher_null in any production system is strongly discouraged! + + Fixes include: + - allow LUKS resume for a device with cipher_null. + - do not upload key in keyring when data cipher is null. + - switch to default cipher when reencrypting cipher_null device. + - replace possible bogus cipher_null keyslots before reencryption. + - fix broken detection of null cipher in LUKS2. + cipher_null is no longer possible to be used in keyslot encryption + in LUKS2, it can be used only for data for debugging purposes. + +* Fixes for libpasswdqc 2.0.x (optional passphrase quality check). + +* Fixes for problems discovered by various tools for code analysis. + + Fixes include a rework of libpopt command line option string leaks. + +* Various fixes to man pages. diff -Nru cryptsetup-2.3.4/docs/v2.3.6-ReleaseNotes cryptsetup-2.3.6/docs/v2.3.6-ReleaseNotes --- cryptsetup-2.3.4/docs/v2.3.6-ReleaseNotes 1969-12-31 18:00:00.000000000 -0600 +++ cryptsetup-2.3.6/docs/v2.3.6-ReleaseNotes 2021-05-28 04:57:08.000000000 -0500 @@ -0,0 +1,56 @@ +Cryptsetup 2.3.6 Release Notes +============================== +Stable bug-fix release with minor extensions. + +All users of cryptsetup 2.x and later should upgrade to this version. + +Changes since version 2.3.5 +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +* integritysetup: Fix possible dm-integrity mapping table truncation. + + While integritysetup in standalone mode (no encryption) was not + designed to provide keyed (and cryptographically strong) data + integrity protection, some options can use such algorithms (HMAC). + + If a key is used, it is directly sent to the kernel dm-integrity as + a mapping table option (no key derivation is performed). + For HMAC, such a key could be quite long (up to 4096 bytes in + integritysetup CLI). + + Unfortunately, due to fixed buffers and not correctly checking string + truncation, some parameter combinations could cause truncation + of the dm-integrity mapping table. + In most cases, the table was rejected by the kernel. + The worst possible case was key truncation for HMAC options + (internal_hash and journal_mac dm-integrity table options). + + This release fixes possible truncation and also adds more sanity + checks to reject truncated options. + Also, integritysetup now mentions maximal allowed key size + in --help output. + + For old standalone dm-integrity devices where the key length was + truncated, you have to modify (shorten) --integrity-key-size + resp. --journal-integrity-key-size option now. + + This bug is _not_ present for dm-crypt/LUKS, LUKS2 (including + integrity protection), or dm-verity devices; it affects only + standalone dm-integrity with HMAC integrity protection. + +* cryptsetup: Backup header can be used to activate TCRYPT device. + Use --header option to specify the header. + +* cryptsetup: Avoid LUKS2 decryption without detached header. + This feature will be added later and is currently not supported. + +* Additional fixes and workarounds for common warnings produced + by some static analysis tools (like gcc-11 analyzer) and additional + code hardening. + +* Fix standalone libintl detection for compiled tests. + +* Add Blake2b and Blake2s hash support for crypto backends. + Kernel and gcrypt crypto backend support all variants. + OpenSSL supports only Blake2b-512 and Blake2s-256. + Crypto backend supports kernel notation e.g. "blake2b-512". diff -Nru cryptsetup-2.3.4/FAQ cryptsetup-2.3.6/FAQ --- cryptsetup-2.3.4/FAQ 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/FAQ 2021-05-28 04:57:08.000000000 -0500 @@ -51,7 +51,7 @@ security model BEFORE you face such a disaster! In particular, make sure you have a current header backup before doing any potentially dangerous operations. The LUKS2 header should be a bit more resilient - as critical data starts later and is stored twice, but you can decidely + as critical data starts later and is stored twice, but you can decidedly still destroy it or a keyslot permanently by accident. DEBUG COMMANDS: While the --debug and --debug-json options should not @@ -705,10 +705,6 @@ the key from STDIN and write it there with your own tool that in turn gets the key from the more secure key storage. - For TPM support, you may want to have a look at tpm-luks at - https://github.com/shpedoikal/tpm-luks. Note that tpm-luks is not - related to the cryptsetup project. - * 2.15 Can I resize a dm-crypt or LUKS container? @@ -973,7 +969,7 @@ that is intact. In order to find out whether a key-slot is damaged one has to look for - "non-random looking" data in it. There is a tool that automatizes this + "non-random looking" data in it. There is a tool that automates this for LUKS1 in the cryptsetup distribution from version 1.6.0 onwards. It is located in misc/keyslot_checker/. Instructions how to use and how to interpret results are in the README file. Note that this tool requires @@ -1612,8 +1608,9 @@ cryptsetup -c aes-xts-plain64 luksFormat - There is a potential security issue with XTS mode and large blocks. - LUKS and dm-crypt always use 512B blocks and the issue does not apply. + There is a potential security issue with XTS mode and blocks larger + than 2^20 bytes or so. LUKS and dm-crypt always use smaller blocks + and the issue does not apply. * 5.17 Is LUKS FIPS-140-2 certified? @@ -2632,7 +2629,7 @@ safe under these circumstances, then you have bigger problems than this somewhat expected behavior. - The CVE was exagerrated and should not be assigned to upstream + The CVE was exaggerated and should not be assigned to upstream cryptsetup in the first place (it is a distro specific initrd issue). It was driven more by a try to make a splash for self-aggrandizement, than by any actual security concerns. Ignore it. diff -Nru cryptsetup-2.3.4/lib/bitlk/bitlk.c cryptsetup-2.3.6/lib/bitlk/bitlk.c --- cryptsetup-2.3.4/lib/bitlk/bitlk.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/bitlk/bitlk.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,9 +1,9 @@ /* * BITLK (BitLocker-compatible) volume handling * - * Copyright (C) 2019-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2019-2020 Milan Broz - * Copyright (C) 2019-2020 Vojtech Trefny + * Copyright (C) 2019-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2019-2021 Milan Broz + * Copyright (C) 2019-2021 Vojtech Trefny * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -54,6 +54,9 @@ #define BITLK_RECOVERY_PARTS 8 #define BITLK_RECOVERY_PART_LEN 6 +#define BITLK_BEK_FILE_HEADER_LEN 48 +#define BITLK_STARTUP_KEY_HEADER_LEN 24 + #define BITLK_KDF_HASH "sha256" #define BITLK_KDF_ITERATION_COUNT 0x100000 @@ -162,6 +165,18 @@ uint64_t count; }; +struct bitlk_bek_header { + uint32_t metadata_size; + uint32_t metadata_version; + uint32_t metadata_header_size; + uint32_t metada_size_copy; + struct bitlk_guid guid; + uint32_t next_nonce; + uint16_t encryption; + uint16_t unknown; + uint64_t creation_time; +} __attribute__ ((packed)); + static BITLKVMKProtection get_vmk_protection(uint16_t protection) { switch (protection) { @@ -311,7 +326,9 @@ bool supported = false; /* only passphrase or recovery passphrase vmks are supported (can be used to activate) */ - supported = (*vmk)->protection == BITLK_PROTECTION_PASSPHRASE || (*vmk)->protection == BITLK_PROTECTION_RECOVERY_PASSPHRASE; + supported = (*vmk)->protection == BITLK_PROTECTION_PASSPHRASE || + (*vmk)->protection == BITLK_PROTECTION_RECOVERY_PASSPHRASE || + (*vmk)->protection == BITLK_PROTECTION_STARTUP_KEY; while (end - start > 2) { /* size of this entry */ @@ -394,6 +411,9 @@ (*vmk)->name = string; string = NULL; } + /* no idea what this is, lets hope it's not important */ + } else if (key_entry_value == BITLK_ENTRY_VALUE_USE_KEY && (*vmk)->protection == BITLK_PROTECTION_STARTUP_KEY) { + ; } else { if (supported) { log_err(cd, _("Unexpected metadata entry value '%u' found when parsing supported Volume Master Key."), key_entry_value); @@ -436,6 +456,9 @@ void BITLK_bitlk_metadata_free(struct bitlk_metadata *metadata) { + if (!metadata) + return; + free(metadata->guid); if (metadata->description) free(metadata->description); @@ -481,18 +504,6 @@ goto out; } - if (memcmp(sig.boot_code, BITLK_BOOTCODE_V1, sizeof(sig.boot_code)) == 0) { - log_err(cd, _("BITLK version 1 is currently not supported.")); - r = -ENOTSUP; - goto out; - } else if (memcmp(sig.boot_code, BITLK_BOOTCODE_V2, sizeof(sig.boot_code)) == 0) - ; - else { - log_err(cd, _("Invalid or unknown boot signature for BITLK device.")); - r = -EINVAL; - goto out; - } - if (memcmp(sig.signature, BITLK_SIGNATURE, sizeof(sig.signature)) == 0) { params->togo = false; fve_offset = BITLK_HEADER_METADATA_OFFSET; @@ -505,6 +516,18 @@ goto out; } + if (memcmp(sig.boot_code, BITLK_BOOTCODE_V1, sizeof(sig.boot_code)) == 0) { + log_err(cd, _("BITLK version 1 is currently not supported.")); + r = -ENOTSUP; + goto out; + } else if (memcmp(sig.boot_code, BITLK_BOOTCODE_V2, sizeof(sig.boot_code)) == 0) + ; + else { + log_err(cd, _("Invalid or unknown boot signature for BITLK device.")); + r = -EINVAL; + goto out; + } + params->sector_size = le16_to_cpu(sig.sector_size); if (params->sector_size == 0) { log_dbg(cd, "Got sector size 0, assuming 512."); @@ -564,12 +587,12 @@ switch (le16_to_cpu(fve.encryption)) { /* AES-CBC with Elephant difuser */ case 0x8000: - params->key_size = 128; + params->key_size = 256; params->cipher = "aes"; params->cipher_mode = "cbc-elephant"; break; case 0x8001: - params->key_size = 256; + params->key_size = 512; params->cipher = "aes"; params->cipher_mode = "cbc-elephant"; break; @@ -586,12 +609,12 @@ break; /* AES-XTS */ case 0x8004: - params->key_size = 128; + params->key_size = 256; params->cipher = "aes"; params->cipher_mode = "xts-plain64"; break; case 0x8005: - params->key_size = 256; + params->key_size = 512; params->cipher = "aes"; params->cipher_mode = "xts-plain64"; break; @@ -628,7 +651,7 @@ if (read_lseek_blockwise(devfd, device_block_size(cd, device), device_alignment(device), fve_entries, fve_metadata_size - BITLK_FVE_METADATA_HEADER_LEN, - params->metadata_offset[0] + BITLK_FVE_METADATA_HEADERS_LEN) != fve_metadata_size - BITLK_FVE_METADATA_HEADER_LEN) { + params->metadata_offset[0] + BITLK_FVE_METADATA_HEADERS_LEN) != (ssize_t)(fve_metadata_size - BITLK_FVE_METADATA_HEADER_LEN)) { log_err(cd, _("Failed to read BITLK metadata entries from %s."), device_path(device)); r = -EINVAL; goto out; @@ -654,6 +677,10 @@ sizeof(entry_vmk)); vmk = malloc(sizeof(struct bitlk_vmk)); + if (!vmk) { + r = -ENOMEM; + goto out; + } memset(vmk, 0, sizeof(struct bitlk_vmk)); guid_to_string(&entry_vmk.guid, guid_buf); @@ -682,6 +709,10 @@ /* FVEK */ } else if (entry_type == BITLK_ENTRY_TYPE_FVEK) { params->fvek = malloc(sizeof(struct bitlk_fvek)); + if (!params->fvek) { + r = -ENOMEM; + goto out; + } memcpy(params->fvek->nonce, fve_entries + start + BITLK_ENTRY_HEADER_LEN, sizeof(params->fvek->nonce)); @@ -838,6 +869,120 @@ return 0; } +static int parse_external_key_entry(struct crypt_device *cd, const char *data, int start, int end, struct volume_key **vk) +{ + uint16_t key_entry_size = 0; + uint16_t key_entry_type = 0; + uint16_t key_entry_value = 0; + size_t key_size = 0; + const char *key = NULL; + + while (end - start > 2) { + /* size of this entry */ + memcpy(&key_entry_size, data + start, sizeof(key_entry_size)); + key_entry_size = le16_to_cpu(key_entry_size); + if (key_entry_size == 0) + break; + + /* type and value of this entry */ + memcpy(&key_entry_type, data + start + sizeof(key_entry_size), sizeof(key_entry_type)); + memcpy(&key_entry_value, + data + start + sizeof(key_entry_size) + sizeof(key_entry_type), + sizeof(key_entry_value)); + key_entry_type = le16_to_cpu(key_entry_type); + key_entry_value = le16_to_cpu(key_entry_value); + + /* only properties should be in this entry */ + if (key_entry_type != BITLK_ENTRY_TYPE_PROPERTY) { + log_err(cd, _("Unexpected metadata entry type '%u' found when parsing external key."), key_entry_type); + return -EINVAL; + } + + if (key_entry_value == BITLK_ENTRY_VALUE_KEY) { + key_size = key_entry_size - (BITLK_ENTRY_HEADER_LEN + 4); + key = (const char *) data + start + BITLK_ENTRY_HEADER_LEN + 4; + *vk = crypt_alloc_volume_key(key_size, key); + if (*vk == NULL) + return -ENOMEM; + return 0; + /* optional "ExternalKey" string, we can safely ignore it */ + } else if (key_entry_value == BITLK_ENTRY_VALUE_STRING) + ; + else { + log_err(cd, _("Unexpected metadata entry value '%u' found when parsing external key."), key_entry_value); + return -EINVAL; + } + + start += key_entry_size; + } + + /* if we got here we failed to parse the metadata */ + return -EINVAL; +} + +/* check if given passphrase can be a startup key (has right format) and convert it */ +static int get_startup_key(struct crypt_device *cd, + const char *password, + size_t passwordLen, + const struct bitlk_vmk *vmk, + struct volume_key **su_key) +{ + struct bitlk_bek_header bek_header = {0}; + char guid_buf[UUID_STR_LEN] = {0}; + + uint16_t key_entry_size = 0; + uint16_t key_entry_type = 0; + uint16_t key_entry_value = 0; + + if (passwordLen < BITLK_BEK_FILE_HEADER_LEN) + return -EPERM; + + memcpy(&bek_header, password, BITLK_BEK_FILE_HEADER_LEN); + + /* metadata should contain GUID of the VMK this startup key is used for */ + guid_to_string(&bek_header.guid, guid_buf); + if (strcmp(guid_buf, vmk->guid) == 0) + log_dbg(cd, "Found matching startup key for VMK %s", vmk->guid); + else + return -EPERM; + + if (bek_header.metadata_version != 1) { + log_err(cd, "Unsupported BEK metadata version %" PRIu32 "", bek_header.metadata_version); + return -ENOTSUP; + } + + if (bek_header.metadata_size != passwordLen) { + log_err(cd, "Unexpected BEK metadata size %" PRIu32 " does not match BEK file length", bek_header.metadata_size); + return -EINVAL; + } + + /* we are expecting exactly one metadata entry starting immediately after the header */ + memcpy(&key_entry_size, password + BITLK_BEK_FILE_HEADER_LEN, sizeof(key_entry_size)); + key_entry_size = le16_to_cpu(key_entry_size); + if (key_entry_size < BITLK_ENTRY_HEADER_LEN) { + log_dbg(cd, "Unexpected metadata entry size %" PRIu16 " when parsing BEK file", key_entry_size); + return -EINVAL; + } + + /* type and value of this entry */ + memcpy(&key_entry_type, password + BITLK_BEK_FILE_HEADER_LEN + sizeof(key_entry_size), sizeof(key_entry_type)); + memcpy(&key_entry_value, + password + BITLK_BEK_FILE_HEADER_LEN + sizeof(key_entry_size) + sizeof(key_entry_type), + sizeof(key_entry_value)); + key_entry_type = le16_to_cpu(key_entry_type); + key_entry_value = le16_to_cpu(key_entry_value); + + if (key_entry_type == BITLK_ENTRY_TYPE_STARTUP_KEY && key_entry_value == BITLK_ENTRY_VALUE_EXTERNAL_KEY) { + return parse_external_key_entry(cd, password, + BITLK_BEK_FILE_HEADER_LEN + BITLK_ENTRY_HEADER_LEN + BITLK_STARTUP_KEY_HEADER_LEN, + passwordLen, su_key); + } else { + log_err(cd, _("Unexpected metadata entry found when parsing startup key.")); + log_dbg(cd, "Entry type: %u, entry value: %u", key_entry_type, key_entry_value); + return -EINVAL; + } +} + static int bitlk_kdf(struct crypt_device *cd, const char *password, size_t passwordLen, @@ -939,7 +1084,7 @@ } if (is_fvek && strcmp(crypt_get_cipher_mode(cd), "cbc-elephant") == 0 && - crypt_get_volume_key_size(cd) == 16) { + crypt_get_volume_key_size(cd) == 32) { /* 128bit AES-CBC with Elephant -- key size is 256 bit (2 keys) but key data is 512 bits, data: 16B CBC key, 16B empty, 16B elephant key, 16B empty */ memcpy(outbuf + 16 + BITLK_OPEN_KEY_METADATA_LEN, @@ -1000,12 +1145,18 @@ while (next_vmk) { if (next_vmk->protection == BITLK_PROTECTION_PASSPHRASE) { r = bitlk_kdf(cd, password, passwordLen, false, next_vmk->salt, &vmk_dec_key); - if (r) - return r; + if (r) { + /* something wrong happened, but we still want to check other key slots */ + next_vmk = next_vmk->next; + continue; + } } else if (next_vmk->protection == BITLK_PROTECTION_RECOVERY_PASSPHRASE) { r = get_recovery_key(cd, password, passwordLen, &recovery_key); - if (r) - return r; + if (r) { + /* something wrong happened, but we still want to check other key slots */ + next_vmk = next_vmk->next; + continue; + } if (recovery_key == NULL) { /* r = 0 but no key -> given passphrase is not a recovery passphrase */ r = -EPERM; @@ -1018,8 +1169,15 @@ crypt_free_volume_key(recovery_key); if (r) return r; + } else if (next_vmk->protection == BITLK_PROTECTION_STARTUP_KEY) { + r = get_startup_key(cd, password, passwordLen, next_vmk, &vmk_dec_key); + if (r) { + next_vmk = next_vmk->next; + continue; + } + log_dbg(cd, "Trying to use external key found in provided password."); } else { - /* only passphrase and recovery passphrase VMKs supported right now */ + /* only passphrase, recovery passphrase and startup key VMKs supported right now */ log_dbg(cd, "Skipping %s", get_vmk_protection_string(next_vmk->protection)); next_vmk = next_vmk->next; if (r == 0) diff -Nru cryptsetup-2.3.4/lib/bitlk/bitlk.h cryptsetup-2.3.6/lib/bitlk/bitlk.h --- cryptsetup-2.3.4/lib/bitlk/bitlk.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/bitlk/bitlk.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,9 +1,9 @@ /* * BITLK (BitLocker-compatible) header definition * - * Copyright (C) 2019-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2019-2020 Milan Broz - * Copyright (C) 2019-2020 Vojtech Trefny + * Copyright (C) 2019-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2019-2021 Milan Broz + * Copyright (C) 2019-2021 Vojtech Trefny * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/argon2/argon2.c cryptsetup-2.3.6/lib/crypto_backend/argon2/argon2.c --- cryptsetup-2.3.4/lib/crypto_backend/argon2/argon2.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/argon2/argon2.c 2021-05-28 04:57:08.000000000 -0500 @@ -450,6 +450,8 @@ size_t argon2_encodedlen(uint32_t t_cost, uint32_t m_cost, uint32_t parallelism, uint32_t saltlen, uint32_t hashlen, argon2_type type) { + if (!argon2_type2string(type, 0)) + return 0; return strlen("$$v=$m=,t=,p=$$") + strlen(argon2_type2string(type, 0)) + numlen(t_cost) + numlen(m_cost) + numlen(parallelism) + b64len(saltlen) + b64len(hashlen) + numlen(ARGON2_VERSION_NUMBER) + 1; diff -Nru cryptsetup-2.3.4/lib/crypto_backend/argon2_generic.c cryptsetup-2.3.6/lib/crypto_backend/argon2_generic.c --- cryptsetup-2.3.4/lib/crypto_backend/argon2_generic.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/argon2_generic.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Argon2 PBKDF2 library wrapper * - * Copyright (C) 2016-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2016-2020 Milan Broz + * Copyright (C) 2016-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2016-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/cipher_check.c cryptsetup-2.3.6/lib/crypto_backend/cipher_check.c --- cryptsetup-2.3.4/lib/crypto_backend/cipher_check.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/cipher_check.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Cipher performance check * - * Copyright (C) 2018-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2018-2020 Milan Broz + * Copyright (C) 2018-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2018-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/cipher_generic.c cryptsetup-2.3.6/lib/crypto_backend/cipher_generic.c --- cryptsetup-2.3.4/lib/crypto_backend/cipher_generic.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/cipher_generic.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Linux kernel cipher generic utilities * - * Copyright (C) 2018-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2018-2020 Milan Broz + * Copyright (C) 2018-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2018-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_backend.h cryptsetup-2.3.6/lib/crypto_backend/crypto_backend.h --- cryptsetup-2.3.4/lib/crypto_backend/crypto_backend.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_backend.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * crypto backend implementation * - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2010-2020 Milan Broz + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_backend_internal.h cryptsetup-2.3.6/lib/crypto_backend/crypto_backend_internal.h --- cryptsetup-2.3.4/lib/crypto_backend/crypto_backend_internal.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_backend_internal.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * crypto backend implementation * - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2010-2020 Milan Broz + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_cipher_kernel.c cryptsetup-2.3.6/lib/crypto_backend/crypto_cipher_kernel.c --- cryptsetup-2.3.4/lib/crypto_backend/crypto_cipher_kernel.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_cipher_kernel.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Linux kernel userspace API crypto backend implementation (skcipher) * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -96,11 +96,14 @@ .salg_family = AF_ALG, .salg_type = "skcipher", }; + int r; if (!strcmp(name, "cipher_null")) key_length = 0; - snprintf((char *)sa.salg_name, sizeof(sa.salg_name), "%s(%s)", mode, name); + r = snprintf((char *)sa.salg_name, sizeof(sa.salg_name), "%s(%s)", mode, name); + if (r < 0 || (size_t)r >= sizeof(sa.salg_name)) + return -EINVAL; return _crypt_cipher_init(ctx, key, key_length, 0, &sa); } @@ -152,6 +155,9 @@ /* Set IV */ if (iv) { header = CMSG_NXTHDR(&msg, header); + if (!header) + return -EINVAL; + header->cmsg_level = SOL_ALG; header->cmsg_type = ALG_SET_IV; header->cmsg_len = iv_msg_size; @@ -227,7 +233,10 @@ } salg_type = aead ? "aead" : "skcipher"; - snprintf((char *)sa.salg_type, sizeof(sa.salg_type), "%s", salg_type); + r = snprintf((char *)sa.salg_type, sizeof(sa.salg_type), "%s", salg_type); + if (r < 0 || (size_t)r >= sizeof(sa.salg_name)) + return -EINVAL; + memset(tmp_salg_name, 0, sizeof(tmp_salg_name)); /* FIXME: this is duplicating a part of devmapper backend */ @@ -240,7 +249,7 @@ else r = snprintf(tmp_salg_name, sizeof(tmp_salg_name), "%s(%s)", real_mode, name); - if (r <= 0 || r > (int)(sizeof(sa.salg_name) - 1)) + if (r < 0 || (size_t)r >= sizeof(tmp_salg_name)) return -EINVAL; memcpy(sa.salg_name, tmp_salg_name, sizeof(sa.salg_name)); diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_gcrypt.c cryptsetup-2.3.6/lib/crypto_backend/crypto_gcrypt.c --- cryptsetup-2.3.4/lib/crypto_backend/crypto_gcrypt.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_gcrypt.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * GCRYPT crypto backend implementation * - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2010-2020 Milan Broz + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -51,6 +51,11 @@ } u; }; +struct hash_alg { + const char *name; + const char *gcrypt_name; +}; + /* * Test for wrong Whirlpool variant, * Ref: https://lists.gnupg.org/pipermail/gcrypt-devel/2014-January/002889.html @@ -91,6 +96,8 @@ int crypt_backend_init(void) { + int r; + if (crypto_backend_initialised) return 0; @@ -120,11 +127,12 @@ crypto_backend_initialised = 1; crypt_hash_test_whirlpool_bug(); - snprintf(version, 64, "gcrypt %s%s%s", + r = snprintf(version, sizeof(version), "gcrypt %s%s%s", gcry_check_version(NULL), crypto_backend_secmem ? "" : ", secmem disabled", - crypto_backend_whirlpool_bug > 0 ? ", flawed whirlpool" : "" - ); + crypto_backend_whirlpool_bug > 0 ? ", flawed whirlpool" : ""); + if (r < 0 || (size_t)r >= sizeof(version)) + return -EINVAL; return 0; } @@ -150,10 +158,24 @@ static const char *crypt_hash_compat_name(const char *name, unsigned int *flags) { const char *hash_name = name; + int i; + static struct hash_alg hash_algs[] = { + { "blake2b-160", "blake2b_160" }, + { "blake2b-256", "blake2b_256" }, + { "blake2b-384", "blake2b_384" }, + { "blake2b-512", "blake2b_512" }, + { "blake2s-128", "blake2s_128" }, + { "blake2s-160", "blake2s_160" }, + { "blake2s-224", "blake2s_224" }, + { "blake2s-256", "blake2s_256" }, + { NULL, NULL, }}; + + if (!name) + return NULL; /* "whirlpool_gcryptbug" is out shortcut to flawed whirlpool * in libgcrypt < 1.6.0 */ - if (name && !strcasecmp(name, "whirlpool_gcryptbug")) { + if (!strcasecmp(name, "whirlpool_gcryptbug")) { #if GCRYPT_VERSION_NUMBER >= 0x010601 if (flags) *flags |= GCRY_MD_FLAG_BUGEMU1; @@ -161,6 +183,15 @@ hash_name = "whirlpool"; } + i = 0; + while (hash_algs[i].name) { + if (!strcasecmp(name, hash_algs[i].name)) { + hash_name = hash_algs[i].gcrypt_name; + break; + } + i++; + } + return hash_name; } diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_kernel.c cryptsetup-2.3.6/lib/crypto_backend/crypto_kernel.c --- cryptsetup-2.3.4/lib/crypto_backend/crypto_kernel.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_kernel.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Linux kernel userspace API crypto backend implementation * - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2010-2020 Milan Broz + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -62,6 +62,14 @@ { "stribog256","streebog256", 32, 64 }, { "stribog512","streebog512", 64, 64 }, { "sm3", "sm3", 32, 64 }, + { "blake2b-160","blake2b-160",20, 128 }, + { "blake2b-256","blake2b-256",32, 128 }, + { "blake2b-384","blake2b-384",48, 128 }, + { "blake2b-512","blake2b-512",64, 128 }, + { "blake2s-128","blake2s-128",16, 64 }, + { "blake2s-160","blake2s-160",20, 64 }, + { "blake2s-224","blake2s-224",28, 64 }, + { "blake2s-256","blake2s-256",32, 64 }, { NULL, NULL, 0, 0 } }; @@ -118,7 +126,7 @@ .salg_type = "hash", .salg_name = "sha256", }; - int tfmfd = -1, opfd = -1; + int r, tfmfd = -1, opfd = -1; if (crypto_backend_initialised) return 0; @@ -126,15 +134,17 @@ if (uname(&uts) == -1 || strcmp(uts.sysname, "Linux")) return -EINVAL; + r = snprintf(version, sizeof(version), "%s %s kernel cryptoAPI", + uts.sysname, uts.release); + if (r < 0 || (size_t)r >= sizeof(version)) + return -EINVAL; + if (crypt_kernel_socket_init(&sa, &tfmfd, &opfd, NULL, 0) < 0) return -EINVAL; close(tfmfd); close(opfd); - snprintf(version, sizeof(version), "%s %s kernel cryptoAPI", - uts.sysname, uts.release); - crypto_backend_initialised = 1; return 0; } @@ -255,6 +265,7 @@ .salg_family = AF_ALG, .salg_type = "hash", }; + int r; h = malloc(sizeof(*h)); if (!h) @@ -267,8 +278,12 @@ } h->hash_len = ha->length; - snprintf((char *)sa.salg_name, sizeof(sa.salg_name), + r = snprintf((char *)sa.salg_name, sizeof(sa.salg_name), "hmac(%s)", ha->kernel_name); + if (r < 0 || (size_t)r >= sizeof(sa.salg_name)) { + free(h); + return -EINVAL; + } if (crypt_kernel_socket_init(&sa, &h->tfmfd, &h->opfd, key, key_length) < 0) { free(h); diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_nettle.c cryptsetup-2.3.6/lib/crypto_backend/crypto_nettle.c --- cryptsetup-2.3.4/lib/crypto_backend/crypto_nettle.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_nettle.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Nettle crypto backend implementation * - * Copyright (C) 2011-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2011-2020 Milan Broz + * Copyright (C) 2011-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2011-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_nss.c cryptsetup-2.3.6/lib/crypto_backend/crypto_nss.c --- cryptsetup-2.3.4/lib/crypto_backend/crypto_nss.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_nss.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * NSS crypto backend implementation * - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2010-2020 Milan Broz + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -77,6 +77,8 @@ int crypt_backend_init(void) { + int r; + if (crypto_backend_initialised) return 0; @@ -84,10 +86,13 @@ return -EINVAL; #if HAVE_DECL_NSS_GETVERSION - snprintf(version, 64, "NSS %s", NSS_GetVersion()); + r = snprintf(version, sizeof(version), "NSS %s", NSS_GetVersion()); #else - snprintf(version, 64, "NSS"); + r = snprintf(version, sizeof(version), "NSS"); #endif + if (r < 0 || (size_t)r >= sizeof(version)) + return -EINVAL; + crypto_backend_initialised = 1; return 0; } diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_openssl.c cryptsetup-2.3.6/lib/crypto_backend/crypto_openssl.c --- cryptsetup-2.3.4/lib/crypto_backend/crypto_openssl.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_openssl.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * OPENSSL crypto backend implementation * - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2010-2020 Milan Broz + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -63,6 +63,11 @@ } u; }; +struct hash_alg { + const char *name; + const char *openssl_name; +}; + /* * Compatible wrappers for OpenSSL < 1.1.0 and LibreSSL < 2.7.0 */ @@ -147,11 +152,36 @@ return openssl_backend_version(); } +static const char *crypt_hash_compat_name(const char *name) +{ + const char *hash_name = name; + int i; + static struct hash_alg hash_algs[] = { + { "blake2b-512", "blake2b512" }, + { "blake2s-256", "blake2s256" }, + { NULL, NULL, }}; + + if (!name) + return NULL; + + i = 0; + while (hash_algs[i].name) { + if (!strcasecmp(name, hash_algs[i].name)) { + hash_name = hash_algs[i].openssl_name; + break; + } + i++; + } + + return hash_name; +} + /* HASH */ int crypt_hash_size(const char *name) { - const EVP_MD *hash_id = EVP_get_digestbyname(name); + const EVP_MD *hash_id; + hash_id = EVP_get_digestbyname(crypt_hash_compat_name(name)); if (!hash_id) return -EINVAL; @@ -172,7 +202,7 @@ return -ENOMEM; } - h->hash_id = EVP_get_digestbyname(name); + h->hash_id = EVP_get_digestbyname(crypt_hash_compat_name(name)); if (!h->hash_id) { EVP_MD_CTX_free(h->md); free(h); @@ -257,7 +287,7 @@ return -ENOMEM; } - h->hash_id = EVP_get_digestbyname(name); + h->hash_id = EVP_get_digestbyname(crypt_hash_compat_name(name)); if (!h->hash_id) { HMAC_CTX_free(h->md); free(h); @@ -333,7 +363,7 @@ return -EINVAL; if (!strcmp(kdf, "pbkdf2")) { - hash_id = EVP_get_digestbyname(hash); + hash_id = EVP_get_digestbyname(crypt_hash_compat_name(hash)); if (!hash_id) return -EINVAL; @@ -372,7 +402,7 @@ key_bits /= 2; r = snprintf(cipher_name, sizeof(cipher_name), "%s-%d-%s", name, key_bits, mode); - if (r < 0 || r >= (int)sizeof(cipher_name)) + if (r < 0 || (size_t)r >= sizeof(cipher_name)) return -EINVAL; type = EVP_get_cipherbyname(cipher_name); diff -Nru cryptsetup-2.3.4/lib/crypto_backend/crypto_storage.c cryptsetup-2.3.6/lib/crypto_backend/crypto_storage.c --- cryptsetup-2.3.4/lib/crypto_backend/crypto_storage.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/crypto_storage.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,7 +2,7 @@ * Generic wrapper for storage encryption modes and Initial Vectors * (reimplementation of some functions from Linux dm-crypt kernel) * - * Copyright (C) 2014-2020 Milan Broz + * Copyright (C) 2014-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/pbkdf2_generic.c cryptsetup-2.3.6/lib/crypto_backend/pbkdf2_generic.c --- cryptsetup-2.3.4/lib/crypto_backend/pbkdf2_generic.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/pbkdf2_generic.c 2021-05-28 04:57:08.000000000 -0500 @@ -4,8 +4,8 @@ * Copyright (C) 2004 Free Software Foundation * * cryptsetup related changes - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/crypto_backend/pbkdf_check.c cryptsetup-2.3.6/lib/crypto_backend/pbkdf_check.c --- cryptsetup-2.3.4/lib/crypto_backend/pbkdf_check.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypto_backend/pbkdf_check.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * PBKDF performance check - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * Copyright (C) 2016-2020 Ondrej Mosnacek * * This file is free software; you can redistribute it and/or @@ -361,8 +361,10 @@ ms = time_ms(&rstart, &rend); if (ms) { PBKDF2_temp = (double)iterations * target_ms / ms; - if (PBKDF2_temp > UINT32_MAX) - return -EINVAL; + if (PBKDF2_temp > UINT32_MAX) { + r = -EINVAL; + goto out; + } *iter_secs = (uint32_t)PBKDF2_temp; } diff -Nru cryptsetup-2.3.4/lib/crypt_plain.c cryptsetup-2.3.6/lib/crypt_plain.c --- cryptsetup-2.3.4/lib/crypt_plain.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/crypt_plain.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,8 +2,8 @@ * cryptsetup plain device helper functions * * Copyright (C) 2004 Jana Saout - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2010-2020 Milan Broz + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/integrity/integrity.c cryptsetup-2.3.6/lib/integrity/integrity.c --- cryptsetup-2.3.4/lib/integrity/integrity.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/integrity/integrity.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * Integrity volume handling * - * Copyright (C) 2016-2020 Milan Broz + * Copyright (C) 2016-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -40,7 +40,7 @@ if (read_lseek_blockwise(devfd, device_block_size(cd, device), device_alignment(device), sb, sizeof(*sb), offset) != sizeof(*sb) || memcmp(sb->magic, SB_MAGIC, sizeof(sb->magic)) || - sb->version < SB_VERSION_1 || sb->version > SB_VERSION_4) { + sb->version < SB_VERSION_1 || sb->version > SB_VERSION_5) { log_std(cd, "No integrity superblock detected on %s.\n", device_path(device)); r = -EINVAL; @@ -92,14 +92,15 @@ log_std(cd, "journal_sections %u\n", sb.journal_sections); log_std(cd, "provided_data_sectors %" PRIu64 "\n", sb.provided_data_sectors); log_std(cd, "sector_size %u\n", SECTOR_SIZE << sb.log2_sectors_per_block); - if (sb.version == SB_VERSION_2 && (sb.flags & SB_FLAG_RECALCULATING)) + if (sb.version >= SB_VERSION_2 && (sb.flags & SB_FLAG_RECALCULATING)) log_std(cd, "recalc_sector %" PRIu64 "\n", sb.recalc_sector); log_std(cd, "log2_blocks_per_bitmap %u\n", sb.log2_blocks_per_bitmap_bit); - log_std(cd, "flags %s%s%s%s\n", + log_std(cd, "flags %s%s%s%s%s\n", sb.flags & SB_FLAG_HAVE_JOURNAL_MAC ? "have_journal_mac " : "", sb.flags & SB_FLAG_RECALCULATING ? "recalculating " : "", sb.flags & SB_FLAG_DIRTY_BITMAP ? "dirty_bitmap " : "", - sb.flags & SB_FLAG_FIXED_PADDING ? "fix_padding " : ""); + sb.flags & SB_FLAG_FIXED_PADDING ? "fix_padding " : "", + sb.flags & SB_FLAG_FIXED_HMAC ? "fix_hmac " : ""); return 0; } @@ -278,6 +279,15 @@ return -ENOTSUP; } + if (r < 0 && (dmd->flags & CRYPT_ACTIVATE_RECALCULATE) && + !(crypt_get_compatibility(cd) & CRYPT_COMPAT_LEGACY_INTEGRITY_RECALC) && + ((sb_flags & SB_FLAG_FIXED_HMAC) ? + (tgt->u.integrity.vk && !tgt->u.integrity.journal_integrity_key) : + (tgt->u.integrity.vk || tgt->u.integrity.journal_integrity_key))) { + log_err(cd, _("Kernel refuses to activate insecure recalculate option (see legacy activation options to override).")); + return -ENOTSUP; + } + return r; } @@ -320,7 +330,9 @@ uuid_generate(tmp_uuid_bin); uuid_unparse(tmp_uuid_bin, tmp_uuid); - snprintf(tmp_name, sizeof(tmp_name), "temporary-cryptsetup-%s", tmp_uuid); + r = snprintf(tmp_name, sizeof(tmp_name), "temporary-cryptsetup-%s", tmp_uuid); + if (r < 0 || (size_t)r >= sizeof(tmp_name)) + return -EINVAL; /* There is no data area, we can actually use fake zeroed key */ if (params && params->integrity_key_size) diff -Nru cryptsetup-2.3.4/lib/integrity/integrity.h cryptsetup-2.3.6/lib/integrity/integrity.h --- cryptsetup-2.3.4/lib/integrity/integrity.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/integrity/integrity.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * Integrity header definition * - * Copyright (C) 2016-2020 Milan Broz + * Copyright (C) 2016-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -35,11 +35,13 @@ #define SB_VERSION_2 2 #define SB_VERSION_3 3 #define SB_VERSION_4 4 +#define SB_VERSION_5 5 #define SB_FLAG_HAVE_JOURNAL_MAC (1 << 0) #define SB_FLAG_RECALCULATING (1 << 1) /* V2 only */ #define SB_FLAG_DIRTY_BITMAP (1 << 2) /* V3 only */ #define SB_FLAG_FIXED_PADDING (1 << 3) /* V4 only */ +#define SB_FLAG_FIXED_HMAC (1 << 4) /* V5 only */ struct superblock { uint8_t magic[8]; diff -Nru cryptsetup-2.3.4/lib/internal.h cryptsetup-2.3.6/lib/internal.h --- cryptsetup-2.3.4/lib/internal.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/internal.h 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -266,4 +266,12 @@ const struct crypt_dm_active_device *tgt); static inline void *crypt_zalloc(size_t size) { return calloc(1, size); } +static inline bool uint64_mult_overflow(uint64_t *u, uint64_t b, size_t size) +{ + *u = (uint64_t)b * size; + if ((uint64_t)(*u / size) != b) + return true; + return false; +} + #endif /* INTERNAL_H */ diff -Nru cryptsetup-2.3.4/lib/libcryptsetup.h cryptsetup-2.3.6/lib/libcryptsetup.h --- cryptsetup-2.3.4/lib/libcryptsetup.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/libcryptsetup.h 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -652,6 +652,10 @@ /** dm-integrity device uses less effective (legacy) padding (old kernels) */ #define CRYPT_COMPAT_LEGACY_INTEGRITY_PADDING (1 << 0) +/** dm-integrity device does not protect superblock with HMAC (old kernels) */ +#define CRYPT_COMPAT_LEGACY_INTEGRITY_HMAC (1 << 1) +/** dm-integrity allow recalculating of volumes with HMAC keys (old kernels) */ +#define CRYPT_COMPAT_LEGACY_INTEGRITY_RECALC (1 << 2) /** * Convert to new type for already existing device. @@ -1485,11 +1489,11 @@ const char *crypt_get_uuid(struct crypt_device *cd); /** - * Get path to underlaying device. + * Get path to underlying device. * * @param cd crypt device handle * - * @return path to underlaying device name + * @return path to underlying device name * */ const char *crypt_get_device_name(struct crypt_device *cd); @@ -1499,7 +1503,7 @@ * * @param cd crypt device handle * - * @return path to underlaying device name + * @return path to underlying device name * */ const char *crypt_get_metadata_device_name(struct crypt_device *cd); @@ -2295,7 +2299,7 @@ * Run data reencryption. * * @param cd crypt device handle - * @param progress is a callback funtion reporting device \b size, + * @param progress is a callback function reporting device \b size, * current \b offset of reencryption and provided \b usrptr identification * * @return @e 0 on success or negative errno value otherwise. @@ -2336,17 +2340,15 @@ * * @param size size of memory in bytes * - * @return pointer to allocate memory or @e NULL. + * @return pointer to allocated memory or @e NULL. */ void *crypt_safe_alloc(size_t size); /** - * Release safe memory, content is safely wiped + * Release safe memory, content is safely wiped. * The pointer must be allocated with @link crypt_safe_alloc @endlink * * @param data pointer to memory to be deallocated - * - * @return pointer to allocate memory or @e NULL. */ void crypt_safe_free(void *data); @@ -2356,17 +2358,15 @@ * @param data pointer to memory to be deallocated * @param size new size of memory in bytes * - * @return pointer to allocate memory or @e NULL. + * @return pointer to allocated memory or @e NULL. */ void *crypt_safe_realloc(void *data, size_t size); /** * Safe clear memory area (compile should not compile this call out). * - * @param data pointer to memory to cleared - * @param size new size of memory in bytes - * - * @return pointer to allocate memory or @e NULL. + * @param data pointer to memory to be cleared + * @param size size of memory in bytes */ void crypt_safe_memzero(void *data, size_t size); diff -Nru cryptsetup-2.3.4/lib/libdevmapper.c cryptsetup-2.3.6/lib/libdevmapper.c --- cryptsetup-2.3.4/lib/libdevmapper.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/libdevmapper.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -33,7 +33,7 @@ #ifdef HAVE_SYS_SYSMACROS_H # include /* for major, minor */ #endif - +#include #include "internal.h" #define DM_UUID_LEN 129 @@ -239,6 +239,9 @@ if (_dm_satisfies_version(1, 6, 0, integrity_maj, integrity_min, integrity_patch)) _dm_flags |= DM_INTEGRITY_DISCARDS_SUPPORTED; + if (_dm_satisfies_version(1, 7, 0, integrity_maj, integrity_min, integrity_patch)) + _dm_flags |= DM_INTEGRITY_FIX_HMAC_SUPPORTED; + _dm_integrity_checked = true; } @@ -587,9 +590,14 @@ i = sscanf(capi, "%" CLENS "[^(](%" CLENS "[^)])", mode, cipher); if (i == 2) - snprintf(dmcrypt_tmp, sizeof(dmcrypt_tmp), "%s-%s-%s", cipher, mode, iv); + i = snprintf(dmcrypt_tmp, sizeof(dmcrypt_tmp), "%s-%s-%s", cipher, mode, iv); else - snprintf(dmcrypt_tmp, sizeof(dmcrypt_tmp), "%s-%s", capi, iv); + i = snprintf(dmcrypt_tmp, sizeof(dmcrypt_tmp), "%s-%s", capi, iv); + if (i < 0 || (size_t)i >= sizeof(dmcrypt_tmp)) { + free(*org_i); + *org_i = NULL; + return -EINVAL; + } if (!(*org_c = strdup(dmcrypt_tmp))) { free(*org_i); @@ -600,11 +608,18 @@ return 0; } +static char *_uf(char *buf, size_t buf_size, const char *s, unsigned u) +{ + size_t r = snprintf(buf, buf_size, " %s:%u", s, u); + assert(r > 0 && r < buf_size); + return buf; +} + /* https://gitlab.com/cryptsetup/cryptsetup/wikis/DMCrypt */ static char *get_dm_crypt_params(const struct dm_target *tgt, uint32_t flags) { int r, max_size, null_cipher = 0, num_options = 0, keystr_len = 0; - char *params, *hexkey; + char *params = NULL, *hexkey = NULL; char sector_feature[32], features[512], integrity_dm[256], cipher_dm[256]; if (!tgt) @@ -629,45 +644,45 @@ num_options++; if (tgt->u.crypt.integrity) num_options++; - - if (tgt->u.crypt.sector_size != SECTOR_SIZE) { + if (tgt->u.crypt.sector_size != SECTOR_SIZE) num_options++; - snprintf(sector_feature, sizeof(sector_feature), " sector_size:%u", tgt->u.crypt.sector_size); - } else - *sector_feature = '\0'; - if (num_options) { - snprintf(features, sizeof(features)-1, " %d%s%s%s%s%s%s%s%s", num_options, + if (num_options) { /* MAX length int32 + 15 + 15 + 23 + 18 + 19 + 17 + 13 + int32 + integrity_str */ + r = snprintf(features, sizeof(features), " %d%s%s%s%s%s%s%s%s", num_options, (flags & CRYPT_ACTIVATE_ALLOW_DISCARDS) ? " allow_discards" : "", (flags & CRYPT_ACTIVATE_SAME_CPU_CRYPT) ? " same_cpu_crypt" : "", (flags & CRYPT_ACTIVATE_SUBMIT_FROM_CRYPT_CPUS) ? " submit_from_crypt_cpus" : "", (flags & CRYPT_ACTIVATE_NO_READ_WORKQUEUE) ? " no_read_workqueue" : "", (flags & CRYPT_ACTIVATE_NO_WRITE_WORKQUEUE) ? " no_write_workqueue" : "", (flags & CRYPT_ACTIVATE_IV_LARGE_SECTORS) ? " iv_large_sectors" : "", - sector_feature, integrity_dm); + (tgt->u.crypt.sector_size != SECTOR_SIZE) ? + _uf(sector_feature, sizeof(sector_feature), "sector_size", tgt->u.crypt.sector_size) : "", + integrity_dm); + if (r < 0 || (size_t)r >= sizeof(features)) + goto out; } else *features = '\0'; - if (!strncmp(cipher_dm, "cipher_null-", 12)) + if (crypt_is_cipher_null(cipher_dm)) null_cipher = 1; - if (flags & CRYPT_ACTIVATE_KEYRING_KEY) { + if (null_cipher) + hexkey = crypt_safe_alloc(2); + else if (flags & CRYPT_ACTIVATE_KEYRING_KEY) { keystr_len = strlen(tgt->u.crypt.vk->key_description) + int_log10(tgt->u.crypt.vk->keylength) + 10; hexkey = crypt_safe_alloc(keystr_len); } else - hexkey = crypt_safe_alloc(null_cipher ? 2 : (tgt->u.crypt.vk->keylength * 2 + 1)); + hexkey = crypt_safe_alloc(tgt->u.crypt.vk->keylength * 2 + 1); if (!hexkey) - return NULL; + goto out; if (null_cipher) strncpy(hexkey, "-", 2); else if (flags & CRYPT_ACTIVATE_KEYRING_KEY) { r = snprintf(hexkey, keystr_len, ":%zu:logon:%s", tgt->u.crypt.vk->keylength, tgt->u.crypt.vk->key_description); - if (r < 0 || r >= keystr_len) { - params = NULL; + if (r < 0 || r >= keystr_len) goto out; - } } else hex_key(hexkey, tgt->u.crypt.vk->keylength, tgt->u.crypt.vk->key); @@ -694,10 +709,10 @@ /* https://gitlab.com/cryptsetup/cryptsetup/wikis/DMVerity */ static char *get_dm_verity_params(const struct dm_target *tgt, uint32_t flags) { - int max_size, r, num_options = 0; + int max_size, max_fec_size, max_verify_size, r, num_options = 0; struct crypt_params_verity *vp; char *params = NULL, *hexroot = NULL, *hexsalt = NULL; - char features[256], fec_features[256], verity_verify_args[512+32]; + char features[256], *fec_features = NULL, *verity_verify_args = NULL; if (!tgt || !tgt->u.verity.vp) return NULL; @@ -723,30 +738,45 @@ if (flags & CRYPT_ACTIVATE_CHECK_AT_MOST_ONCE) num_options++; - if (tgt->u.verity.fec_device) { + max_fec_size = (tgt->u.verity.fec_device ? strlen(device_block_path(tgt->u.verity.fec_device)) : 0) + 256; + fec_features = crypt_safe_alloc(max_fec_size); + if (!fec_features) + goto out; + + if (tgt->u.verity.fec_device) { /* MAX length 21 + path + 11 + int64 + 12 + int64 + 11 + int32 */ num_options += 8; - snprintf(fec_features, sizeof(fec_features)-1, + r = snprintf(fec_features, max_fec_size, " use_fec_from_device %s fec_start %" PRIu64 " fec_blocks %" PRIu64 " fec_roots %" PRIu32, device_block_path(tgt->u.verity.fec_device), tgt->u.verity.fec_offset, - vp->data_size + tgt->u.verity.hash_blocks, vp->fec_roots); + tgt->u.verity.fec_blocks, vp->fec_roots); + if (r < 0 || r >= max_fec_size) + goto out; } else *fec_features = '\0'; - if (tgt->u.verity.root_hash_sig_key_desc) { + max_verify_size = (tgt->u.verity.root_hash_sig_key_desc ? strlen(tgt->u.verity.root_hash_sig_key_desc) : 0) + 32; + verity_verify_args = crypt_safe_alloc(max_verify_size); + if (!verity_verify_args) + goto out; + if (tgt->u.verity.root_hash_sig_key_desc) { /* MAX length 24 + key_str */ num_options += 2; - snprintf(verity_verify_args, sizeof(verity_verify_args)-1, + r = snprintf(verity_verify_args, max_verify_size, " root_hash_sig_key_desc %s", tgt->u.verity.root_hash_sig_key_desc); + if (r < 0 || r >= max_verify_size) + goto out; } else *verity_verify_args = '\0'; - if (num_options) - snprintf(features, sizeof(features)-1, " %d%s%s%s%s%s", num_options, + if (num_options) { /* MAX length int32 + 18 + 22 + 20 + 19 + 19 */ + r = snprintf(features, sizeof(features), " %d%s%s%s%s%s", num_options, (flags & CRYPT_ACTIVATE_IGNORE_CORRUPTION) ? " ignore_corruption" : "", (flags & CRYPT_ACTIVATE_RESTART_ON_CORRUPTION) ? " restart_on_corruption" : "", (flags & CRYPT_ACTIVATE_PANIC_ON_CORRUPTION) ? " panic_on_corruption" : "", (flags & CRYPT_ACTIVATE_IGNORE_ZERO_BLOCKS) ? " ignore_zero_blocks" : "", (flags & CRYPT_ACTIVATE_CHECK_AT_MOST_ONCE) ? " check_at_most_once" : ""); - else + if (r < 0 || (size_t)r >= sizeof(features)) + goto out; + } else *features = '\0'; hexroot = crypt_safe_alloc(tgt->u.verity.root_hash_size * 2 + 1); @@ -780,12 +810,13 @@ vp->data_size, tgt->u.verity.hash_offset, vp->hash_name, hexroot, hexsalt, features, fec_features, verity_verify_args); - if (r < 0 || r >= max_size) { crypt_safe_free(params); params = NULL; } out: + crypt_safe_free(fec_features); + crypt_safe_free(verity_verify_args); crypt_safe_free(hexroot); crypt_safe_free(hexsalt); return params; @@ -793,149 +824,143 @@ static char *get_dm_integrity_params(const struct dm_target *tgt, uint32_t flags) { - int r, max_size, num_options = 0; - char *params, *hexkey, mode; - char features[512], feature[256]; + int r, max_size, max_integrity, max_journal_integrity, max_journal_crypt, num_options = 0; + char *params_out = NULL, *params, *hexkey, mode, feature[6][32]; + char *features, *integrity, *journal_integrity, *journal_crypt; if (!tgt) return NULL; + max_integrity = (tgt->u.integrity.integrity && tgt->u.integrity.vk ? tgt->u.integrity.vk->keylength * 2 : 0) + + (tgt->u.integrity.integrity ? strlen(tgt->u.integrity.integrity) : 0) + 32; + max_journal_integrity = (tgt->u.integrity.journal_integrity && tgt->u.integrity.journal_integrity_key ? + tgt->u.integrity.journal_integrity_key->keylength * 2 : 0) + + (tgt->u.integrity.journal_integrity ? strlen(tgt->u.integrity.journal_integrity) : 0) + 32; + max_journal_crypt = (tgt->u.integrity.journal_crypt && tgt->u.integrity.journal_crypt_key ? + tgt->u.integrity.journal_crypt_key->keylength * 2 : 0) + + (tgt->u.integrity.journal_crypt ? strlen(tgt->u.integrity.journal_crypt) : 0) + 32; max_size = strlen(device_block_path(tgt->data_device)) + - (tgt->u.integrity.meta_device ? strlen(device_block_path(tgt->u.integrity.meta_device)) : 0) + - (tgt->u.integrity.vk ? tgt->u.integrity.vk->keylength * 2 : 0) + - (tgt->u.integrity.journal_integrity_key ? tgt->u.integrity.journal_integrity_key->keylength * 2 : 0) + - (tgt->u.integrity.journal_crypt_key ? tgt->u.integrity.journal_crypt_key->keylength * 2 : 0) + - (tgt->u.integrity.integrity ? strlen(tgt->u.integrity.integrity) : 0) + - (tgt->u.integrity.journal_integrity ? strlen(tgt->u.integrity.journal_integrity) : 0) + - (tgt->u.integrity.journal_crypt ? strlen(tgt->u.integrity.journal_crypt) : 0) + 128; + (tgt->u.integrity.meta_device ? strlen(device_block_path(tgt->u.integrity.meta_device)) : 0) + + max_integrity + max_journal_integrity + max_journal_crypt + 512; params = crypt_safe_alloc(max_size); - if (!params) - return NULL; + features = crypt_safe_alloc(max_size); + integrity = crypt_safe_alloc(max_integrity); + journal_integrity = crypt_safe_alloc(max_journal_integrity); + journal_crypt = crypt_safe_alloc(max_journal_crypt); + if (!params || !features || !integrity || !journal_integrity || !journal_crypt) + goto out; - *features = '\0'; - if (tgt->u.integrity.journal_size) { - num_options++; - snprintf(feature, sizeof(feature), "journal_sectors:%u ", - (unsigned)(tgt->u.integrity.journal_size / SECTOR_SIZE)); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } - if (tgt->u.integrity.journal_watermark) { - num_options++; - snprintf(feature, sizeof(feature), - /* bitmap overloaded values */ - (flags & CRYPT_ACTIVATE_NO_JOURNAL_BITMAP) ? "sectors_per_bit:%u " : "journal_watermark:%u ", - tgt->u.integrity.journal_watermark); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } - if (tgt->u.integrity.journal_commit_time) { - num_options++; - snprintf(feature, sizeof(feature), - /* bitmap overloaded values */ - (flags & CRYPT_ACTIVATE_NO_JOURNAL_BITMAP) ? "bitmap_flush_interval:%u " : "commit_time:%u ", - tgt->u.integrity.journal_commit_time); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } - if (tgt->u.integrity.interleave_sectors) { - num_options++; - snprintf(feature, sizeof(feature), "interleave_sectors:%u ", - tgt->u.integrity.interleave_sectors); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } - if (tgt->u.integrity.sector_size) { - num_options++; - snprintf(feature, sizeof(feature), "block_size:%u ", - tgt->u.integrity.sector_size); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } - if (tgt->u.integrity.buffer_sectors) { - num_options++; - snprintf(feature, sizeof(feature), "buffer_sectors:%u ", - tgt->u.integrity.buffer_sectors); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } - if (tgt->u.integrity.integrity) { + if (tgt->u.integrity.integrity) { /* MAX length 16 + str_integrity + str_key */ num_options++; if (tgt->u.integrity.vk) { hexkey = crypt_safe_alloc(tgt->u.integrity.vk->keylength * 2 + 1); - if (!hexkey) { - crypt_safe_free(params); - return NULL; - } + if (!hexkey) + goto out; hex_key(hexkey, tgt->u.integrity.vk->keylength, tgt->u.integrity.vk->key); } else hexkey = NULL; - snprintf(feature, sizeof(feature), "internal_hash:%s%s%s ", + r = snprintf(integrity, max_integrity, " internal_hash:%s%s%s", tgt->u.integrity.integrity, hexkey ? ":" : "", hexkey ?: ""); - strncat(features, feature, sizeof(features) - strlen(features) - 1); crypt_safe_free(hexkey); + if (r < 0 || r >= max_integrity) + goto out; } - if (tgt->u.integrity.journal_integrity) { + if (tgt->u.integrity.journal_integrity) { /* MAX length 14 + str_journal_integrity + str_key */ num_options++; if (tgt->u.integrity.journal_integrity_key) { hexkey = crypt_safe_alloc(tgt->u.integrity.journal_integrity_key->keylength * 2 + 1); - if (!hexkey) { - crypt_safe_free(params); - return NULL; - } + if (!hexkey) + goto out; hex_key(hexkey, tgt->u.integrity.journal_integrity_key->keylength, tgt->u.integrity.journal_integrity_key->key); } else hexkey = NULL; - snprintf(feature, sizeof(feature), "journal_mac:%s%s%s ", + r = snprintf(journal_integrity, max_journal_integrity, " journal_mac:%s%s%s", tgt->u.integrity.journal_integrity, hexkey ? ":" : "", hexkey ?: ""); - strncat(features, feature, sizeof(features) - strlen(features) - 1); crypt_safe_free(hexkey); + if (r < 0 || r >= max_journal_integrity) + goto out; } - if (tgt->u.integrity.journal_crypt) { + if (tgt->u.integrity.journal_crypt) { /* MAX length 15 + str_journal_crypt + str_key */ num_options++; if (tgt->u.integrity.journal_crypt_key) { hexkey = crypt_safe_alloc(tgt->u.integrity.journal_crypt_key->keylength * 2 + 1); - if (!hexkey) { - crypt_safe_free(params); - return NULL; - } + if (!hexkey) + goto out; hex_key(hexkey, tgt->u.integrity.journal_crypt_key->keylength, tgt->u.integrity.journal_crypt_key->key); } else hexkey = NULL; - snprintf(feature, sizeof(feature), "journal_crypt:%s%s%s ", + r = snprintf(journal_crypt, max_journal_crypt, " journal_crypt:%s%s%s", tgt->u.integrity.journal_crypt, hexkey ? ":" : "", hexkey ?: ""); - strncat(features, feature, sizeof(features) - strlen(features) - 1); crypt_safe_free(hexkey); - } - if (tgt->u.integrity.fix_padding) { - num_options++; - snprintf(feature, sizeof(feature), "fix_padding "); - strncat(features, feature, sizeof(features) - strlen(features) - 1); + if (r < 0 || r >= max_journal_crypt) + goto out; } - if (flags & CRYPT_ACTIVATE_RECALCULATE) { + if (tgt->u.integrity.journal_size) num_options++; - snprintf(feature, sizeof(feature), "recalculate "); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } - - if (flags & CRYPT_ACTIVATE_ALLOW_DISCARDS) { + if (tgt->u.integrity.journal_watermark) num_options++; - snprintf(feature, sizeof(feature), "allow_discards "); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } - - if (tgt->u.integrity.meta_device) { + if (tgt->u.integrity.journal_commit_time) + num_options++; + if (tgt->u.integrity.interleave_sectors) + num_options++; + if (tgt->u.integrity.sector_size) + num_options++; + if (tgt->u.integrity.buffer_sectors) + num_options++; + if (tgt->u.integrity.fix_padding) + num_options++; + if (tgt->u.integrity.fix_hmac) + num_options++; + if (tgt->u.integrity.legacy_recalc) + num_options++; + if (tgt->u.integrity.meta_device) + num_options++; + if (flags & CRYPT_ACTIVATE_RECALCULATE) + num_options++; + if (flags & CRYPT_ACTIVATE_ALLOW_DISCARDS) num_options++; - snprintf(feature, sizeof(feature), "meta_device:%s ", - device_block_path(tgt->u.integrity.meta_device)); - strncat(features, feature, sizeof(features) - strlen(features) - 1); - } + + r = snprintf(features, max_size, "%d%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s", num_options, + tgt->u.integrity.journal_size ? _uf(feature[0], sizeof(feature[0]), /* MAX length 17 + int32 */ + "journal_sectors", (unsigned)(tgt->u.integrity.journal_size / SECTOR_SIZE)) : "", + tgt->u.integrity.journal_watermark ? _uf(feature[1], sizeof(feature[1]), /* MAX length 19 + int32 */ + /* bitmap overloaded values */ + (flags & CRYPT_ACTIVATE_NO_JOURNAL_BITMAP) ? "sectors_per_bit" : "journal_watermark", + tgt->u.integrity.journal_watermark) : "", + tgt->u.integrity.journal_commit_time ? _uf(feature[2], sizeof(feature[2]), /* MAX length 23 + int32 */ + /* bitmap overloaded values */ + (flags & CRYPT_ACTIVATE_NO_JOURNAL_BITMAP) ? "bitmap_flush_interval" : "commit_time", + tgt->u.integrity.journal_commit_time) : "", + tgt->u.integrity.interleave_sectors ? _uf(feature[3], sizeof(feature[3]), /* MAX length 20 + int32 */ + "interleave_sectors", tgt->u.integrity.interleave_sectors) : "", + tgt->u.integrity.sector_size ? _uf(feature[4], sizeof(feature[4]), /* MAX length 12 + int32 */ + "block_size", tgt->u.integrity.sector_size) : "", + tgt->u.integrity.buffer_sectors ? _uf(feature[5], sizeof(feature[5]), /* MAX length 16 + int32 */ + "buffer_sectors", tgt->u.integrity.buffer_sectors) : "", + tgt->u.integrity.integrity ? integrity : "", + tgt->u.integrity.journal_integrity ? journal_integrity : "", + tgt->u.integrity.journal_crypt ? journal_crypt : "", + tgt->u.integrity.fix_padding ? " fix_padding" : "", /* MAX length 12 */ + tgt->u.integrity.fix_hmac ? " fix_hmac" : "", /* MAX length 9 */ + tgt->u.integrity.legacy_recalc ? " legacy_recalculate" : "", /* MAX length 19 */ + flags & CRYPT_ACTIVATE_RECALCULATE ? " recalculate" : "", /* MAX length 12 */ + flags & CRYPT_ACTIVATE_ALLOW_DISCARDS ? " allow_discards" : "", /* MAX length 15 */ + tgt->u.integrity.meta_device ? " meta_device:" : "", /* MAX length 13 + str_device */ + tgt->u.integrity.meta_device ? device_block_path(tgt->u.integrity.meta_device) : ""); + if (r < 0 || r >= max_size) + goto out; if (flags & CRYPT_ACTIVATE_NO_JOURNAL_BITMAP) mode = 'B'; @@ -946,16 +971,22 @@ else mode = 'J'; - r = snprintf(params, max_size, "%s %" PRIu64 " %d %c %d %s", + r = snprintf(params, max_size, "%s %" PRIu64 " %d %c %s", device_block_path(tgt->data_device), tgt->u.integrity.offset, - tgt->u.integrity.tag_size, mode, - num_options, *features ? features : ""); - if (r < 0 || r >= max_size) { + tgt->u.integrity.tag_size, mode, features); + if (r < 0 || r >= max_size) + goto out; + + params_out = params; +out: + crypt_safe_free(features); + crypt_safe_free(integrity); + crypt_safe_free(journal_integrity); + crypt_safe_free(journal_crypt); + if (!params_out) crypt_safe_free(params); - params = NULL; - } - return params; + return params_out; } static char *get_dm_linear_params(const struct dm_target *tgt, uint32_t flags) @@ -1190,7 +1221,7 @@ { char *ptr, uuid2[UUID_LEN] = {0}; uuid_t uu; - unsigned i = 0; + int i = 0; /* Remove '-' chars */ if (uuid) { @@ -1210,9 +1241,11 @@ type ?: "", type ? "-" : "", uuid2[0] ? uuid2 : "", uuid2[0] ? "-" : "", name); + if (i < 0) + return 0; log_dbg(cd, "DM-UUID is %s", buf); - if (i >= buflen) + if ((size_t)i >= buflen) log_err(cd, _("DM-UUID for device %s was truncated."), name); return 1; @@ -1654,6 +1687,14 @@ r = _dm_create_device(cd, name, type, dmd->uuid, dmd); } + /* + * Print warning if activating dm-crypt cipher_null device unless it's reencryption helper or + * keyslot encryption helper device (LUKS1 cipher_null devices). + */ + if (!r && !(dmd->flags & CRYPT_ACTIVATE_PRIVATE) && single_segment(dmd) && dmd->segment.type == DM_CRYPT && + crypt_is_cipher_null(dmd->segment.u.crypt.cipher)) + log_dbg(cd, "Activated dm-crypt device with cipher_null. Device is not encrypted."); + if (r == -EINVAL && dmd->flags & (CRYPT_ACTIVATE_SAME_CPU_CRYPT|CRYPT_ACTIVATE_SUBMIT_FROM_CRYPT_CPUS) && !(dmt_flags & (DM_SAME_CPU_CRYPT_SUPPORTED|DM_SUBMIT_FROM_CRYPT_CPUS_SUPPORTED))) @@ -2269,8 +2310,13 @@ str = strsep(¶ms, " "); if (!str) goto err; - if (!root_hash_sig_key_desc) + if (!root_hash_sig_key_desc) { root_hash_sig_key_desc = strdup(str); + if (!root_hash_sig_key_desc) { + r = -ENOMEM; + goto err; + } + } i++; if (vp) vp->flags |= CRYPT_VERITY_ROOT_HASH_SIGNATURE; @@ -2474,6 +2520,10 @@ *act_flags |= CRYPT_ACTIVATE_RECALCULATE; } else if (!strcmp(arg, "fix_padding")) { tgt->u.integrity.fix_padding = true; + } else if (!strcmp(arg, "fix_hmac")) { + tgt->u.integrity.fix_hmac = true; + } else if (!strcmp(arg, "legacy_recalculate")) { + tgt->u.integrity.legacy_recalc = true; } else if (!strcmp(arg, "allow_discards")) { *act_flags |= CRYPT_ACTIVATE_ALLOW_DISCARDS; } else /* unknown option */ @@ -2913,7 +2963,9 @@ if (!(dmt_flags & DM_KEY_WIPE_SUPPORTED)) goto out; - if (vk->key_description) + if (!vk->keylength) + msg_size = 11; // key set - + else if (vk->key_description) msg_size = strlen(vk->key_description) + int_log10(vk->keylength) + 18; else msg_size = vk->keylength * 2 + 10; // key set @@ -2925,7 +2977,9 @@ } strcpy(msg, "key set "); - if (vk->key_description) + if (!vk->keylength) + snprintf(msg + 8, msg_size - 8, "-"); + else if (vk->key_description) snprintf(msg + 8, msg_size - 8, ":%zu:logon:%s", vk->keylength, vk->key_description); else hex_key(&msg[8], vk->keylength, vk->key); @@ -3000,8 +3054,8 @@ int dm_verity_target_set(struct dm_target *tgt, uint64_t seg_offset, uint64_t seg_size, struct device *data_device, struct device *hash_device, struct device *fec_device, - const char *root_hash, uint32_t root_hash_size, const char *root_hash_sig_key_desc, - uint64_t hash_offset_block, uint64_t hash_blocks, struct crypt_params_verity *vp) + const char *root_hash, uint32_t root_hash_size, const char* root_hash_sig_key_desc, + uint64_t hash_offset_block, uint64_t fec_blocks, struct crypt_params_verity *vp) { if (!data_device || !hash_device || !vp) return -EINVAL; @@ -3019,7 +3073,7 @@ tgt->u.verity.root_hash_sig_key_desc = root_hash_sig_key_desc; tgt->u.verity.hash_offset = hash_offset_block; tgt->u.verity.fec_offset = vp->fec_area_offset / vp->hash_block_size; - tgt->u.verity.hash_blocks = hash_blocks; + tgt->u.verity.fec_blocks = fec_blocks; tgt->u.verity.vp = vp; return 0; @@ -3060,6 +3114,15 @@ !(crypt_get_compatibility(cd) & CRYPT_COMPAT_LEGACY_INTEGRITY_PADDING)) tgt->u.integrity.fix_padding = true; + if (!dm_flags(cd, DM_INTEGRITY, &dmi_flags) && + (dmi_flags & DM_INTEGRITY_FIX_HMAC_SUPPORTED) && + !(crypt_get_compatibility(cd) & CRYPT_COMPAT_LEGACY_INTEGRITY_HMAC)) + tgt->u.integrity.fix_hmac = true; + + /* This flag can be backported, just try to set it always */ + if (crypt_get_compatibility(cd) & CRYPT_COMPAT_LEGACY_INTEGRITY_RECALC) + tgt->u.integrity.legacy_recalc = true; + if (ip) { tgt->u.integrity.journal_size = ip->journal_size; tgt->u.integrity.journal_watermark = ip->journal_watermark; diff -Nru cryptsetup-2.3.4/lib/loopaes/loopaes.c cryptsetup-2.3.6/lib/loopaes/loopaes.c --- cryptsetup-2.3.4/lib/loopaes/loopaes.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/loopaes/loopaes.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * loop-AES compatible volume handling * - * Copyright (C) 2011-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2011-2020 Milan Broz + * Copyright (C) 2011-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2011-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/loopaes/loopaes.h cryptsetup-2.3.6/lib/loopaes/loopaes.h --- cryptsetup-2.3.4/lib/loopaes/loopaes.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/loopaes/loopaes.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * loop-AES compatible volume handling * - * Copyright (C) 2011-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2011-2020 Milan Broz + * Copyright (C) 2011-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2011-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/luks1/af.c cryptsetup-2.3.6/lib/luks1/af.c --- cryptsetup-2.3.4/lib/luks1/af.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks1/af.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,7 +2,7 @@ * AFsplitter - Anti forensic information splitter * * Copyright (C) 2004 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. * * AFsplitter diffuses information over a large stripe of data, * therefore supporting secure data destruction. diff -Nru cryptsetup-2.3.4/lib/luks1/af.h cryptsetup-2.3.6/lib/luks1/af.h --- cryptsetup-2.3.4/lib/luks1/af.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks1/af.h 2021-05-28 04:57:08.000000000 -0500 @@ -2,7 +2,7 @@ * AFsplitter - Anti forensic information splitter * * Copyright (C) 2004 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. * * AFsplitter diffuses information over a large stripe of data, * therefore supporting secure data destruction. diff -Nru cryptsetup-2.3.4/lib/luks1/keyencryption.c cryptsetup-2.3.6/lib/luks1/keyencryption.c --- cryptsetup-2.3.4/lib/luks1/keyencryption.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks1/keyencryption.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,8 +2,8 @@ * LUKS - Linux Unified Key Setup * * Copyright (C) 2004-2006 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks1/keymanage.c cryptsetup-2.3.6/lib/luks1/keymanage.c --- cryptsetup-2.3.4/lib/luks1/keymanage.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks1/keymanage.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,8 +2,8 @@ * LUKS - Linux Unified Key Setup * * Copyright (C) 2004-2006 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2013-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2013-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -375,8 +375,13 @@ log_err(ctx, _("Non standard key size, manual repair required.")); return -EINVAL; } - /* cryptsetup 1.0 did not align to 4k, cannot repair this one */ - if (LUKS_keyslots_offset(phdr) < (LUKS_ALIGN_KEYSLOTS / SECTOR_SIZE)) { + + /* + * cryptsetup 1.0 did not align keyslots to 4k, cannot repair this one + * Also we cannot trust possibly broken keyslots metadata here through LUKS_keyslots_offset(). + * Expect first keyslot is aligned, if not, then manual repair is neccessary. + */ + if (phdr->keyblock[0].keyMaterialOffset < (LUKS_ALIGN_KEYSLOTS / SECTOR_SIZE)) { log_err(ctx, _("Non standard keyslots alignment, manual repair required.")); return -EINVAL; } @@ -386,6 +391,8 @@ return -EINVAL; vk = crypt_alloc_volume_key(phdr->keyBytes, NULL); + if (!vk) + return -ENOMEM; log_verbose(ctx, _("Repairing keyslots.")); @@ -955,12 +962,12 @@ const char *password, size_t passwordLen, struct luks_phdr *hdr, - struct volume_key *vk, + struct volume_key **vk, struct crypt_device *ctx) { crypt_keyslot_info ki = LUKS_keyslot_info(hdr, keyIndex); struct volume_key *derived_key; - char *AfKey; + char *AfKey = NULL; size_t AFEKSize; int r; @@ -974,8 +981,13 @@ if (!derived_key) return -ENOMEM; - assert(vk->keylength == hdr->keyBytes); - AFEKSize = AF_split_sectors(vk->keylength, hdr->keyblock[keyIndex].stripes) * SECTOR_SIZE; + *vk = crypt_alloc_volume_key(hdr->keyBytes, NULL); + if (!*vk) { + r = -ENOMEM; + goto out; + } + + AFEKSize = AF_split_sectors(hdr->keyBytes, hdr->keyblock[keyIndex].stripes) * SECTOR_SIZE; AfKey = crypt_safe_alloc(AFEKSize); if (!AfKey) { r = -ENOMEM; @@ -1001,16 +1013,20 @@ if (r < 0) goto out; - r = AF_merge(ctx, AfKey, vk->key, vk->keylength, hdr->keyblock[keyIndex].stripes, hdr->hashSpec); + r = AF_merge(ctx, AfKey, (*vk)->key, (*vk)->keylength, hdr->keyblock[keyIndex].stripes, hdr->hashSpec); if (r < 0) goto out; - r = LUKS_verify_volume_key(hdr, vk); + r = LUKS_verify_volume_key(hdr, *vk); /* Allow only empty passphrase with null cipher */ - if (!r && !strcmp(hdr->cipherName, "cipher_null") && passwordLen) + if (!r && crypt_is_cipher_null(hdr->cipherName) && passwordLen) r = -EPERM; out: + if (r < 0) { + crypt_free_volume_key(*vk); + *vk = NULL; + } crypt_safe_free(AfKey); crypt_free_volume_key(derived_key); return r; @@ -1026,16 +1042,14 @@ unsigned int i, tried = 0; int r; - *vk = crypt_alloc_volume_key(hdr->keyBytes, NULL); - if (keyIndex >= 0) { - r = LUKS_open_key(keyIndex, password, passwordLen, hdr, *vk, ctx); + r = LUKS_open_key(keyIndex, password, passwordLen, hdr, vk, ctx); return (r < 0) ? r : keyIndex; } for (i = 0; i < LUKS_NUMKEYS; i++) { - r = LUKS_open_key(i, password, passwordLen, hdr, *vk, ctx); - if(r == 0) + r = LUKS_open_key(i, password, passwordLen, hdr, vk, ctx); + if (r == 0) return i; /* Do not retry for errors that are no -EPERM or -ENOENT, diff -Nru cryptsetup-2.3.4/lib/luks1/luks.h cryptsetup-2.3.6/lib/luks1/luks.h --- cryptsetup-2.3.4/lib/luks1/luks.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks1/luks.h 2021-05-28 04:57:08.000000000 -0500 @@ -2,7 +2,7 @@ * LUKS - Linux Unified Key Setup * * Copyright (C) 2004-2006 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_digest.c cryptsetup-2.3.6/lib/luks2/luks2_digest.c --- cryptsetup-2.3.4/lib/luks2/luks2_digest.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_digest.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, digest handling * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -219,7 +219,9 @@ if (!jobj_digest_keyslots) return -EINVAL; - snprintf(num, sizeof(num), "%d", keyslot); + if (snprintf(num, sizeof(num), "%d", keyslot) < 0) + return -EINVAL; + if (assign) { jobj1 = LUKS2_array_jobj(jobj_digest_keyslots, num); if (!jobj1) @@ -304,7 +306,9 @@ if (!jobj_digest_segments) return -EINVAL; - snprintf(num, sizeof(num), "%d", segment); + if (snprintf(num, sizeof(num), "%d", segment) < 0) + return -EINVAL; + if (assign) { jobj1 = LUKS2_array_jobj(jobj_digest_segments, num); if (!jobj1) diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_digest_pbkdf2.c cryptsetup-2.3.6/lib/luks2/luks2_digest_pbkdf2.c --- cryptsetup-2.3.4/lib/luks2/luks2_digest_pbkdf2.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_digest_pbkdf2.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, PBKDF2 digest handler (LUKS1 compatible) * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_disk_metadata.c cryptsetup-2.3.6/lib/luks2/luks2_disk_metadata.c --- cryptsetup-2.3.4/lib/luks2/luks2_disk_metadata.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_disk_metadata.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2 * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -175,13 +175,13 @@ hdr_disk->hdr_offset = cpu_to_be64(offset); hdr_disk->seqid = cpu_to_be64(hdr->seqid); - strncpy(hdr_disk->label, hdr->label, LUKS2_LABEL_L); + memcpy(hdr_disk->label, hdr->label, MIN(strlen(hdr->label), LUKS2_LABEL_L)); hdr_disk->label[LUKS2_LABEL_L - 1] = '\0'; - strncpy(hdr_disk->subsystem, hdr->subsystem, LUKS2_LABEL_L); + memcpy(hdr_disk->subsystem, hdr->subsystem, MIN(strlen(hdr->subsystem), LUKS2_LABEL_L)); hdr_disk->subsystem[LUKS2_LABEL_L - 1] = '\0'; - strncpy(hdr_disk->checksum_alg, hdr->checksum_alg, LUKS2_CHECKSUM_ALG_L); + memcpy(hdr_disk->checksum_alg, hdr->checksum_alg, MIN(strlen(hdr->checksum_alg), LUKS2_CHECKSUM_ALG_L)); hdr_disk->checksum_alg[LUKS2_CHECKSUM_ALG_L - 1] = '\0'; - strncpy(hdr_disk->uuid, hdr->uuid, LUKS2_UUID_L); + memcpy(hdr_disk->uuid, hdr->uuid, MIN(strlen(hdr->uuid), LUKS2_UUID_L)); hdr_disk->uuid[LUKS2_UUID_L - 1] = '\0'; memcpy(hdr_disk->salt, secondary ? hdr->salt2 : hdr->salt1, LUKS2_SALT_L); diff -Nru cryptsetup-2.3.4/lib/luks2/luks2.h cryptsetup-2.3.6/lib/luks2/luks2.h --- cryptsetup-2.3.4/lib/luks2/luks2.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2 * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -23,6 +23,8 @@ #define _CRYPTSETUP_LUKS2_ONDISK_H #include +#include +#include #include "libcryptsetup.h" @@ -330,6 +332,12 @@ int keyslot, int token); +int LUKS2_token_assignment_copy(struct crypt_device *cd, + struct luks2_hdr *hdr, + int keyslot_from, + int keyslot_to, + int commit); + int LUKS2_token_create(struct crypt_device *cd, struct luks2_hdr *hdr, int token, diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_internal.h cryptsetup-2.3.6/lib/luks2/luks2_internal.h --- cryptsetup-2.3.4/lib/luks2/luks2_internal.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_internal.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2 * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_json_format.c cryptsetup-2.3.6/lib/luks2/luks2_json_format.c --- cryptsetup-2.3.4/lib/luks2/luks2_json_format.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_json_format.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, LUKS2 header format code * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -216,7 +216,7 @@ struct json_object *jobj_segment, *jobj_integrity, *jobj_keyslots, *jobj_segments, *jobj_config; char cipher[128]; uuid_t partitionUuid; - int digest; + int r, digest; uint64_t mdev_size; if (!metadata_size) @@ -244,7 +244,8 @@ /* Decrease keyslots_size due to metadata device being too small */ if (!device_size(crypt_metadata_device(cd), &mdev_size) && ((keyslots_size + get_min_offset(hdr)) > mdev_size) && - device_fallocate(crypt_metadata_device(cd), keyslots_size + get_min_offset(hdr))) + device_fallocate(crypt_metadata_device(cd), keyslots_size + get_min_offset(hdr)) && + (get_min_offset(hdr) <= mdev_size)) keyslots_size = mdev_size - get_min_offset(hdr); } @@ -289,9 +290,11 @@ uuid_unparse(partitionUuid, hdr->uuid); if (*cipherMode != '\0') - snprintf(cipher, sizeof(cipher), "%s-%s", cipherName, cipherMode); + r = snprintf(cipher, sizeof(cipher), "%s-%s", cipherName, cipherMode); else - snprintf(cipher, sizeof(cipher), "%s", cipherName); + r = snprintf(cipher, sizeof(cipher), "%s", cipherName); + if (r < 0 || (size_t)r >= sizeof(cipher)) + return -EINVAL; hdr->jobj = json_object_new_object(); diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_json_metadata.c cryptsetup-2.3.6/lib/luks2/luks2_json_metadata.c --- cryptsetup-2.3.4/lib/luks2/luks2_json_metadata.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_json_metadata.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,9 +1,9 @@ /* * LUKS - Linux Unified Key Setup v2 * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz - * Copyright (C) 2015-2020 Ondrej Kozina + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz + * Copyright (C) 2015-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_keyslot.c cryptsetup-2.3.6/lib/luks2/luks2_keyslot.c --- cryptsetup-2.3.4/lib/luks2/luks2_keyslot.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_keyslot.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, keyslot handling * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -148,7 +148,7 @@ { char cipher[MAX_CIPHER_LEN], cipher_mode[MAX_CIPHER_LEN]; - if (!cipher_spec || !strcmp(cipher_spec, "null") || !strcmp(cipher_spec, "cipher_null")) + if (!cipher_spec || crypt_is_cipher_null(cipher_spec)) return 1; if (crypt_parse_name_and_mode(cipher_spec, cipher, NULL, cipher_mode) < 0) diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_keyslot_luks2.c cryptsetup-2.3.6/lib/luks2/luks2_keyslot_luks2.c --- cryptsetup-2.3.4/lib/luks2/luks2_keyslot_luks2.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_keyslot_luks2.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, LUKS2 type keyslot handler * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_keyslot_reenc.c cryptsetup-2.3.6/lib/luks2/luks2_keyslot_reenc.c --- cryptsetup-2.3.4/lib/luks2/luks2_keyslot_reenc.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_keyslot_reenc.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, reencryption keyslot handler * - * Copyright (C) 2016-2020, Red Hat, Inc. All rights reserved. - * Copyright (C) 2016-2020, Ondrej Kozina + * Copyright (C) 2016-2021, Red Hat, Inc. All rights reserved. + * Copyright (C) 2016-2021, Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_luks1_convert.c cryptsetup-2.3.6/lib/luks2/luks2_luks1_convert.c --- cryptsetup-2.3.4/lib/luks2/luks2_luks1_convert.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_luks1_convert.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,9 +1,9 @@ /* * LUKS - Linux Unified Key Setup v2, LUKS1 conversion code * - * Copyright (C) 2015-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020 Ondrej Kozina - * Copyright (C) 2015-2020 Milan Broz + * Copyright (C) 2015-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021 Ondrej Kozina + * Copyright (C) 2015-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_reencrypt.c cryptsetup-2.3.6/lib/luks2/luks2_reencrypt.c --- cryptsetup-2.3.4/lib/luks2/luks2_reencrypt.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_reencrypt.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, reencryption helpers * - * Copyright (C) 2015-2020, Red Hat, Inc. All rights reserved. - * Copyright (C) 2015-2020, Ondrej Kozina + * Copyright (C) 2015-2021, Red Hat, Inc. All rights reserved. + * Copyright (C) 2015-2021, Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -2238,7 +2238,7 @@ if (LUKS2_digest_verify_by_digest(cd, hdr, digest_new, vk) != digest_new) return -EINVAL; - if (crypt_use_keyring_for_vk(cd) && + if (crypt_use_keyring_for_vk(cd) && !crypt_is_cipher_null(reencrypt_segment_cipher_new(hdr)) && (r = LUKS2_volume_key_load_in_keyring_by_digest(cd, hdr, vk, crypt_volume_key_get_id(vk)))) return r; } @@ -2254,7 +2254,7 @@ r = -EINVAL; goto err; } - if (crypt_use_keyring_for_vk(cd) && + if (crypt_use_keyring_for_vk(cd) && !crypt_is_cipher_null(reencrypt_segment_cipher_old(hdr)) && (r = LUKS2_volume_key_load_in_keyring_by_digest(cd, hdr, vk, crypt_volume_key_get_id(vk)))) goto err; } @@ -2310,9 +2310,11 @@ } if (!cipher_mode || *cipher_mode == '\0') - snprintf(_cipher, sizeof(_cipher), "%s", cipher); + r = snprintf(_cipher, sizeof(_cipher), "%s", cipher); else - snprintf(_cipher, sizeof(_cipher), "%s-%s", cipher, cipher_mode); + r = snprintf(_cipher, sizeof(_cipher), "%s-%s", cipher, cipher_mode); + if (r < 0 || (size_t)r >= sizeof(_cipher)) + return -EINVAL; if (MISALIGNED(params->data_shift, sector_size >> SECTOR_SHIFT)) { log_err(cd, _("Data shift is not aligned to requested encryption sector size (%" PRIu32 " bytes)."), sector_size); @@ -2664,6 +2666,7 @@ struct luks2_hdr *hdr; struct crypt_lock_handle *reencrypt_lock; struct luks2_reenc_context *rh; + const struct volume_key *vk; struct crypt_dm_active_device dmd_target, dmd_source = { .uuid = crypt_get_uuid(cd), .flags = CRYPT_ACTIVATE_SHARED /* turn off exclusive open checks */ @@ -2730,6 +2733,19 @@ goto err; flags = dmd_target.flags; + /* + * By default reencryption code aims to retain flags from existing dm device. + * The keyring activation flag can not be inherited if original cipher is null. + * + * In this case override the flag based on decision made in reencrypt_verify_and_upload_keys + * above. The code checks if new VK is eligible for keyring. + */ + vk = crypt_volume_key_by_id(*vks, LUKS2_reencrypt_digest_new(hdr)); + if (vk && vk->key_description && crypt_is_cipher_null(reencrypt_segment_cipher_old(hdr))) { + flags |= CRYPT_ACTIVATE_KEYRING_KEY; + dmd_source.flags |= CRYPT_ACTIVATE_KEYRING_KEY; + } + r = LUKS2_assembly_multisegment_dmd(cd, hdr, *vks, LUKS2_get_segments_jobj(hdr), &dmd_source); if (!r) { r = crypt_compare_dm_devices(cd, &dmd_source, &dmd_target); diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_segment.c cryptsetup-2.3.6/lib/luks2/luks2_segment.c --- cryptsetup-2.3.4/lib/luks2/luks2_segment.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_segment.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, internal segment handling * - * Copyright (C) 2018-2020, Red Hat, Inc. All rights reserved. - * Copyright (C) 2018-2020, Ondrej Kozina + * Copyright (C) 2018-2021, Red Hat, Inc. All rights reserved. + * Copyright (C) 2018-2021, Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_token.c cryptsetup-2.3.6/lib/luks2/luks2_token.c --- cryptsetup-2.3.4/lib/luks2/luks2_token.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_token.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, token handling * - * Copyright (C) 2016-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2016-2020 Milan Broz + * Copyright (C) 2016-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2016-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -147,7 +147,8 @@ if (!json_object_object_get_ex(hdr->jobj, "tokens", &jobj_tokens)) return -EINVAL; - snprintf(num, sizeof(num), "%d", token); + if (snprintf(num, sizeof(num), "%d", token) < 0) + return -EINVAL; /* Remove token */ if (!json) @@ -329,7 +330,7 @@ { const crypt_token_handler *h = LUKS2_token_handler(cd, token); - if (h->buffer_free) + if (h && h->buffer_free) h->buffer_free(buffer, buffer_len); else { crypt_safe_memzero(buffer, buffer_len); @@ -383,6 +384,7 @@ uint32_t flags, void *usrptr) { + bool use_keyring; int keyslot, r; char *buffer; size_t buffer_len; @@ -404,7 +406,13 @@ keyslot = r; - if ((name || (flags & CRYPT_ACTIVATE_KEYRING_KEY)) && crypt_use_keyring_for_vk(cd)) { + if (!crypt_use_keyring_for_vk(cd)) + use_keyring = false; + else + use_keyring = ((name && !crypt_is_cipher_null(crypt_get_cipher(cd))) || + (flags & CRYPT_ACTIVATE_KEYRING_KEY)); + + if (use_keyring) { if (!(r = LUKS2_volume_key_load_in_keyring_by_keyslot(cd, hdr, vk, keyslot))) flags |= CRYPT_ACTIVATE_KEYRING_KEY; } @@ -510,7 +518,9 @@ if (!jobj_token_keyslots) return -EINVAL; - snprintf(num, sizeof(num), "%d", keyslot); + if (snprintf(num, sizeof(num), "%d", keyslot) < 0) + return -EINVAL; + if (assign) { jobj1 = LUKS2_array_jobj(jobj_token_keyslots, num); if (!jobj1) @@ -576,16 +586,12 @@ return token; } -int LUKS2_token_is_assigned(struct crypt_device *cd, struct luks2_hdr *hdr, - int keyslot, int token) +static int token_is_assigned(struct luks2_hdr *hdr, int keyslot, int token) { int i; - json_object *jobj_token, *jobj_token_keyslots, *jobj; - - if (keyslot < 0 || keyslot >= LUKS2_KEYSLOTS_MAX || token < 0 || token >= LUKS2_TOKENS_MAX) - return -EINVAL; + json_object *jobj, *jobj_token_keyslots, + *jobj_token = LUKS2_get_token_jobj(hdr, token); - jobj_token = LUKS2_get_token_jobj(hdr, token); if (!jobj_token) return -ENOENT; @@ -600,6 +606,15 @@ return -ENOENT; } +int LUKS2_token_is_assigned(struct crypt_device *cd, struct luks2_hdr *hdr, + int keyslot, int token) +{ + if (keyslot < 0 || keyslot >= LUKS2_KEYSLOTS_MAX || token < 0 || token >= LUKS2_TOKENS_MAX) + return -EINVAL; + + return token_is_assigned(hdr, keyslot, token); +} + int LUKS2_tokens_count(struct luks2_hdr *hdr) { json_object *jobj_tokens = LUKS2_get_tokens_jobj(hdr); @@ -608,3 +623,28 @@ return json_object_object_length(jobj_tokens); } + +int LUKS2_token_assignment_copy(struct crypt_device *cd, + struct luks2_hdr *hdr, + int keyslot_from, + int keyslot_to, + int commit) +{ + int i, r; + + if (keyslot_from < 0 || keyslot_from >= LUKS2_KEYSLOTS_MAX || keyslot_to < 0 || keyslot_to >= LUKS2_KEYSLOTS_MAX) + return -EINVAL; + + r = LUKS2_tokens_count(hdr); + if (r <= 0) + return r; + + for (i = 0; i < LUKS2_TOKENS_MAX; i++) { + if (!token_is_assigned(hdr, keyslot_from, i)) { + if ((r = assign_one_token(cd, hdr, keyslot_to, i, 1))) + return r; + } + } + + return commit ? LUKS2_hdr_write(cd, hdr) : 0; +} diff -Nru cryptsetup-2.3.4/lib/luks2/luks2_token_keyring.c cryptsetup-2.3.6/lib/luks2/luks2_token_keyring.c --- cryptsetup-2.3.4/lib/luks2/luks2_token_keyring.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/luks2/luks2_token_keyring.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * LUKS - Linux Unified Key Setup v2, kernel keyring token * - * Copyright (C) 2016-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2016-2020 Ondrej Kozina + * Copyright (C) 2016-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2016-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/random.c cryptsetup-2.3.6/lib/random.c --- cryptsetup-2.3.4/lib/random.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/random.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * cryptsetup kernel RNG access functions * - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/setup.c cryptsetup-2.3.6/lib/setup.c --- cryptsetup-2.3.4/lib/setup.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/setup.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -657,7 +657,7 @@ log_dbg(cd, "Setting ciphertext data device to %s.", device ?: "(none)"); if (!isLUKS1(cd->type) && !isLUKS2(cd->type) && !isVERITY(cd->type) && - !isINTEGRITY(cd->type)) { + !isINTEGRITY(cd->type) && !isTCRYPT(cd->type)) { log_err(cd, _("This operation is not supported for this device type.")); return -EINVAL; } @@ -845,11 +845,6 @@ if (!params) return -EINVAL; - if (cd->metadata_device) { - log_err(cd, _("Detached metadata device is not supported for this crypt type.")); - return -EINVAL; - } - r = init_crypto(cd); if (r < 0) return r; @@ -1084,10 +1079,15 @@ _mode); if (!r) { - snprintf(cd->u.none.cipher_spec, sizeof(cd->u.none.cipher_spec), + r = snprintf(cd->u.none.cipher_spec, sizeof(cd->u.none.cipher_spec), "%s-%s", cd->u.none.cipher, _mode); - cd->u.none.cipher_mode = cd->u.none.cipher_spec + strlen(cd->u.none.cipher) + 1; - cd->u.none.key_size = tgt->u.crypt.vk->keylength; + if (r < 0 || (size_t)r >= sizeof(cd->u.none.cipher_spec)) + r = -EINVAL; + else { + cd->u.none.cipher_mode = cd->u.none.cipher_spec + strlen(cd->u.none.cipher) + 1; + cd->u.none.key_size = tgt->u.crypt.vk->keylength; + r = 0; + } } dm_targets_free(cd, &dmd); @@ -1210,7 +1210,7 @@ } /* do not try to lookup LUKS2 header in detached header mode */ - if (!cd->metadata_device && !found) { + if (dmd.uuid && !cd->metadata_device && !found) { while (*dep && !found) { r = dm_query_device(cd, *dep, DM_ACTIVE_DEVICE, &dmdep); if (r < 0) @@ -2035,7 +2035,7 @@ } else cd->u.verity.hdr.data_size = params->data_size; - if (device_is_identical(crypt_metadata_device(cd), crypt_data_device(cd)) && + if (device_is_identical(crypt_metadata_device(cd), crypt_data_device(cd)) > 0 && (cd->u.verity.hdr.data_size * params->data_block_size) > params->hash_area_offset) { log_err(cd, _("Data area overlaps with hash area.")); return -EINVAL; @@ -2060,14 +2060,14 @@ } hash_blocks_size = VERITY_hash_blocks(cd, params) * params->hash_block_size; - if (device_is_identical(crypt_metadata_device(cd), fec_device) && + if (device_is_identical(crypt_metadata_device(cd), fec_device) > 0 && (params->hash_area_offset + hash_blocks_size) > params->fec_area_offset) { log_err(cd, _("Hash area overlaps with FEC area.")); r = -EINVAL; goto err; } - if (device_is_identical(crypt_data_device(cd), fec_device) && + if (device_is_identical(crypt_data_device(cd), fec_device) > 0 && (cd->u.verity.hdr.data_size * params->data_block_size) > params->fec_area_offset) { log_err(cd, _("Data area overlaps with FEC area.")); r = -EINVAL; @@ -2388,11 +2388,6 @@ if (!src->u.crypt.vk || !tgt->u.crypt.vk) return -EINVAL; - if (_compare_volume_keys(src->u.crypt.vk, 0, tgt->u.crypt.vk, tgt->u.crypt.vk->key_description != NULL)) { - log_dbg(cd, "Keys in context and target device do not match."); - return -EINVAL; - } - /* CIPHER checks */ if (!src->u.crypt.cipher || !tgt->u.crypt.cipher) return -EINVAL; @@ -2400,6 +2395,14 @@ log_dbg(cd, "Cipher specs do not match."); return -EINVAL; } + + if (tgt->u.crypt.vk->keylength == 0 && crypt_is_cipher_null(tgt->u.crypt.cipher)) + log_dbg(cd, "Existing device uses cipher null. Skipping key comparison."); + else if (_compare_volume_keys(src->u.crypt.vk, 0, tgt->u.crypt.vk, tgt->u.crypt.vk->key_description != NULL)) { + log_dbg(cd, "Keys in context and target device do not match."); + return -EINVAL; + } + if (crypt_strcmp(src->u.crypt.integrity, tgt->u.crypt.integrity)) { log_dbg(cd, "Integrity parameters do not match."); return -EINVAL; @@ -2413,7 +2416,7 @@ return -EINVAL; } - if (!device_is_identical(src->data_device, tgt->data_device)) { + if (device_is_identical(src->data_device, tgt->data_device) <= 0) { log_dbg(cd, "Data devices do not match."); return -EINVAL; } @@ -2467,7 +2470,7 @@ return -EINVAL; } - if (!device_is_identical(src->data_device, tgt->data_device)) { + if (device_is_identical(src->data_device, tgt->data_device) <= 0) { log_dbg(cd, "Data devices do not match."); return -EINVAL; } @@ -2770,6 +2773,11 @@ if (!cd || !cd->type || !name) return -EINVAL; + if (isTCRYPT(cd->type) || isBITLK(cd->type)) { + log_err(cd, _("This operation is not supported for this device type.")); + return -ENOTSUP; + } + log_dbg(cd, "Resizing device %s to %" PRIu64 " sectors.", name, new_size); r = dm_query_device(cd, name, DM_ACTIVE_CRYPT_KEYSIZE | DM_ACTIVE_CRYPT_KEY, &dmdq); @@ -3090,6 +3098,45 @@ return r; } +/* key must be properly verified */ +static int resume_by_volume_key(struct crypt_device *cd, + struct volume_key *vk, + const char *name) +{ + int digest, r; + struct volume_key *zerokey = NULL; + + if (crypt_is_cipher_null(crypt_get_cipher_spec(cd))) { + zerokey = crypt_alloc_volume_key(0, NULL); + if (!zerokey) + return -ENOMEM; + vk = zerokey; + } else if (crypt_use_keyring_for_vk(cd)) { + /* LUKS2 path only */ + digest = LUKS2_digest_by_segment(&cd->u.luks2.hdr, CRYPT_DEFAULT_SEGMENT); + if (digest < 0) + return -EINVAL; + r = LUKS2_volume_key_load_in_keyring_by_digest(cd, + &cd->u.luks2.hdr, vk, digest); + if (r < 0) + return r; + } + + r = dm_resume_and_reinstate_key(cd, name, vk); + + if (r == -ENOTSUP) + log_err(cd, _("Resume is not supported for device %s."), name); + else if (r) + log_err(cd, _("Error during resuming device %s."), name); + + if (r < 0) + crypt_drop_keyring_key(cd, vk); + + crypt_free_volume_key(zerokey); + + return r; +} + int crypt_resume_by_passphrase(struct crypt_device *cd, const char *name, int keyslot, @@ -3125,32 +3172,13 @@ r = LUKS2_keyslot_open(cd, keyslot, CRYPT_DEFAULT_SEGMENT, passphrase, passphrase_size, &vk); if (r < 0) - goto out; + return r; keyslot = r; - if (crypt_use_keyring_for_vk(cd)) { - if (!isLUKS2(cd->type)) { - r = -EINVAL; - goto out; - } - r = LUKS2_volume_key_load_in_keyring_by_keyslot(cd, - &cd->u.luks2.hdr, vk, keyslot); - if (r < 0) - goto out; - } - - r = dm_resume_and_reinstate_key(cd, name, vk); + r = resume_by_volume_key(cd, vk, name); - if (r == -ENOTSUP) - log_err(cd, _("Resume is not supported for device %s."), name); - else if (r) - log_err(cd, _("Error during resuming device %s."), name); -out: - if (r < 0) - crypt_drop_keyring_key(cd, vk); crypt_free_volume_key(vk); - return r < 0 ? r : keyslot; } @@ -3189,35 +3217,22 @@ &passphrase_read, &passphrase_size_read, keyfile_offset, keyfile_size, 0); if (r < 0) - goto out; + return r; if (isLUKS1(cd->type)) r = LUKS_open_key_with_hdr(keyslot, passphrase_read, passphrase_size_read, &cd->u.luks1.hdr, &vk, cd); else r = LUKS2_keyslot_open(cd, keyslot, CRYPT_DEFAULT_SEGMENT, passphrase_read, passphrase_size_read, &vk); + + crypt_safe_free(passphrase_read); if (r < 0) - goto out; + return r; + keyslot = r; - if (crypt_use_keyring_for_vk(cd)) { - if (!isLUKS2(cd->type)) { - r = -EINVAL; - goto out; - } - r = LUKS2_volume_key_load_in_keyring_by_keyslot(cd, - &cd->u.luks2.hdr, vk, keyslot); - if (r < 0) - goto out; - } + r = resume_by_volume_key(cd, vk, name); - r = dm_resume_and_reinstate_key(cd, name, vk); - if (r < 0) - log_err(cd, _("Error during resuming device %s."), name); -out: - crypt_safe_free(passphrase_read); - if (r < 0) - crypt_drop_keyring_key(cd, vk); crypt_free_volume_key(vk); return r < 0 ? r : keyslot; } @@ -3280,24 +3295,10 @@ r = -EINVAL; if (r == -EPERM || r == -ENOENT) log_err(cd, _("Volume key does not match the volume.")); - if (r < 0) - goto out; - r = 0; - if (crypt_use_keyring_for_vk(cd)) { - r = LUKS2_key_description_by_segment(cd, &cd->u.luks2.hdr, vk, CRYPT_DEFAULT_SEGMENT); - if (!r) - r = crypt_volume_key_load_in_keyring(cd, vk); - } - if (r < 0) - goto out; + if (r >= 0) + r = resume_by_volume_key(cd, vk, name); - r = dm_resume_and_reinstate_key(cd, name, vk); - if (r < 0) - log_err(cd, _("Error during resuming device %s."), name); -out: - if (r < 0) - crypt_drop_keyring_key(cd, vk); crypt_free_volume_key(vk); return r; } @@ -3459,6 +3460,9 @@ r = LUKS2_digest_assign(cd, &cd->u.luks2.hdr, keyslot_new, digest, 1, 0); if (r < 0) goto out; + r = LUKS2_token_assignment_copy(cd, &cd->u.luks2.hdr, keyslot_old, keyslot_new, 0); + if (r < 0) + goto out; } else { log_dbg(cd, "Key slot %d is going to be overwritten.", keyslot_old); /* FIXME: improve return code so that we can detect area is damaged */ @@ -3686,7 +3690,7 @@ if (!name || !isLUKS(cd->type)) return 0; - if (!device_is_identical(crypt_data_device(cd), crypt_metadata_device(cd))) + if (device_is_identical(crypt_data_device(cd), crypt_metadata_device(cd)) <= 0) return 0; /* FIXME: check real header size */ @@ -3879,6 +3883,7 @@ size_t passphrase_size, uint32_t flags) { + bool use_keyring; int r; struct volume_key *vk = NULL; @@ -3890,8 +3895,13 @@ return r; keyslot = r; - if ((name || (flags & CRYPT_ACTIVATE_KEYRING_KEY)) && - crypt_use_keyring_for_vk(cd)) { + if (!crypt_use_keyring_for_vk(cd)) + use_keyring = false; + else + use_keyring = ((name && !crypt_is_cipher_null(crypt_get_cipher(cd))) || + (flags & CRYPT_ACTIVATE_KEYRING_KEY)); + + if (use_keyring) { r = LUKS2_volume_key_load_in_keyring_by_keyslot(cd, &cd->u.luks2.hdr, vk, keyslot); if (r < 0) @@ -4274,6 +4284,7 @@ size_t volume_key_size, uint32_t flags) { + bool use_keyring; struct volume_key *vk = NULL; int r; @@ -4349,8 +4360,12 @@ if (r > 0) r = 0; - if (!r && (name || (flags & CRYPT_ACTIVATE_KEYRING_KEY)) && - crypt_use_keyring_for_vk(cd)) { + if (!crypt_use_keyring_for_vk(cd)) + use_keyring = false; + else + use_keyring = (name && !crypt_is_cipher_null(crypt_get_cipher(cd))) || (flags & CRYPT_ACTIVATE_KEYRING_KEY); + + if (!r && use_keyring) { r = LUKS2_key_description_by_segment(cd, &cd->u.luks2.hdr, vk, CRYPT_DEFAULT_SEGMENT); if (!r) @@ -4411,7 +4426,7 @@ return -EINVAL; } - log_dbg(cd, "%s volume %s by signed key.", name ? "Activating" : "Checking", name ?: ""); + log_dbg(cd, "%s volume %s by %skey.", name ? "Activating" : "Checking", name ?: "", signature ? "signed " : ""); if (cd->u.verity.hdr.flags & CRYPT_VERITY_ROOT_HASH_SIGNATURE && !signature) { log_err(cd, _("Root hash signature required.")); @@ -4961,6 +4976,9 @@ /* INTERNAL only */ const char *crypt_get_integrity(struct crypt_device *cd) { + if (!cd) + return NULL; + if (isINTEGRITY(cd->type)) return cd->u.integrity.params.integrity; diff -Nru cryptsetup-2.3.4/lib/tcrypt/tcrypt.c cryptsetup-2.3.6/lib/tcrypt/tcrypt.c --- cryptsetup-2.3.4/lib/tcrypt/tcrypt.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/tcrypt/tcrypt.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * TCRYPT (TrueCrypt-compatible) and VeraCrypt volume handling * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -1028,7 +1028,7 @@ /* Mapping through whole device, not partition! */ if (params->flags & CRYPT_TCRYPT_SYSTEM_HEADER) { - if (crypt_dev_is_partition(device_path(crypt_metadata_device(cd)))) + if (crypt_dev_is_partition(device_path(crypt_data_device(cd)))) return 0; goto hdr_offset; } @@ -1073,7 +1073,7 @@ iv_offset = hdr->d.mk_offset / SECTOR_SIZE; if (params->flags & CRYPT_TCRYPT_SYSTEM_HEADER) - iv_offset += crypt_dev_partition_offset(device_path(crypt_metadata_device(cd))); + iv_offset += crypt_dev_partition_offset(device_path(crypt_data_device(cd))); return iv_offset; } diff -Nru cryptsetup-2.3.4/lib/tcrypt/tcrypt.h cryptsetup-2.3.6/lib/tcrypt/tcrypt.h --- cryptsetup-2.3.4/lib/tcrypt/tcrypt.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/tcrypt/tcrypt.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * TCRYPT (TrueCrypt-compatible) header definition * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/utils_benchmark.c cryptsetup-2.3.6/lib/utils_benchmark.c --- cryptsetup-2.3.4/lib/utils_benchmark.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_benchmark.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * libcryptsetup - cryptsetup library, cipher benchmark * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_blkid.c cryptsetup-2.3.6/lib/utils_blkid.c --- cryptsetup-2.3.4/lib/utils_blkid.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_blkid.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * blkid probe utilities * - * Copyright (C) 2018-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2018-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_blkid.h cryptsetup-2.3.6/lib/utils_blkid.h --- cryptsetup-2.3.4/lib/utils_blkid.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_blkid.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * blkid probe utilities * - * Copyright (C) 2018-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2018-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -21,6 +21,8 @@ #ifndef _UTILS_BLKID_H #define _UTILS_BLKID_H +#include + struct blkid_handle; typedef enum { PRB_OK = 0, PRB_EMPTY, PRB_AMBIGUOUS, PRB_FAIL } blk_probe_status; diff -Nru cryptsetup-2.3.4/lib/utils.c cryptsetup-2.3.6/lib/utils.c --- cryptsetup-2.3.4/lib/utils.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_crypt.c cryptsetup-2.3.6/lib/utils_crypt.c --- cryptsetup-2.3.4/lib/utils_crypt.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_crypt.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,8 +2,8 @@ * utils_crypt - cipher utilities for cryptsetup * * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -86,7 +86,7 @@ else return -EINVAL; - if (r < 0 || r == MAX_CIPHER_LEN) + if (r < 0 || r >= MAX_CIPHER_LEN) return -EINVAL; return 0; @@ -177,3 +177,10 @@ *result = bytes; return i; } + +bool crypt_is_cipher_null(const char *cipher_spec) +{ + if (!cipher_spec) + return false; + return (strstr(cipher_spec, "cipher_null") || !strcmp(cipher_spec, "null")); +} diff -Nru cryptsetup-2.3.4/lib/utils_crypt.h cryptsetup-2.3.6/lib/utils_crypt.h --- cryptsetup-2.3.4/lib/utils_crypt.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_crypt.h 2021-05-28 04:57:08.000000000 -0500 @@ -2,8 +2,8 @@ * utils_crypt - cipher utilities for cryptsetup * * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -23,6 +23,7 @@ #ifndef _UTILS_CRYPT_H #define _UTILS_CRYPT_H +#include #include #define MAX_CIPHER_LEN 32 @@ -38,4 +39,6 @@ ssize_t crypt_hex_to_bytes(const char *hex, char **result, int safe_alloc); +bool crypt_is_cipher_null(const char *cipher_spec); + #endif /* _UTILS_CRYPT_H */ diff -Nru cryptsetup-2.3.4/lib/utils_device.c cryptsetup-2.3.6/lib/utils_device.c --- cryptsetup-2.3.4/lib/utils_device.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_device.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -162,6 +162,9 @@ struct stat st; size_t tmp_size; + if (!device) + return -EINVAL; + if (device->o_direct) { log_dbg(cd, "Trying to open and read device %s with direct-io.", device_path(device)); @@ -217,6 +220,9 @@ { int fd; + if (!device) + return -EINVAL; + log_dbg(cd, "Opening locked device %s", device_path(device)); if ((flags & O_ACCMODE) != O_RDONLY && device_locked_readonly(device->lh)) { @@ -300,6 +306,9 @@ int device_open(struct crypt_device *cd, struct device *device, int flags) { + if (!device) + return -EINVAL; + assert(!device_locked(device->lh)); return device_open_internal(cd, device, flags); } @@ -354,6 +363,9 @@ int device_open_locked(struct crypt_device *cd, struct device *device, int flags) { + if (!device) + return -EINVAL; + assert(!crypt_metadata_locking_enabled() || device_locked(device->lh)); return device_open_internal(cd, device, flags); } @@ -528,7 +540,7 @@ if ((temp_alignment < (unsigned long)opt_io_size) && !((unsigned long)opt_io_size % temp_alignment) && !MISALIGNED_4K(opt_io_size)) temp_alignment = (unsigned long)opt_io_size; - else if (opt_io_size) + else if (opt_io_size && (opt_io_size != min_io_size)) log_err(cd, _("Ignoring bogus optimal-io size for data device (%u bytes)."), opt_io_size); /* If calculated alignment is multiple of default, keep default */ @@ -589,8 +601,11 @@ struct stat st; int devfd, r = -EINVAL; + if (!device) + return -EINVAL; + devfd = open(device->path, O_RDONLY); - if(devfd == -1) + if (devfd == -1) return -EINVAL; if (fstat(devfd, &st) < 0) @@ -612,6 +627,9 @@ struct stat st; int devfd, r = -EINVAL; + if (!device) + return -EINVAL; + devfd = open(device_path(device), O_RDWR); if (devfd == -1) return -EINVAL; @@ -852,22 +870,30 @@ void device_disable_direct_io(struct device *device) { - device->o_direct = 0; + if (device) + device->o_direct = 0; } int device_direct_io(const struct device *device) { - return device->o_direct; + return device ? device->o_direct : 0; } -static dev_t device_devno(const struct device *device) +static int device_compare_path(const char *path1, const char *path2) { - struct stat st; + struct stat st_path1, st_path2; - if (stat(device->path, &st) || !S_ISBLK(st.st_mode)) - return 0; + if (stat(path1, &st_path1 ) < 0 || stat(path2, &st_path2 ) < 0) + return -EINVAL; - return st.st_rdev; + if (S_ISBLK(st_path1.st_mode) && S_ISBLK(st_path2.st_mode)) + return (st_path1.st_rdev == st_path2.st_rdev) ? 1 : 0; + + if (S_ISREG(st_path1.st_mode) && S_ISREG(st_path2.st_mode)) + return (st_path1.st_ino == st_path2.st_ino && + st_path1.st_dev == st_path2.st_dev) ? 1 : 0; + + return 0; } int device_is_identical(struct device *device1, struct device *device2) @@ -878,21 +904,19 @@ if (device1 == device2) return 1; - if (device1->init_done && device2->init_done) - return (device_devno(device1) == device_devno(device2)); - else if (device1->init_done || device2->init_done) - return 0; - if (!strcmp(device_path(device1), device_path(device2))) return 1; - return 0; + return device_compare_path(device_path(device1), device_path(device2)); } int device_is_rotational(struct device *device) { struct stat st; + if (!device) + return -EINVAL; + if (stat(device_path(device), &st) < 0) return -EINVAL; @@ -906,6 +930,9 @@ { int devfd; + if (!device) + return -EINVAL; + if (!device->alignment) { devfd = open(device_path(device), O_RDONLY); if (devfd != -1) { @@ -919,17 +946,18 @@ void device_set_lock_handle(struct device *device, struct crypt_lock_handle *h) { - device->lh = h; + if (device) + device->lh = h; } struct crypt_lock_handle *device_get_lock_handle(struct device *device) { - return device->lh; + return device ? device->lh : NULL; } int device_read_lock(struct crypt_device *cd, struct device *device) { - if (!crypt_metadata_locking_enabled()) + if (!device || !crypt_metadata_locking_enabled()) return 0; if (device_read_lock_internal(cd, device)) @@ -940,7 +968,7 @@ int device_write_lock(struct crypt_device *cd, struct device *device) { - if (!crypt_metadata_locking_enabled()) + if (!device || !crypt_metadata_locking_enabled()) return 0; assert(!device_locked(device->lh) || !device_locked_readonly(device->lh)); @@ -950,7 +978,7 @@ void device_read_unlock(struct crypt_device *cd, struct device *device) { - if (!crypt_metadata_locking_enabled()) + if (!device || !crypt_metadata_locking_enabled()) return; assert(device_locked(device->lh)); @@ -960,7 +988,7 @@ void device_write_unlock(struct crypt_device *cd, struct device *device) { - if (!crypt_metadata_locking_enabled()) + if (!device || !crypt_metadata_locking_enabled()) return; assert(device_locked(device->lh) && !device_locked_readonly(device->lh)); diff -Nru cryptsetup-2.3.4/lib/utils_device_locking.c cryptsetup-2.3.6/lib/utils_device_locking.c --- cryptsetup-2.3.4/lib/utils_device_locking.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_device_locking.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Metadata on-disk locking for processes serialization * - * Copyright (C) 2016-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2016-2020 Ondrej Kozina + * Copyright (C) 2016-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2016-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -106,7 +106,7 @@ lockdfd = openat(dirfd, base, O_RDONLY | O_NOFOLLOW | O_DIRECTORY | O_CLOEXEC); if (lockdfd < 0) { if (errno == ENOENT) { - log_std(cd, _("WARNING: Locking directory %s/%s is missing!\n"), dir, base); + log_dbg(cd, _("Locking directory %s/%s will be created with default compiled-in permissions."), dir, base); /* success or failure w/ errno == EEXIST either way just try to open the 'base' directory again */ if (mkdirat(dirfd, base, DEFAULT_LUKS2_LOCK_DIR_PERMS) && errno != EEXIST) diff -Nru cryptsetup-2.3.4/lib/utils_device_locking.h cryptsetup-2.3.6/lib/utils_device_locking.h --- cryptsetup-2.3.4/lib/utils_device_locking.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_device_locking.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Metadata on-disk locking for processes serialization * - * Copyright (C) 2016-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2016-2020 Ondrej Kozina + * Copyright (C) 2016-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2016-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -22,6 +22,8 @@ #ifndef _CRYPTSETUP_UTILS_LOCKING_H #define _CRYPTSETUP_UTILS_LOCKING_H +#include + struct crypt_device; struct crypt_lock_handle; struct device; diff -Nru cryptsetup-2.3.4/lib/utils_devpath.c cryptsetup-2.3.6/lib/utils_devpath.c --- cryptsetup-2.3.4/lib/utils_devpath.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_devpath.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -367,7 +367,9 @@ if (dm_is_dm_kernel_name(devname)) return NULL; - snprintf(part_path, sizeof(part_path), "/dev/%s", devname); + if (snprintf(part_path, sizeof(part_path), "/dev/%s", devname) < 0) + return NULL; + return strdup(part_path); } diff -Nru cryptsetup-2.3.4/lib/utils_dm.h cryptsetup-2.3.6/lib/utils_dm.h --- cryptsetup-2.3.4/lib/utils_dm.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_dm.h 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -25,7 +25,8 @@ #define _UTILS_DM_H /* device-mapper library helpers */ -#include +#include +#include struct crypt_device; struct volume_key; @@ -71,6 +72,7 @@ #define DM_INTEGRITY_DISCARDS_SUPPORTED (1 << 23) /* dm-integrity discards/TRIM option is supported */ #define DM_VERITY_PANIC_CORRUPTION_SUPPORTED (1 << 24) /* dm-verity panic on corruption */ #define DM_CRYPT_NO_WORKQUEUE_SUPPORTED (1 << 25) /* dm-crypt suppot for bypassing workqueues */ +#define DM_INTEGRITY_FIX_HMAC_SUPPORTED (1 << 26) /* hmac covers also superblock */ typedef enum { DM_CRYPT = 0, DM_VERITY, DM_INTEGRITY, DM_LINEAR, DM_ERROR, DM_ZERO, DM_UNKNOWN } dm_target_type; enum tdirection { TARGET_SET = 1, TARGET_QUERY }; @@ -120,9 +122,8 @@ const char *root_hash_sig_key_desc; uint64_t hash_offset; /* hash offset in blocks (not header) */ - uint64_t hash_blocks; /* size of hash device (in hash blocks) */ uint64_t fec_offset; /* FEC offset in blocks (not header) */ - uint64_t fec_blocks; /* size of FEC device (in hash blocks) */ + uint64_t fec_blocks; /* FEC blocks covering data + hash + padding (foreign metadata)*/ struct crypt_params_verity *vp; } verity; struct { @@ -148,6 +149,8 @@ struct device *meta_device; bool fix_padding; + bool fix_hmac; + bool legacy_recalc; } integrity; struct { uint64_t offset; @@ -187,8 +190,8 @@ uint32_t tag_size, uint32_t sector_size); int dm_verity_target_set(struct dm_target *tgt, uint64_t seg_offset, uint64_t seg_size, struct device *data_device, struct device *hash_device, struct device *fec_device, - const char *root_hash, uint32_t root_hash_size, const char *root_hash_sig_key_desc, - uint64_t hash_offset_block, uint64_t hash_blocks, struct crypt_params_verity *vp); + const char *root_hash, uint32_t root_hash_size, const char* root_hash_sig_key_desc, + uint64_t hash_offset_block, uint64_t fec_blocks, struct crypt_params_verity *vp); int dm_integrity_target_set(struct crypt_device *cd, struct dm_target *tgt, uint64_t seg_offset, uint64_t seg_size, struct device *meta_device, diff -Nru cryptsetup-2.3.4/lib/utils_fips.c cryptsetup-2.3.6/lib/utils_fips.c --- cryptsetup-2.3.4/lib/utils_fips.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_fips.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * FIPS mode utilities * - * Copyright (C) 2011-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2011-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_fips.h cryptsetup-2.3.6/lib/utils_fips.h --- cryptsetup-2.3.4/lib/utils_fips.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_fips.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * FIPS mode utilities * - * Copyright (C) 2011-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2011-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_io.c cryptsetup-2.3.6/lib/utils_io.c --- cryptsetup-2.3.4/lib/utils_io.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_io.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_io.h cryptsetup-2.3.6/lib/utils_io.h --- cryptsetup-2.3.4/lib/utils_io.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_io.h 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_keyring.c cryptsetup-2.3.6/lib/utils_keyring.c --- cryptsetup-2.3.4/lib/utils_keyring.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_keyring.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * kernel keyring utilities * - * Copyright (C) 2016-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2016-2020 Ondrej Kozina + * Copyright (C) 2016-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2016-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_keyring.h cryptsetup-2.3.6/lib/utils_keyring.h --- cryptsetup-2.3.4/lib/utils_keyring.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_keyring.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * kernel keyring syscall wrappers * - * Copyright (C) 2016-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2016-2020 Ondrej Kozina + * Copyright (C) 2016-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2016-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_loop.c cryptsetup-2.3.6/lib/utils_loop.c --- cryptsetup-2.3.4/lib/utils_loop.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_loop.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * loopback block device utilities * - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -234,8 +234,9 @@ if (stat(loop, &st) || !S_ISBLK(st.st_mode)) return NULL; - snprintf(buf, sizeof(buf), "/sys/dev/block/%d:%d/loop/backing_file", - major(st.st_rdev), minor(st.st_rdev)); + if (snprintf(buf, sizeof(buf), "/sys/dev/block/%d:%d/loop/backing_file", + major(st.st_rdev), minor(st.st_rdev)) < 0) + return NULL; fd = open(buf, O_RDONLY); if (fd < 0) diff -Nru cryptsetup-2.3.4/lib/utils_loop.h cryptsetup-2.3.6/lib/utils_loop.h --- cryptsetup-2.3.4/lib/utils_loop.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_loop.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * loopback block device utilities * - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_pbkdf.c cryptsetup-2.3.6/lib/utils_pbkdf.c --- cryptsetup-2.3.4/lib/utils_pbkdf.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_pbkdf.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * utils_pbkdf - PBKDF settings for libcryptsetup * - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/utils_safe_memory.c cryptsetup-2.3.6/lib/utils_safe_memory.c --- cryptsetup-2.3.4/lib/utils_safe_memory.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_safe_memory.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * utils_safe_memory - safe memory helpers * - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -66,6 +66,7 @@ void crypt_safe_free(void *data) { struct safe_allocation *alloc; + volatile size_t *s; if (!data) return; @@ -75,7 +76,8 @@ crypt_safe_memzero(data, alloc->size); - alloc->size = 0x55aa55aa; + s = (volatile size_t *)&alloc->size; + *s = 0x55aa55aa; free(alloc); } diff -Nru cryptsetup-2.3.4/lib/utils_storage_wrappers.c cryptsetup-2.3.6/lib/utils_storage_wrappers.c --- cryptsetup-2.3.4/lib/utils_storage_wrappers.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_storage_wrappers.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,7 +2,7 @@ * Generic wrapper for storage functions * (experimental only) * - * Copyright (C) 2018-2020, Ondrej Kozina + * Copyright (C) 2018-2021, Ondrej Kozina * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -199,7 +199,7 @@ goto err; } - if (!strcmp(_cipher, "cipher_null")) { + if (crypt_is_cipher_null(_cipher)) { log_dbg(cd, "Requested cipher_null, switching to noop wrapper."); w->type = NONE; *cw = w; diff -Nru cryptsetup-2.3.4/lib/utils_storage_wrappers.h cryptsetup-2.3.6/lib/utils_storage_wrappers.h --- cryptsetup-2.3.4/lib/utils_storage_wrappers.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_storage_wrappers.h 2021-05-28 04:57:08.000000000 -0500 @@ -2,7 +2,7 @@ * Generic wrapper for storage functions * (experimental only) * - * Copyright (C) 2018-2020, Ondrej Kozina + * Copyright (C) 2018-2021, Ondrej Kozina * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -22,6 +22,9 @@ #ifndef _UTILS_STORAGE_WRAPPERS_H #define _UTILS_STORAGE_WRAPPERS_H +#include +#include + struct crypt_storage_wrapper; struct device; struct volume_key; diff -Nru cryptsetup-2.3.4/lib/utils_wipe.c cryptsetup-2.3.6/lib/utils_wipe.c --- cryptsetup-2.3.4/lib/utils_wipe.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/utils_wipe.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,8 +2,8 @@ * utils_wipe - wipe a device * * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/lib/verity/rs_decode_char.c cryptsetup-2.3.6/lib/verity/rs_decode_char.c --- cryptsetup-2.3.4/lib/verity/rs_decode_char.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/verity/rs_decode_char.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,7 +3,7 @@ * * Copyright (C) 2002, Phil Karn, KA9Q * libcryptsetup modifications - * Copyright (C) 2017-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2017-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/verity/rs_encode_char.c cryptsetup-2.3.6/lib/verity/rs_encode_char.c --- cryptsetup-2.3.4/lib/verity/rs_encode_char.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/verity/rs_encode_char.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,7 +3,7 @@ * * Copyright (C) 2002, Phil Karn, KA9Q * libcryptsetup modifications - * Copyright (C) 2017-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2017-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/verity/rs.h cryptsetup-2.3.6/lib/verity/rs.h --- cryptsetup-2.3.4/lib/verity/rs.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/verity/rs.h 2021-05-28 04:57:08.000000000 -0500 @@ -3,7 +3,7 @@ * * Copyright (C) 2004 Phil Karn, KA9Q * libcryptsetup modifications - * Copyright (C) 2017-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2017-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -Nru cryptsetup-2.3.4/lib/verity/verity.c cryptsetup-2.3.6/lib/verity/verity.c --- cryptsetup-2.3.4/lib/verity/verity.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/verity/verity.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * dm-verity volume handling * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -23,6 +23,7 @@ #include #include #include +#include #include #include #include @@ -145,6 +146,13 @@ return 0; } +static void _to_lower(char *str) +{ + for(; *str; str++) + if (isupper(*str)) + *str = tolower(*str); +} + /* Write verity superblock to disk */ int VERITY_write_sb(struct crypt_device *cd, uint64_t sb_offset, @@ -154,6 +162,7 @@ struct device *device = crypt_metadata_device(cd); struct verity_sb sb = {}; ssize_t hdr_size = sizeof(struct verity_sb); + size_t block_size; char *algorithm; uuid_t uuid; int r, devfd; @@ -173,6 +182,13 @@ return -EINVAL; } + /* Avoid possible increasing of image size - FEC could fail later because of it */ + block_size = device_block_size(cd, device); + if (block_size > params->hash_block_size) { + device_disable_direct_io(device); + block_size = params->hash_block_size; + } + devfd = device_open(cd, device, O_RDWR); if (devfd < 0) { log_err(cd, _("Cannot open device %s."), device_path(device)); @@ -186,13 +202,17 @@ sb.hash_block_size = cpu_to_le32(params->hash_block_size); sb.salt_size = cpu_to_le16(params->salt_size); sb.data_blocks = cpu_to_le64(params->data_size); + + /* Kernel always use lower-case */ algorithm = (char *)sb.algorithm; - algorithm[sizeof(sb.algorithm)-1] = '\0'; strncpy(algorithm, params->hash_name, sizeof(sb.algorithm)-1); + algorithm[sizeof(sb.algorithm)-1] = '\0'; + _to_lower(algorithm); + memcpy(sb.salt, params->salt, params->salt_size); memcpy(sb.uuid, uuid, sizeof(sb.uuid)); - r = write_lseek_blockwise(devfd, device_block_size(cd, device), device_alignment(device), + r = write_lseek_blockwise(devfd, block_size, device_alignment(device), (char*)&sb, hdr_size, sb_offset) < hdr_size ? -EIO : 0; if (r) log_err(cd, _("Error during update of verity header on device %s."), @@ -241,7 +261,7 @@ { uint32_t dmv_flags; unsigned int fec_errors = 0; - int r; + int r, v; struct crypt_dm_active_device dmd = { .size = verity_hdr->data_size * verity_hdr->data_block_size / 512, .flags = activation_flags, @@ -260,14 +280,19 @@ log_dbg(cd, "Verification of data in userspace required."); r = VERITY_verify(cd, verity_hdr, root_hash, root_hash_size); - if (r == -EPERM && fec_device) { + if ((r == -EPERM || r == -EFAULT) && fec_device) { + v = r; log_dbg(cd, "Verification failed, trying to repair with FEC device."); r = VERITY_FEC_process(cd, verity_hdr, fec_device, 1, &fec_errors); if (r < 0) log_err(cd, _("Errors cannot be repaired with FEC device.")); - else if (fec_errors) + else if (fec_errors) { log_err(cd, _("Found %u repairable errors with FEC device."), fec_errors); + /* If root hash failed, we cannot be sure it was properly repaired */ + } + if (v == -EFAULT) + r = -EPERM; } if (r < 0) @@ -298,7 +323,7 @@ crypt_metadata_device(cd), fec_device, root_hash, root_hash_size, signature_description, VERITY_hash_offset_block(verity_hdr), - VERITY_hash_blocks(cd, verity_hdr), verity_hdr); + VERITY_FEC_blocks(cd, fec_device, verity_hdr), verity_hdr); if (r) return r; diff -Nru cryptsetup-2.3.4/lib/verity/verity_fec.c cryptsetup-2.3.6/lib/verity/verity_fec.c --- cryptsetup-2.3.4/lib/verity/verity_fec.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/verity/verity_fec.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,7 +2,7 @@ * dm-verity Forward Error Correction (FEC) support * * Copyright (C) 2015 Google, Inc. All rights reserved. - * Copyright (C) 2017-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2017-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -134,8 +134,11 @@ /* calculate the total area covered by error correction codes */ ctx.size = 0; - for (n = 0; n < ctx.ninputs; ++n) + for (n = 0; n < ctx.ninputs; ++n) { + log_dbg(cd, "FEC input %s, offset %" PRIu64 " [bytes], length %" PRIu64 " [bytes]", + device_path(ctx.inputs[n].device), ctx.inputs[n].start, ctx.inputs[n].count); ctx.size += ctx.inputs[n].count; + } /* each byte in a data block is covered by a different code */ ctx.blocks = FEC_div_round_up(ctx.size, ctx.block_size); @@ -203,8 +206,8 @@ struct device *fec_device, int check_fec, unsigned int *errors) { - int r; - int fd = -1; + int r = -EIO, fd = -1; + size_t ninputs = FEC_INPUT_DEVICES; struct fec_input_device inputs[FEC_INPUT_DEVICES] = { { .device = crypt_data_device(cd), @@ -214,7 +217,8 @@ },{ .device = crypt_metadata_device(cd), .fd = -1, - .start = VERITY_hash_offset_block(params) * params->data_block_size + .start = VERITY_hash_offset_block(params) * params->data_block_size, + .count = (VERITY_FEC_blocks(cd, fec_device, params) - params->data_size) * params->data_block_size } }; @@ -230,7 +234,12 @@ return -EINVAL; } - r = -EIO; + if (!inputs[0].count) { + log_err(cd, _("Invalid FEC segment length.")); + return -EINVAL; + } + if (!inputs[1].count) + ninputs--; if (check_fec) fd = open(device_path(fec_device), O_RDONLY); @@ -259,16 +268,7 @@ goto out; } - /* cover the entire hash device starting from hash_offset */ - r = device_size(inputs[1].device, &inputs[1].count); - if (r) { - log_err(cd, _("Failed to determine size for device %s."), - device_path(inputs[1].device)); - goto out; - } - inputs[1].count -= inputs[1].start; - - r = FEC_process_inputs(cd, params, inputs, FEC_INPUT_DEVICES, fd, check_fec, errors); + r = FEC_process_inputs(cd, params, inputs, ninputs, fd, check_fec, errors); out: if (inputs[0].fd != -1) close(inputs[0].fd); @@ -279,3 +279,38 @@ return r; } + +uint64_t VERITY_FEC_blocks(struct crypt_device *cd, + struct device *fec_device, + struct crypt_params_verity *params) +{ + uint64_t blocks = 0; + + /* + * FEC covers this data: + * | protected data | hash area | padding (optional foreign metadata) | + * + * If hash device is in a separate image, metadata covers the whole rest of the image after hash area. + * If hash and FEC device is in the image, metadata ends on the FEC area offset. + */ + if (device_is_identical(crypt_metadata_device(cd), fec_device) > 0) { + log_dbg(cd, "FEC and hash device is the same."); + blocks = params->fec_area_offset; + } else { + /* cover the entire hash device starting from hash_offset */ + if (device_size(crypt_metadata_device(cd), &blocks)) { + log_err(cd, _("Failed to determine size for device %s."), + device_path(crypt_metadata_device(cd))); + return 0; + } + } + + blocks /= params->data_block_size; + if (blocks) + blocks -= VERITY_hash_offset_block(params); + + /* Protected data */ + blocks += params->data_size; + + return blocks; +} diff -Nru cryptsetup-2.3.4/lib/verity/verity.h cryptsetup-2.3.6/lib/verity/verity.h --- cryptsetup-2.3.4/lib/verity/verity.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/verity/verity.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * dm-verity volume handling * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -71,6 +71,10 @@ uint64_t VERITY_hash_blocks(struct crypt_device *cd, struct crypt_params_verity *params); +uint64_t VERITY_FEC_blocks(struct crypt_device *cd, + struct device *fec_device, + struct crypt_params_verity *params); + int VERITY_UUID_generate(struct crypt_device *cd, char **uuid_string); #endif diff -Nru cryptsetup-2.3.4/lib/verity/verity_hash.c cryptsetup-2.3.6/lib/verity/verity_hash.c --- cryptsetup-2.3.4/lib/verity/verity_hash.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/verity/verity_hash.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * dm-verity volume handling * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. * * This file is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -89,20 +89,12 @@ return r; } -static int mult_overflow(off_t *u, off_t b, size_t size) -{ - *u = (uint64_t)b * size; - if ((off_t)(*u / size) != b || (off_t)*u < 0) - return 1; - return 0; -} - static int hash_levels(size_t hash_block_size, size_t digest_size, - off_t data_file_blocks, off_t *hash_position, int *levels, - off_t *hash_level_block, off_t *hash_level_size) + uint64_t data_file_blocks, uint64_t *hash_position, int *levels, + uint64_t *hash_level_block, uint64_t *hash_level_size) { size_t hash_per_block_bits; - off_t s, s_shift; + uint64_t s, s_shift; int i; if (!digest_size) @@ -127,11 +119,10 @@ s_shift = (i + 1) * hash_per_block_bits; if (s_shift > 63) return -EINVAL; - s = (data_file_blocks + ((off_t)1 << s_shift) - 1) >> ((i + 1) * hash_per_block_bits); + s = (data_file_blocks + ((uint64_t)1 << s_shift) - 1) >> ((i + 1) * hash_per_block_bits); if (hash_level_size) hash_level_size[i] = s; - if ((*hash_position + s) < *hash_position || - (*hash_position + s) < 0) + if ((*hash_position + s) < *hash_position) return -EINVAL; *hash_position += s; } @@ -140,9 +131,9 @@ } static int create_or_verify(struct crypt_device *cd, FILE *rd, FILE *wr, - off_t data_block, size_t data_block_size, - off_t hash_block, size_t hash_block_size, - off_t blocks, int version, + uint64_t data_block, size_t data_block_size, + uint64_t hash_block, size_t hash_block_size, + uint64_t blocks, int version, const char *hash_name, int verify, char *calculated_digest, size_t digest_size, const char *salt, size_t salt_size) @@ -152,14 +143,14 @@ char read_digest[digest_size]; size_t hash_per_block = 1 << get_bits_down(hash_block_size / digest_size); size_t digest_size_full = 1 << get_bits_up(digest_size); - off_t blocks_to_write = (blocks + hash_per_block - 1) / hash_per_block; - off_t seek_rd, seek_wr; + uint64_t blocks_to_write = (blocks + hash_per_block - 1) / hash_per_block; + uint64_t seek_rd, seek_wr; size_t left_bytes; unsigned i; int r; - if (mult_overflow(&seek_rd, data_block, data_block_size) || - mult_overflow(&seek_wr, hash_block, hash_block_size)) { + if (uint64_mult_overflow(&seek_rd, data_block, data_block_size) || + uint64_mult_overflow(&seek_wr, hash_block, hash_block_size)) { log_err(cd, _("Device offset overflow.")); return -EINVAL; } @@ -241,86 +232,68 @@ return 0; } -static int VERITY_create_or_verify_hash(struct crypt_device *cd, - int verify, - int version, - const char *hash_name, - struct device *hash_device, - struct device *data_device, - size_t hash_block_size, - size_t data_block_size, - off_t data_blocks, - off_t hash_position, - char *root_hash, - size_t digest_size, - const char *salt, - size_t salt_size) +static int VERITY_create_or_verify_hash(struct crypt_device *cd, bool verify, + struct crypt_params_verity *params, + char *root_hash, size_t digest_size) { char calculated_digest[digest_size]; FILE *data_file = NULL; FILE *hash_file = NULL, *hash_file_2; - off_t hash_level_block[VERITY_MAX_LEVELS]; - off_t hash_level_size[VERITY_MAX_LEVELS]; - off_t data_file_blocks; - off_t data_device_size = 0, hash_device_size = 0; + uint64_t hash_level_block[VERITY_MAX_LEVELS]; + uint64_t hash_level_size[VERITY_MAX_LEVELS]; + uint64_t data_file_blocks; + uint64_t data_device_offset_max = 0, hash_device_offset_max = 0; + uint64_t hash_position = VERITY_hash_offset_block(params); uint64_t dev_size; int levels, i, r; log_dbg(cd, "Hash %s %s, data device %s, data blocks %" PRIu64 ", hash_device %s, offset %" PRIu64 ".", - verify ? "verification" : "creation", hash_name, - device_path(data_device), data_blocks, - device_path(hash_device), hash_position); - - if (data_blocks < 0 || hash_position < 0) { - log_err(cd, _("Invalid size parameters for verity device.")); - return -EINVAL; - } + verify ? "verification" : "creation", params->hash_name, + device_path(crypt_data_device(cd)), params->data_size, + device_path(crypt_metadata_device(cd)), hash_position); - if (!data_blocks) { - r = device_size(data_device, &dev_size); + if (!params->data_size) { + r = device_size(crypt_data_device(cd), &dev_size); if (r < 0) return r; - data_file_blocks = dev_size / data_block_size; + data_file_blocks = dev_size / params->data_block_size; } else - data_file_blocks = data_blocks; + data_file_blocks = params->data_size; - if (mult_overflow(&data_device_size, data_blocks, data_block_size)) { + if (uint64_mult_overflow(&data_device_offset_max, params->data_size, params->data_block_size)) { log_err(cd, _("Device offset overflow.")); return -EINVAL; } + log_dbg(cd, "Data device size required: %" PRIu64 " bytes.", data_device_offset_max); - if (hash_levels(hash_block_size, digest_size, data_file_blocks, &hash_position, + if (hash_levels(params->hash_block_size, digest_size, data_file_blocks, &hash_position, &levels, &hash_level_block[0], &hash_level_size[0])) { log_err(cd, _("Hash area overflow.")); return -EINVAL; } - - log_dbg(cd, "Using %d hash levels.", levels); - - if (mult_overflow(&hash_device_size, hash_position, hash_block_size)) { + if (uint64_mult_overflow(&hash_device_offset_max, hash_position, params->hash_block_size)) { log_err(cd, _("Device offset overflow.")); return -EINVAL; } + log_dbg(cd, "Hash device size required: %" PRIu64 " bytes.", + hash_device_offset_max - params->hash_area_offset); + log_dbg(cd, "Using %d hash levels.", levels); - log_dbg(cd, "Data device size required: %" PRIu64 " bytes.", - data_device_size); - data_file = fopen(device_path(data_device), "r"); + data_file = fopen(device_path(crypt_data_device(cd)), "r"); if (!data_file) { log_err(cd, _("Cannot open device %s."), - device_path(data_device) + device_path(crypt_data_device(cd)) ); r = -EIO; goto out; } - log_dbg(cd, "Hash device size required: %" PRIu64 " bytes.", - hash_device_size); - hash_file = fopen(device_path(hash_device), verify ? "r" : "r+"); + hash_file = fopen(device_path(crypt_metadata_device(cd)), verify ? "r" : "r+"); if (!hash_file) { log_err(cd, _("Cannot open device %s."), - device_path(hash_device)); + device_path(crypt_metadata_device(cd))); r = -EIO; goto out; } @@ -330,25 +303,25 @@ for (i = 0; i < levels; i++) { if (!i) { r = create_or_verify(cd, data_file, hash_file, - 0, data_block_size, - hash_level_block[i], hash_block_size, - data_file_blocks, version, hash_name, verify, - calculated_digest, digest_size, salt, salt_size); + 0, params->data_block_size, + hash_level_block[i], params->hash_block_size, + data_file_blocks, params->hash_type, params->hash_name, verify, + calculated_digest, digest_size, params->salt, params->salt_size); if (r) goto out; } else { - hash_file_2 = fopen(device_path(hash_device), "r"); + hash_file_2 = fopen(device_path(crypt_metadata_device(cd)), "r"); if (!hash_file_2) { log_err(cd, _("Cannot open device %s."), - device_path(hash_device)); + device_path(crypt_metadata_device(cd))); r = -EIO; goto out; } r = create_or_verify(cd, hash_file_2, hash_file, - hash_level_block[i - 1], hash_block_size, - hash_level_block[i], hash_block_size, - hash_level_size[i - 1], version, hash_name, verify, - calculated_digest, digest_size, salt, salt_size); + hash_level_block[i - 1], params->hash_block_size, + hash_level_block[i], params->hash_block_size, + hash_level_size[i - 1], params->hash_type, params->hash_name, verify, + calculated_digest, digest_size, params->salt, params->salt_size); fclose(hash_file_2); if (r) goto out; @@ -357,23 +330,23 @@ if (levels) r = create_or_verify(cd, hash_file, NULL, - hash_level_block[levels - 1], hash_block_size, - 0, hash_block_size, - 1, version, hash_name, verify, - calculated_digest, digest_size, salt, salt_size); + hash_level_block[levels - 1], params->hash_block_size, + 0, params->hash_block_size, + 1, params->hash_type, params->hash_name, verify, + calculated_digest, digest_size, params->salt, params->salt_size); else r = create_or_verify(cd, data_file, NULL, - 0, data_block_size, - 0, hash_block_size, - data_file_blocks, version, hash_name, verify, - calculated_digest, digest_size, salt, salt_size); + 0, params->data_block_size, + 0, params->hash_block_size, + data_file_blocks, params->hash_type, params->hash_name, verify, + calculated_digest, digest_size, params->salt, params->salt_size); out: if (verify) { if (r) log_err(cd, _("Verification of data area failed.")); else { log_dbg(cd, "Verification of data area succeeded."); - r = memcmp(root_hash, calculated_digest, digest_size) ? -EPERM : 0; + r = memcmp(root_hash, calculated_digest, digest_size) ? -EFAULT : 0; if (r) log_err(cd, _("Verification of root hash failed.")); else @@ -403,19 +376,7 @@ const char *root_hash, size_t root_hash_size) { - return VERITY_create_or_verify_hash(cd, 1, - verity_hdr->hash_type, - verity_hdr->hash_name, - crypt_metadata_device(cd), - crypt_data_device(cd), - verity_hdr->hash_block_size, - verity_hdr->data_block_size, - verity_hdr->data_size, - VERITY_hash_offset_block(verity_hdr), - CONST_CAST(char*)root_hash, - root_hash_size, - verity_hdr->salt, - verity_hdr->salt_size); + return VERITY_create_or_verify_hash(cd, 1, verity_hdr, CONST_CAST(char*)root_hash, root_hash_size); } /* Create verity hash */ @@ -433,24 +394,12 @@ log_err(cd, _("WARNING: Kernel cannot activate device if data " "block size exceeds page size (%u)."), pgsize); - return VERITY_create_or_verify_hash(cd, 0, - verity_hdr->hash_type, - verity_hdr->hash_name, - crypt_metadata_device(cd), - crypt_data_device(cd), - verity_hdr->hash_block_size, - verity_hdr->data_block_size, - verity_hdr->data_size, - VERITY_hash_offset_block(verity_hdr), - CONST_CAST(char*)root_hash, - root_hash_size, - verity_hdr->salt, - verity_hdr->salt_size); + return VERITY_create_or_verify_hash(cd, 0, verity_hdr, CONST_CAST(char*)root_hash, root_hash_size); } uint64_t VERITY_hash_blocks(struct crypt_device *cd, struct crypt_params_verity *params) { - off_t hash_position = 0; + uint64_t hash_position = 0; int levels = 0; if (hash_levels(params->hash_block_size, crypt_get_volume_key_size(cd), diff -Nru cryptsetup-2.3.4/lib/volumekey.c cryptsetup-2.3.6/lib/volumekey.c --- cryptsetup-2.3.4/lib/volumekey.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/lib/volumekey.c 2021-05-28 04:57:08.000000000 -0500 @@ -2,7 +2,7 @@ * cryptsetup volume key implementation * * Copyright (C) 2004-2006 Clemens Fruhwirth - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/man/cryptsetup.8 cryptsetup-2.3.6/man/cryptsetup.8 --- cryptsetup-2.3.4/man/cryptsetup.8 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/man/cryptsetup.8 2021-05-28 04:57:08.000000000 -0500 @@ -1,4 +1,4 @@ -.TH CRYPTSETUP "8" "January 2019" "cryptsetup" "Maintenance Commands" +.TH CRYPTSETUP "8" "January 2021" "cryptsetup" "Maintenance Commands" .SH NAME cryptsetup - manage plain dm-crypt and LUKS encrypted volumes .SH SYNOPSIS @@ -63,7 +63,7 @@ container creation. If you do not know how to do that, the cryptsetup FAQ describes several options. -.SH BASIC COMMANDS +.SH BASIC ACTIONS The following are valid actions for all supported device types. \fIopen\fR \-\-type @@ -142,11 +142,11 @@ devices: LUKS1, LUKS2 (including authenticated encryption), plain crypt and loopaes. -Mandatory parametrs are identical to those of an open action for respective +Mandatory parameters are identical to those of an open action for respective device type. You may change following parameters on all devices \-\-perf\-same_cpu_crypt, -\-\-perf\-submit_from_crypt_cpus, \-\-perf-no_read_workqueue, \-\-no_write_workqueue +\-\-perf\-submit_from_crypt_cpus, \-\-perf-no_read_workqueue, \-\-perf-no_write_workqueue and \-\-allow\-discards. Refreshing device without any optional parameter will refresh the device @@ -280,7 +280,9 @@ give '-' as file name, which results in the passphrase being read from stdin and the safety-question being skipped. -You can only call luksFormat on a LUKS device that is not mapped. +You cannot call luksFormat on a device or filesystem that is mapped or in use, +e.g. mounted filesysem, used in LVM, active RAID member etc. +The device or filesystem has to be un-mounted in order to call luksFormat. To use LUKS2, specify \fI\-\-type luks2\fR. @@ -715,12 +717,17 @@ \fB\fR can be [\-\-key\-file, \-\-tcrypt\-hidden, \-\-tcrypt\-system, \-\-tcrypt\-backup, \-\-readonly, \-\-test\-passphrase, -\-\-allow-discards, \-\-veracrypt, \-\-veracrypt\-pim, \-\-veracrypt\-query\-pim]. +\-\-allow-discards, \-\-veracrypt, \-\-veracrypt\-pim, \-\-veracrypt\-query\-pim, +\-\-header]. The keyfile parameter allows a combination of file content with the passphrase and can be repeated. Note that using keyfiles is compatible with TCRYPT and is different from LUKS keyfile logic. +If you use \fB\-\-header\fR in combination with hidden or system options, +the header file must contain specific headers on the same positions as the original +encrypted container. + \fBWARNING:\fR Option \fB\-\-allow\-discards\fR cannot be combined with option \fB\-\-tcrypt\-hidden\fR. For normal mapping, it can cause the \fBdestruction of hidden volume\fR (hidden volume appears as unused space @@ -836,8 +843,7 @@ If \-\-debug\-json is used, additional LUKS2 JSON data structures are printed. .TP .B "\-\-type -Specifies required device type, for more info -read \fIBASIC COMMANDS\fR section. +Specifies required device type, for more info read \fIBASIC ACTIONS\fR section. .TP .B "\-\-hash, \-h \fI\fR" Specifies the passphrase hash for \fIopen\fR (for plain and @@ -1093,7 +1099,7 @@ all parameters directly, use \fI\-\-pbkdf\-force\-iterations\fR with \fI\-\-pbkdf\-memory\fR and \fI\-\-pbkdf\-parallel\fR. This will override the values without benchmarking. -Note it can cause extremely long unlocking time. Use only is specified +Note it can cause extremely long unlocking time. Use only in specific cases, for example, if you know that the formatted device will be used on some small embedded system. In this case, the LUKS PBKDF2 digest will be set to the minimum iteration count. @@ -1447,7 +1453,8 @@ Reencryption resilience mode can be one of \fIchecksum\fR, \fIjournal\fR or \fInone\fR. \fIchecksum\fR: default mode, where individual checksums of ciphertext hotzone sectors are stored, -so the recovery process can detect which sectors where already reencrypted. It requires that the device sector write is atomic. +so the recovery process can detect which sectors where already reencrypted. +It requires that the device sector write is atomic. \fIjournal\fR: the hotzone is journaled in the binary area (so the data are written twice). @@ -1457,7 +1464,8 @@ The option is ignored if reencryption with datashift mode is in progress. .TP .B "\-\-resilience-hash " -The hash algorithm used with "\-\-resilience checksum" only. The default hash is sha256. With other resilience modes, the hash parameter is ignored. +The hash algorithm used with "\-\-resilience checksum" only. +The default hash is sha256. With other resilience modes, the hash parameter is ignored. .TP .B "\-\-hotzone-size " This option can be used to set an upper limit on the size of reencryption area (hotzone). @@ -1466,17 +1474,21 @@ available memory). .TP .B "\-\-reduce\-device\-size " -Initialize LUKS2 reencryption with data device size reduction (currently only \-\-encrypt variant is supported). +Initialize LUKS2 reencryption with data device size reduction +(currently only \-\-encrypt variant is supported). -Last sectors of will be used to properly initialize device reencryption. That means any -data at last sectors will be lost. +Last sectors of will be used to properly initialize device reencryption. +That means any data at last sectors will be lost. -It could be useful if you added some space to underlying partition or logical volume (so last sectors contains no data). +It could be useful if you added some space to underlying partition or logical volume +(so last sectors contains no data). -Recommended minimal size is twice the default LUKS2 header size (\-\-reduce\-device\-size 32M) for \-\-encrypt use case. Be sure to -have enough (at least \-\-reduce\-device\-size value of free space at the end of ). +Recommended minimal size is twice the default LUKS2 header size (\-\-reduce\-device\-size 32M) +for \-\-encrypt use case. Be sure to have enough (at least \-\-reduce\-device\-size value + of free space at the end of ). -WARNING: This is a destructive operation and cannot be reverted. Use with extreme care - accidentally overwritten filesystems are usually unrecoverable. +WARNING: This is a destructive operation and cannot be reverted. +Use with extreme care - accidentally overwritten filesystems are usually unrecoverable. .TP .B "\-\-version" Show the program version. @@ -1486,6 +1498,28 @@ .TP .B "\-\-help, \-?" Show help text and default parameters. +.SH EXAMPLE +.TP +Example 1: Create LUKS 2 container on block device /dev/sdX. +sudo cryptsetup --type luks2 luksFormat /dev/sdX +.TP +Example 2: Add an additional passphrase to key slot 5. +sudo cryptsetup luksAddKey --key-slot 5 /dev/sdX +.TP +Example 3: Create LUKS header backup and save it to file. +sudo cryptsetup luksHeaderBackup /dev/sdX --header-backup-file /var/tmp/NameOfBackupFile +.TP +Example 4: Open LUKS contaner on /dev/sdX and map it to sdX_crypt. +sudo cryptsetup open /dev/sdX sdX_crypt +.TP +.B WARNING: The command in example 5 will erase all key slots. +Your cannot use your luks container afterwards anymore unless you have a backup to restore. +.TP +Example 5: Erase all key slots on /dev/sdX. +sudo cryptsetup erase /dev/sdX +.TP +Example 6: Restore LUKS header from backup file. +sudo cryptsetup luksHeaderRestore /dev/sdX --header-backup-file /var/tmp/NameOfBackupFile .SH RETURN CODES Cryptsetup returns 0 on success and a non-zero value on error. @@ -1659,7 +1693,10 @@ \fBWARNING:\fR All support for authenticated modes is experimental and there are only some modes available for now. Note that there are a very few authenticated encryption algorithms that are suitable -for disk encryption. +for disk encryption. You also cannot use CRC32 or any other non-cryptographic +checksums (other than the special integrity mode "none"). If for some reason +you want to have integrity control without using authentication mode, then you +should separately configure dm-integrity independently of LUKS2. .SH NOTES ON LOOPBACK DEVICE USE Cryptsetup is usually used directly on a block device (disk @@ -1713,9 +1750,9 @@ .br Copyright \(co 2012-2014 Arno Wagner .br -Copyright \(co 2009-2020 Red Hat, Inc. +Copyright \(co 2009-2021 Red Hat, Inc. .br -Copyright \(co 2009-2020 Milan Broz +Copyright \(co 2009-2021 Milan Broz This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. @@ -1728,5 +1765,6 @@ The cryptsetup mailing list and list archive, see FAQ entry 1.6. -The LUKS on-disk format specification available at -\fBhttps://gitlab.com/cryptsetup/cryptsetup/wikis/Specification\fR +The LUKS version 1 on-disk format specification available at +\fBhttps://gitlab.com/cryptsetup/cryptsetup/wikis/Specification\fR and +LUKS version 2 at \fBhttps://gitlab.com/cryptsetup/LUKS2-docs\fR. diff -Nru cryptsetup-2.3.4/man/cryptsetup-reencrypt.8 cryptsetup-2.3.6/man/cryptsetup-reencrypt.8 --- cryptsetup-2.3.4/man/cryptsetup-reencrypt.8 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/man/cryptsetup-reencrypt.8 2021-05-28 04:57:08.000000000 -0500 @@ -1,4 +1,4 @@ -.TH CRYPTSETUP-REENCRYPT "8" "January 2019" "cryptsetup-reencrypt" "Maintenance Commands" +.TH CRYPTSETUP-REENCRYPT "8" "January 2021" "cryptsetup-reencrypt" "Maintenance Commands" .SH NAME cryptsetup-reencrypt - tool for offline LUKS device re-encryption .SH SYNOPSIS @@ -285,9 +285,9 @@ .SH AUTHORS Cryptsetup-reencrypt was written by Milan Broz . .SH COPYRIGHT -Copyright \(co 2012-2020 Milan Broz +Copyright \(co 2012-2021 Milan Broz .br -Copyright \(co 2012-2020 Red Hat, Inc. +Copyright \(co 2012-2021 Red Hat, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff -Nru cryptsetup-2.3.4/man/integritysetup.8 cryptsetup-2.3.6/man/integritysetup.8 --- cryptsetup-2.3.4/man/integritysetup.8 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/man/integritysetup.8 2021-05-28 04:57:08.000000000 -0500 @@ -1,4 +1,4 @@ -.TH INTEGRITYSETUP "8" "January 2019" "integritysetup" "Maintenance Commands" +.TH INTEGRITYSETUP "8" "January 2021" "integritysetup" "Maintenance Commands" .SH NAME integritysetup - manage dm-integrity (block level integrity) volumes .SH SYNOPSIS @@ -118,7 +118,7 @@ For HMAC (hmac-sha256) you have also to specify an integrity key and its size. .TP .B "\-\-integrity\-key\-size BYTES" -The size of the data integrity key. +The size of the data integrity key. Maximum is 4096 bytes. .TP .B "\-\-integrity\-key\-file FILE" The file with the integrity key. @@ -158,7 +158,7 @@ See \-\-integrity option for detailed specification. .TP .B "\-\-journal\-integrity\-key\-size BYTES" -The size of the journal integrity key. +The size of the journal integrity key. Maximum is 4096 bytes. .TP .B "\-\-journal\-integrity\-key\-file FILE" The file with the integrity key. @@ -169,7 +169,7 @@ a stream cipher, for example, chacha20 or ctr-aes. .TP .B "\-\-journal\-crypt\-key\-size BYTES" -The size of the journal encryption key. +The size of the journal encryption key. Maximum is 4096 bytes. .TP .B "\-\-journal\-crypt\-key\-file FILE" The file with the journal encryption key. @@ -184,6 +184,21 @@ Format and activation of an integrity device always require superuser privilege because the superblock is calculated and handled in dm-integrity kernel target. +.SH LEGACY COMPATIBILITY OPTIONS +.TP +\fBWARNING:\fR +Do not use these options until you need compatibility with specific old kernel. +.TP +.B "\-\-integrity\-legacy\-padding" +Use inefficient legacy padding. +.TP +.B "\-\-integrity\-legacy\-hmac" +Use old flawed HMAC calclation (also does not protect superblock). +.TP +.B "\-\-integrity\-legacy\-recalculate" +Allow insecure recalculating of volumes with HMAC keys (recalcualtion offset in superblock +is not protected). + .SH RETURN CODES Integritysetup returns 0 on success and a non-zero value on error. @@ -227,9 +242,9 @@ The integritysetup tool is written by Milan Broz and is part of the cryptsetup project. .SH COPYRIGHT -Copyright \(co 2016-2020 Red Hat, Inc. +Copyright \(co 2016-2021 Red Hat, Inc. .br -Copyright \(co 2016-2020 Milan Broz +Copyright \(co 2016-2021 Milan Broz This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff -Nru cryptsetup-2.3.4/man/veritysetup.8 cryptsetup-2.3.6/man/veritysetup.8 --- cryptsetup-2.3.4/man/veritysetup.8 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/man/veritysetup.8 2021-05-28 04:57:08.000000000 -0500 @@ -1,4 +1,4 @@ -.TH VERITYSETUP "8" "January 2019" "veritysetup" "Maintenance Commands" +.TH VERITYSETUP "8" "January 2021" "veritysetup" "Maintenance Commands" .SH NAME veritysetup - manage dm-verity (block level verification) volumes .SH SYNOPSIS @@ -158,7 +158,18 @@ The fec device argument can be block device or file image. For format, if fec device path doesn't exist, it will be created as file. -Note: block sizes for data and hash devices must match. Also, if the verity data_device is encrypted the fec_device should be too. +Block sizes for data and hash devices must match. +Also, if the verity data_device is encrypted the fec_device should be too. + +FEC calculation covers data, hash area, and optional foreign metadata stored on the same +device with the hash tree (additional space after hash area). +Size of this optional additional area protected by FEC is calculated from image sizes, +so you must be sure that you use the same images for activation. + +If the hash device is in a separate image, metadata covers the whole rest of the image after the hash area. + +If hash and FEC device is in the image, metadata ends on the FEC area offset. + .TP .B "\-\-fec-offset=bytes" This is the offset, in bytes, from the start of the FEC device to the beginning of the encoding data. @@ -221,9 +232,9 @@ This version is based on verification code written by Mikulas Patocka and rewritten for libcryptsetup by Milan Broz . .SH COPYRIGHT -Copyright \(co 2012-2020 Red Hat, Inc. +Copyright \(co 2012-2021 Red Hat, Inc. .br -Copyright \(co 2012-2020 Milan Broz +Copyright \(co 2012-2021 Milan Broz This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff -Nru cryptsetup-2.3.4/misc/luks2_keyslot_example/keyslot_test.c cryptsetup-2.3.6/misc/luks2_keyslot_example/keyslot_test.c --- cryptsetup-2.3.4/misc/luks2_keyslot_example/keyslot_test.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/misc/luks2_keyslot_example/keyslot_test.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * Example of LUKS2 kesylot handler (EXAMPLE) * - * Copyright (C) 2016-2020 Milan Broz + * Copyright (C) 2016-2021 Milan Broz * * Use: * - generate LUKS device diff -Nru cryptsetup-2.3.4/misc/luks2_keyslot_example/keyslot_test_remote_pass.c cryptsetup-2.3.6/misc/luks2_keyslot_example/keyslot_test_remote_pass.c --- cryptsetup-2.3.4/misc/luks2_keyslot_example/keyslot_test_remote_pass.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/misc/luks2_keyslot_example/keyslot_test_remote_pass.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * Example of LUKS2 token storing third party metadata (EXAMPLE) * - * Copyright (C) 2016-2020 Milan Broz + * Copyright (C) 2016-2021 Milan Broz * * Use: * - generate LUKS device diff -Nru cryptsetup-2.3.4/po/cryptsetup.pot cryptsetup-2.3.6/po/cryptsetup.pot --- cryptsetup-2.3.4/po/cryptsetup.pot 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/cryptsetup.pot 2021-05-28 04:57:08.000000000 -0500 @@ -5,9 +5,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.4-rc0\n" +"Project-Id-Version: cryptsetup 2.3.6-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-08-27 21:34+0200\n" +"POT-Creation-Date: 2021-05-21 17:33+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -16,62 +16,62 @@ "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: lib/libdevmapper.c:405 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "" -#: lib/libdevmapper.c:408 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "" -#: lib/libdevmapper.c:1149 +#: lib/libdevmapper.c:1180 msgid "Requested deferred flag is not supported." msgstr "" -#: lib/libdevmapper.c:1216 +#: lib/libdevmapper.c:1249 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "" -#: lib/libdevmapper.c:1547 +#: lib/libdevmapper.c:1580 msgid "Unknown dm target type." msgstr "" -#: lib/libdevmapper.c:1660 lib/libdevmapper.c:1665 lib/libdevmapper.c:1725 -#: lib/libdevmapper.c:1728 +#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766 +#: lib/libdevmapper.c:1769 msgid "Requested dm-crypt performance options are not supported." msgstr "" -#: lib/libdevmapper.c:1672 lib/libdevmapper.c:1676 +#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "" -#: lib/libdevmapper.c:1680 +#: lib/libdevmapper.c:1721 msgid "Requested dm-verity FEC options are not supported." msgstr "" -#: lib/libdevmapper.c:1684 +#: lib/libdevmapper.c:1725 msgid "Requested data integrity options are not supported." msgstr "" -#: lib/libdevmapper.c:1686 +#: lib/libdevmapper.c:1727 msgid "Requested sector_size option is not supported." msgstr "" -#: lib/libdevmapper.c:1691 +#: lib/libdevmapper.c:1732 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "" -#: lib/libdevmapper.c:1695 lib/libdevmapper.c:1731 lib/libdevmapper.c:1734 +#: lib/libdevmapper.c:1736 lib/libdevmapper.c:1772 lib/libdevmapper.c:1775 #: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "" -#: lib/libdevmapper.c:1699 +#: lib/libdevmapper.c:1740 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "" -#: lib/libdevmapper.c:2663 +#: lib/libdevmapper.c:2713 #, c-format msgid "Failed to query dm-%s segment." msgstr "" @@ -112,7 +112,7 @@ msgid "Cannot initialize crypto backend." msgstr "" -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "" @@ -126,7 +126,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "" @@ -134,7 +134,7 @@ msgid "This operation is supported only for LUKS2 device." msgstr "" -#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2347 msgid "All key slots full." msgstr "" @@ -148,7 +148,7 @@ msgid "Key slot %d is full, please select another one." msgstr "" -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "" @@ -157,7 +157,7 @@ msgid "Header detected but device %s is too small." msgstr "" -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "" @@ -165,17 +165,13 @@ 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 #, c-format msgid "Unsupported LUKS version %d." msgstr "" -#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 -msgid "Detached metadata device is not supported for this crypt type." -msgstr "" - -#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628 -#: lib/setup.c:2777 lib/setup.c:4517 +#: lib/setup.c:1427 lib/setup.c:2547 lib/setup.c:2619 lib/setup.c:2631 +#: lib/setup.c:2785 lib/setup.c:4532 #, c-format msgid "Device %s is not active." msgstr "" @@ -189,7 +185,7 @@ msgid "Invalid plain crypt parameters." msgstr "" -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 msgid "Invalid key size." msgstr "" @@ -197,12 +193,16 @@ msgid "UUID is not supported for this crypt type." msgstr "" +#: lib/setup.c:1539 lib/setup.c:1959 +msgid "Detached metadata device is not supported for this crypt type." +msgstr "" + #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1238 src/cryptsetup.c:3945 +#: src/cryptsetup.c:1296 src/cryptsetup.c:4037 msgid "Unsupported encryption sector size." msgstr "" -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "" @@ -248,8 +248,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "" -#: lib/setup.c:1882 lib/utils_device.c:834 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:2358 lib/luks2/luks2_reencrypt.c:3383 #, c-format msgid "Device %s is too small." msgstr "" @@ -282,16 +282,16 @@ msgid "Can't format VERITY without device." msgstr "" -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "" -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "" -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "" @@ -323,236 +323,236 @@ msgid "Unknown crypt device type %s requested." msgstr "" -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "" -#: 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:2410 +#: lib/luks2/luks2_reencrypt.c:2753 #, c-format msgid "Mismatching parameters on device %s." msgstr "" -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3161 #, c-format msgid "Failed to reload device %s." msgstr "" -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "" -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3096 lib/luks2/luks2_reencrypt.c:3165 #, c-format msgid "Failed to resume device %s." msgstr "" -#: 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 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "" -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "" -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "" -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "" -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "" -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "" -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "" -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 +#: lib/setup.c:3128 #, c-format -msgid "Volume %s is not suspended." +msgid "Resume is not supported for device %s." msgstr "" -#: lib/setup.c:3146 +#: lib/setup.c:3130 #, c-format -msgid "Resume is not supported for device %s." +msgid "Error during resuming device %s." msgstr "" -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3164 lib/setup.c:3212 lib/setup.c:3282 #, c-format -msgid "Error during resuming device %s." +msgid "Volume %s is not suspended." msgstr "" -#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4314 lib/setup.c:4327 -#: lib/setup.c:4335 lib/setup.c:4348 lib/setup.c:4698 lib/setup.c:5844 +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5862 msgid "Volume key does not match the volume." msgstr "" -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "" -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "" -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "" -#: lib/setup.c:3675 src/cryptsetup.c:1584 src/cryptsetup.c:1929 +#: lib/setup.c:3679 src/cryptsetup.c:1634 src/cryptsetup.c:1979 #, c-format msgid "Keyslot %d is not active." msgstr "" -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "" -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "" -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2253 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2852 msgid "Failed to get reencryption lock." msgstr "" -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2871 msgid "LUKS2 reencryption recovery failed." msgstr "" -#: lib/setup.c:4127 lib/setup.c:4384 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "" -#: lib/setup.c:4175 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "" -#: lib/setup.c:4182 +#: lib/setup.c:4192 #, c-format msgid "Cannot use device %s, name is invalid or still in use." msgstr "" -#: lib/setup.c:4301 +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "" -#: lib/setup.c:4410 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "" -#: lib/setup.c:4417 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "" -#: lib/setup.c:4426 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "" -#: lib/setup.c:4443 lib/setup.c:5920 +#: lib/setup.c:4458 lib/setup.c:5938 msgid "Failed to load key in kernel keyring." msgstr "" -#: lib/setup.c:4496 lib/setup.c:4512 lib/luks2/luks2_json_metadata.c:2306 -#: src/cryptsetup.c:2676 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2744 #, c-format msgid "Device %s is still in use." msgstr "" -#: lib/setup.c:4521 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "" -#: lib/setup.c:4637 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "" -#: lib/setup.c:4645 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "" -#: lib/setup.c:4662 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "" -#: lib/setup.c:4664 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "" -#: lib/setup.c:4870 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "" -#: lib/setup.c:5195 +#: lib/setup.c:5213 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "" -#: lib/setup.c:5480 +#: lib/setup.c:5498 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "" -#: lib/setup.c:5777 +#: lib/setup.c:5795 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "" -#: lib/setup.c:5850 +#: lib/setup.c:5868 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "" -#: lib/setup.c:5856 +#: lib/setup.c:5874 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "" -#: lib/setup.c:5987 +#: lib/setup.c:6005 msgid "Kernel keyring is not supported by the kernel." msgstr "" -#: lib/setup.c:5997 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6015 lib/luks2/luks2_reencrypt.c:2968 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "" -#: lib/setup.c:6021 +#: lib/setup.c:6039 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "" @@ -580,8 +580,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "" -#: 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 msgid "Out of memory while reading passphrase." msgstr "" @@ -601,58 +601,58 @@ msgid "Cannot read requested amount of data." msgstr "" -#: 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 #, c-format msgid "Device %s does not exist or access denied." msgstr "" -#: lib/utils_device.c:197 +#: lib/utils_device.c:200 #, c-format msgid "Device %s is not compatible." msgstr "" -#: lib/utils_device.c:532 +#: lib/utils_device.c:544 #, c-format msgid "Ignoring bogus optimal-io size for data device (%u bytes)." msgstr "" -#: lib/utils_device.c:648 +#: lib/utils_device.c:666 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "" -#: lib/utils_device.c:729 +#: lib/utils_device.c:747 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "" -#: lib/utils_device.c:733 +#: lib/utils_device.c:751 #, c-format msgid "Cannot use device %s, permission denied." msgstr "" -#: lib/utils_device.c:736 +#: lib/utils_device.c:754 #, c-format msgid "Cannot get info about device %s." msgstr "" -#: lib/utils_device.c:759 +#: lib/utils_device.c:777 msgid "Cannot use a loopback device, running as non-root user." msgstr "" -#: lib/utils_device.c:769 +#: lib/utils_device.c:787 msgid "" "Attaching loopback device failed (loop device with autoclear flag is " "required)." msgstr "" -#: lib/utils_device.c:815 +#: lib/utils_device.c:833 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "" -#: lib/utils_device.c:823 +#: lib/utils_device.c:841 #, c-format msgid "Device %s has zero size." msgstr "" @@ -729,7 +729,8 @@ #: 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 @@ -738,8 +739,8 @@ "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 msgid "Cannot seek to device offset." msgstr "" @@ -764,7 +765,7 @@ msgstr "" #: lib/luks1/keyencryption.c:97 lib/luks1/keymanage.c:344 -#: lib/luks1/keymanage.c:635 lib/luks1/keymanage.c:1080 +#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1094 #: lib/luks2/luks2_json_metadata.c:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." @@ -784,12 +785,12 @@ msgstr "" #: 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:1263 -#: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "" @@ -810,13 +811,13 @@ msgid "LUKS keyslot %u is invalid." msgstr "" -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 -#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1445 -#: src/cryptsetup.c:1571 src/cryptsetup.c:1628 src/cryptsetup.c:1684 -#: src/cryptsetup.c:1751 src/cryptsetup.c:1854 src/cryptsetup.c:1918 -#: src/cryptsetup.c:2148 src/cryptsetup.c:2343 src/cryptsetup.c:2403 -#: src/cryptsetup.c:2469 src/cryptsetup.c:2633 src/cryptsetup.c:3291 -#: src/cryptsetup.c:3300 src/cryptsetup_reencrypt.c:1388 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1495 +#: src/cryptsetup.c:1621 src/cryptsetup.c:1678 src/cryptsetup.c:1734 +#: src/cryptsetup.c:1801 src/cryptsetup.c:1904 src/cryptsetup.c:1968 +#: src/cryptsetup.c:2198 src/cryptsetup.c:2409 src/cryptsetup.c:2471 +#: src/cryptsetup.c:2537 src/cryptsetup.c:2701 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3386 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "" @@ -840,7 +841,7 @@ msgid "Backup file does not contain valid LUKS header." msgstr "" -#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549 +#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:556 #: lib/luks2/luks2_json_metadata.c:1190 #, c-format msgid "Cannot open header backup file %s." @@ -882,102 +883,102 @@ msgid "Non standard key size, manual repair required." msgstr "" -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "" -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "" -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "" -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "" -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "" -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "" -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "" -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "" -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "" -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1145 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1188 msgid "No known problems detected for LUKS header." msgstr "" -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "" -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "" -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "" "Data offset for LUKS header must be either 0 or higher than header size." msgstr "" -#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825 -#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1009 -#: src/cryptsetup.c:2796 +#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832 +#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2864 msgid "Wrong LUKS UUID format provided." msgstr "" -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "" -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "" -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "" -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "" -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "" -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "" @@ -1013,11 +1014,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "" -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1022 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059 msgid "Required kernel crypto interface not available." msgstr "" -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1024 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "" @@ -1043,154 +1044,168 @@ msgid "This function is not supported without TCRYPT header load." msgstr "" -#: 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 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "" -#: 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:515 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "" -#: lib/bitlk/bitlk.c:523 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "" -#: lib/bitlk/bitlk.c:548 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "" -#: lib/bitlk/bitlk.c:599 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "" -#: lib/bitlk/bitlk.c:632 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "" -#: lib/bitlk/bitlk.c:926 +#: 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 msgid "This operation is not supported." msgstr "" -#: lib/bitlk/bitlk.c:934 +#: lib/bitlk/bitlk.c:1079 msgid "Unexpected key data size." msgstr "" -#: lib/bitlk/bitlk.c:988 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "" -#: lib/bitlk/bitlk.c:994 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "" -#: lib/bitlk/bitlk.c:1076 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "" -#: lib/bitlk/bitlk.c:1212 +#: lib/bitlk/bitlk.c:1370 msgid "" "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "" -#: lib/bitlk/bitlk.c:1216 +#: 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 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "" -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "" -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "" -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "" -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "" -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "" -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "" -#: 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 msgid "Kernel does not support dm-verity mapping." msgstr "" -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "" -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "" @@ -1199,41 +1214,37 @@ msgid "Spare area is not zeroed at position %." msgstr "" -#: 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 msgid "Device offset overflow." msgstr "" -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "" -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "" - -#: 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 msgid "Verification of data area failed." msgstr "" -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "" -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "" -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "" -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "" "WARNING: Kernel cannot activate device if data block size exceeds page size " @@ -1244,51 +1255,61 @@ msgid "Failed to allocate RS context." msgstr "" -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "" -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % 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 %." msgstr "" -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "" -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." 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 #, c-format msgid "Failed to determine size for device %s." msgstr "" -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355 msgid "Kernel does not support dm-integrity mapping." msgstr "" -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "" +#: 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:967 #: lib/luks2/luks2_json_metadata.c:1252 #, c-format @@ -1310,7 +1331,7 @@ msgid "Requested data offset is too small." msgstr "" -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "" "WARNING: keyslots area (% bytes) is very small, available LUKS2 " @@ -1396,7 +1417,7 @@ msgid "Reencryption in-progress. Cannot deactivate device." msgstr "" -#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3206 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "" @@ -1512,7 +1533,7 @@ #: 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:3046 msgid "Failed to initialize old segment storage wrapper." msgstr "" @@ -1524,7 +1545,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "" -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3054 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "" @@ -1569,556 +1590,570 @@ msgid "Failed to set new keyslots area size." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2318 +#: lib/luks2/luks2_reencrypt.c:2320 #, c-format msgid "" "Data shift is not aligned to requested encryption sector size (% " "bytes)." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2339 +#: lib/luks2/luks2_reencrypt.c:2341 #, c-format msgid "" "Data device is not aligned to requested encryption sector size (% " "bytes)." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2360 +#: lib/luks2/luks2_reencrypt.c:2362 #, c-format msgid "" "Data shift (% sectors) is less than future data offset (% " "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:2368 lib/luks2/luks2_reencrypt.c:2795 +#: lib/luks2/luks2_reencrypt.c:2816 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2534 +#: lib/luks2/luks2_reencrypt.c:2536 msgid "Device not marked for LUKS2 reencryption." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2542 lib/luks2/luks2_reencrypt.c:3311 msgid "Failed to load LUKS2 reencryption context." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2619 +#: lib/luks2/luks2_reencrypt.c:2621 msgid "Failed to get reencryption state." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2623 +#: lib/luks2/luks2_reencrypt.c:2625 msgid "Device is not in reencryption." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2630 +#: lib/luks2/luks2_reencrypt.c:2632 msgid "Reencryption process is already running." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2632 +#: lib/luks2/luks2_reencrypt.c:2634 msgid "Failed to acquire reencryption lock." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2650 +#: lib/luks2/luks2_reencrypt.c:2652 msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2766 msgid "Active device size and requested reencryption size don't match." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2780 msgid "Illegal device size requested in reencryption parameters." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2922 msgid "LUKS2 reencryption already initialized in metadata." msgstr "" -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2929 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3020 msgid "Failed to set device segments for next reencryption hotzone." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3062 msgid "Failed to write reencryption resilience metadata." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3069 msgid "Decryption failed." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3074 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3079 msgid "Failed to sync data." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3087 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3154 msgid "Failed to write LUKS2 metadata." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3177 msgid "Failed to wipe backup segment data." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3190 msgid "Failed to disable reencryption requirement flag." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3198 #, c-format msgid "" "Fatal error while reencrypting chunk starting at %, % " "sectors long." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3207 msgid "Do not resume the device unless replaced with error target manually." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3256 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3262 msgid "Missing or invalid reencrypt context." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3269 msgid "Failed to initialize reencryption device stack." msgstr "" -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3288 lib/luks2/luks2_reencrypt.c:3324 msgid "Failed to update reencryption context." msgstr "" -#: lib/luks2/luks2_token.c:262 +#: lib/luks2/luks2_token.c:263 msgid "No free token slot." msgstr "" -#: lib/luks2/luks2_token.c:269 +#: lib/luks2/luks2_token.c:270 #, c-format msgid "Failed to create builtin token %s." msgstr "" -#: src/cryptsetup.c:166 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "" -#: src/cryptsetup.c:229 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "" -#: src/cryptsetup.c:259 src/cryptsetup.c:971 src/cryptsetup.c:1281 -#: src/cryptsetup.c:3157 src/cryptsetup_reencrypt.c:723 -#: src/cryptsetup_reencrypt.c:793 +#: src/cryptsetup.c:291 src/cryptsetup.c:1006 src/cryptsetup.c:1339 +#: src/cryptsetup.c:3245 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "" -#: src/cryptsetup.c:267 +#: src/cryptsetup.c:299 msgid "" "WARNING: The --hash parameter is being ignored in plain mode with keyfile " "specified.\n" msgstr "" -#: src/cryptsetup.c:275 +#: 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 "" -#: src/cryptsetup.c:315 +#: src/cryptsetup.c:347 #, c-format msgid "" "Detected device signature(s) on %s. Proceeding further may damage existing " "data." msgstr "" -#: src/cryptsetup.c:321 src/cryptsetup.c:1102 src/cryptsetup.c:1154 -#: src/cryptsetup.c:1258 src/cryptsetup.c:1331 src/cryptsetup.c:1986 -#: src/cryptsetup.c:2694 src/cryptsetup.c:2817 src/integritysetup.c:233 +#: src/cryptsetup.c:353 src/cryptsetup.c:1145 src/cryptsetup.c:1197 +#: src/cryptsetup.c:1316 src/cryptsetup.c:1389 src/cryptsetup.c:2036 +#: src/cryptsetup.c:2762 src/cryptsetup.c:2886 src/integritysetup.c:242 msgid "Operation aborted.\n" msgstr "" -#: src/cryptsetup.c:389 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "" -#: src/cryptsetup.c:442 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "" -#: src/cryptsetup.c:451 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "" -#: src/cryptsetup.c:454 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "" -#: src/cryptsetup.c:457 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "" -#: src/cryptsetup.c:480 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "" -#: src/cryptsetup.c:549 +#: src/cryptsetup.c:582 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "" -#: src/cryptsetup.c:584 +#: src/cryptsetup.c:617 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" "This dump should be always stored encrypted on safe place." msgstr "" -#: src/cryptsetup.c:681 +#: src/cryptsetup.c:714 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "" -#: src/cryptsetup.c:709 +#: src/cryptsetup.c:742 msgid "" "Resize of active device requires volume key in keyring but --disable-keyring " "option is set." msgstr "" -#: src/cryptsetup.c:850 +#: src/cryptsetup.c:885 msgid "Benchmark interrupted." msgstr "" -#: src/cryptsetup.c:871 +#: src/cryptsetup.c:906 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "" -#: src/cryptsetup.c:873 +#: src/cryptsetup.c:908 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "" -#: src/cryptsetup.c:887 +#: src/cryptsetup.c:922 #, c-format msgid "%-10s N/A\n" msgstr "" -#: src/cryptsetup.c:889 +#: 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:913 +#: src/cryptsetup.c:948 msgid "Result of benchmark is not reliable." msgstr "" -#: src/cryptsetup.c:963 +#: src/cryptsetup.c:998 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:983 +#: src/cryptsetup.c:1018 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "" -#: src/cryptsetup.c:987 +#: src/cryptsetup.c:1022 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:1006 +#: src/cryptsetup.c:1041 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "" -#: src/cryptsetup.c:1015 +#: src/cryptsetup.c:1052 msgid "N/A" msgstr "" -#: src/cryptsetup.c:1095 +#: src/cryptsetup.c:1138 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" msgstr "" -#: src/cryptsetup.c:1101 +#: src/cryptsetup.c:1144 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "" -#: src/cryptsetup.c:1110 +#: src/cryptsetup.c:1153 msgid "Enter passphrase for reencryption recovery: " msgstr "" -#: src/cryptsetup.c:1153 +#: src/cryptsetup.c:1196 msgid "Really try to repair LUKS device header?" msgstr "" -#: src/cryptsetup.c:1172 src/integritysetup.c:146 +#: src/cryptsetup.c:1215 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:1194 src/integritysetup.c:168 +#: src/cryptsetup.c:1237 src/integritysetup.c:179 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "" -#: src/cryptsetup.c:1243 +#: src/cryptsetup.c:1301 msgid "Integrity option can be used only for LUKS2 format." msgstr "" -#: src/cryptsetup.c:1248 src/cryptsetup.c:1308 +#: src/cryptsetup.c:1306 src/cryptsetup.c:1366 msgid "Unsupported LUKS2 metadata size options." msgstr "" -#: src/cryptsetup.c:1265 +#: src/cryptsetup.c:1315 +msgid "Header file does not exist, do you want to create it?" +msgstr "" + +#: src/cryptsetup.c:1323 #, c-format msgid "Cannot create header file %s." msgstr "" -#: src/cryptsetup.c:1288 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:1346 src/integritysetup.c:205 src/integritysetup.c:213 +#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303 +#: src/integritysetup.c:313 msgid "No known integrity specification pattern detected." msgstr "" -#: src/cryptsetup.c:1301 +#: src/cryptsetup.c:1359 #, c-format msgid "Cannot use %s as on-disk header." msgstr "" -#: src/cryptsetup.c:1325 src/integritysetup.c:227 +#: src/cryptsetup.c:1383 src/integritysetup.c:236 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "" -#: src/cryptsetup.c:1366 src/cryptsetup.c:1700 src/cryptsetup.c:1767 -#: src/cryptsetup.c:1869 src/cryptsetup.c:1935 src/cryptsetup_reencrypt.c:553 +#: src/cryptsetup.c:1416 src/cryptsetup.c:1750 src/cryptsetup.c:1817 +#: src/cryptsetup.c:1919 src/cryptsetup.c:1985 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "" -#: src/cryptsetup.c:1451 +#: src/cryptsetup.c:1501 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "" -#: src/cryptsetup.c:1462 src/cryptsetup.c:1773 +#: src/cryptsetup.c:1512 src/cryptsetup.c:1823 msgid "" "Cannot determine volume key size for LUKS without keyslots, please use --key-" "size option." msgstr "" -#: src/cryptsetup.c:1500 +#: src/cryptsetup.c:1550 msgid "Device activated but cannot make flags persistent." msgstr "" -#: src/cryptsetup.c:1581 src/cryptsetup.c:1651 +#: src/cryptsetup.c:1631 src/cryptsetup.c:1701 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "" -#: src/cryptsetup.c:1593 src/cryptsetup.c:1654 +#: src/cryptsetup.c:1643 src/cryptsetup.c:1704 msgid "" "This is the last keyslot. Device will become unusable after purging this key." msgstr "" -#: src/cryptsetup.c:1594 +#: src/cryptsetup.c:1644 msgid "Enter any remaining passphrase: " msgstr "" -#: src/cryptsetup.c:1595 src/cryptsetup.c:1656 +#: src/cryptsetup.c:1645 src/cryptsetup.c:1706 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "" -#: src/cryptsetup.c:1633 +#: src/cryptsetup.c:1683 msgid "Enter passphrase to be deleted: " msgstr "" -#: src/cryptsetup.c:1714 src/cryptsetup.c:1788 src/cryptsetup.c:1822 +#: src/cryptsetup.c:1764 src/cryptsetup.c:1838 src/cryptsetup.c:1872 msgid "Enter new passphrase for key slot: " msgstr "" -#: src/cryptsetup.c:1805 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1855 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "" -#: src/cryptsetup.c:1873 +#: src/cryptsetup.c:1923 msgid "Enter passphrase to be changed: " msgstr "" -#: src/cryptsetup.c:1889 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1939 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "" -#: src/cryptsetup.c:1939 +#: src/cryptsetup.c:1989 msgid "Enter passphrase for keyslot to be converted: " msgstr "" -#: src/cryptsetup.c:1963 +#: src/cryptsetup.c:2013 msgid "Only one device argument for isLuks operation is supported." msgstr "" -#: src/cryptsetup.c:2013 +#: src/cryptsetup.c:2063 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" "This dump should be stored encrypted in a safe place." msgstr "" -#: src/cryptsetup.c:2078 +#: src/cryptsetup.c:2128 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "" -#: src/cryptsetup.c:2084 +#: src/cryptsetup.c:2134 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." msgstr "" -#: src/cryptsetup.c:2219 src/cryptsetup.c:2240 +#: src/cryptsetup.c:2223 src/cryptsetup.c:2252 +#, c-format +msgid "%s is not active %s device name." +msgstr "" + +#: src/cryptsetup.c:2247 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "" + +#: src/cryptsetup.c:2285 src/cryptsetup.c:2306 msgid "Option --header-backup-file is required." msgstr "" -#: src/cryptsetup.c:2270 +#: src/cryptsetup.c:2336 #, c-format msgid "%s is not cryptsetup managed device." msgstr "" -#: src/cryptsetup.c:2281 +#: src/cryptsetup.c:2347 #, c-format msgid "Refresh is not supported for device type %s" msgstr "" -#: src/cryptsetup.c:2323 +#: src/cryptsetup.c:2389 #, c-format msgid "Unrecognized metadata device type %s." msgstr "" -#: src/cryptsetup.c:2326 +#: src/cryptsetup.c:2392 msgid "Command requires device and mapped name as arguments." msgstr "" -#: src/cryptsetup.c:2348 +#: src/cryptsetup.c:2414 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" "Device will become unusable after this operation." msgstr "" -#: src/cryptsetup.c:2355 +#: src/cryptsetup.c:2421 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "" -#: src/cryptsetup.c:2392 +#: src/cryptsetup.c:2460 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "" -#: src/cryptsetup.c:2410 +#: src/cryptsetup.c:2478 #, c-format msgid "Device is already %s type." msgstr "" -#: src/cryptsetup.c:2415 +#: src/cryptsetup.c:2483 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "" -#: src/cryptsetup.c:2421 +#: src/cryptsetup.c:2489 msgid "Operation aborted, device was NOT converted.\n" msgstr "" -#: src/cryptsetup.c:2461 +#: src/cryptsetup.c:2529 msgid "Option --priority, --label or --subsystem is missing." msgstr "" -#: src/cryptsetup.c:2495 src/cryptsetup.c:2528 src/cryptsetup.c:2551 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2596 src/cryptsetup.c:2619 #, c-format msgid "Token %d is invalid." msgstr "" -#: src/cryptsetup.c:2498 src/cryptsetup.c:2554 +#: src/cryptsetup.c:2566 src/cryptsetup.c:2622 #, c-format msgid "Token %d in use." msgstr "" -#: src/cryptsetup.c:2505 +#: src/cryptsetup.c:2573 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "" -#: src/cryptsetup.c:2514 src/cryptsetup.c:2576 +#: src/cryptsetup.c:2582 src/cryptsetup.c:2644 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "" -#: src/cryptsetup.c:2531 +#: src/cryptsetup.c:2599 #, c-format msgid "Token %d is not in use." msgstr "" -#: src/cryptsetup.c:2566 +#: src/cryptsetup.c:2634 msgid "Failed to import token from file." msgstr "" -#: src/cryptsetup.c:2591 +#: src/cryptsetup.c:2659 #, c-format msgid "Failed to get token %d for export." msgstr "" -#: src/cryptsetup.c:2606 +#: src/cryptsetup.c:2674 msgid "--key-description parameter is mandatory for token add action." msgstr "" -#: src/cryptsetup.c:2612 src/cryptsetup.c:2620 +#: src/cryptsetup.c:2680 src/cryptsetup.c:2688 msgid "Action requires specific token. Use --token-id parameter." msgstr "" -#: src/cryptsetup.c:2625 +#: src/cryptsetup.c:2693 #, c-format msgid "Invalid token operation %s." msgstr "" -#: src/cryptsetup.c:2680 +#: src/cryptsetup.c:2748 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "" -#: src/cryptsetup.c:2684 +#: src/cryptsetup.c:2752 #, c-format msgid "Device %s is not a block device.\n" msgstr "" -#: src/cryptsetup.c:2686 +#: src/cryptsetup.c:2754 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "" -#: src/cryptsetup.c:2688 +#: src/cryptsetup.c:2756 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2127,252 +2162,261 @@ "To run reencryption in online mode, use --active-name parameter instead.\n" msgstr "" -#: src/cryptsetup.c:2768 +#: src/cryptsetup.c:2836 msgid "Invalid LUKS device type." msgstr "" -#: src/cryptsetup.c:2773 +#: src/cryptsetup.c:2841 msgid "" "Encryption without detached header (--header) is not possible without data " "device size reduction (--reduce-device-size)." msgstr "" -#: src/cryptsetup.c:2778 +#: src/cryptsetup.c:2846 msgid "" "Requested data offset must be less than or equal to half of --reduce-device-" "size parameter." msgstr "" -#: src/cryptsetup.c:2787 +#: src/cryptsetup.c:2855 #, c-format msgid "" "Adjusting --reduce-device-size value to twice the --offset % " "(sectors).\n" msgstr "" -#: src/cryptsetup.c:2791 +#: src/cryptsetup.c:2859 msgid "Encryption is supported only for LUKS2 format." msgstr "" -#: src/cryptsetup.c:2813 +#: src/cryptsetup.c:2882 #, c-format msgid "" "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "" -#: src/cryptsetup.c:2828 +#: src/cryptsetup.c:2900 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "" -#: src/cryptsetup.c:2830 src/cryptsetup.c:2837 +#: src/cryptsetup.c:2902 src/cryptsetup.c:2909 #, c-format msgid "Cannot create temporary header file %s." msgstr "" -#: src/cryptsetup.c:2901 +#: src/cryptsetup.c:2976 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "" -#: src/cryptsetup.c:3065 src/cryptsetup.c:3071 +#: src/cryptsetup.c:3013 +msgid "LUKS2 decryption is supported with detached header device only." +msgstr "" + +#: src/cryptsetup.c:3146 src/cryptsetup.c:3152 msgid "Not enough free keyslots for reencryption." msgstr "" -#: src/cryptsetup.c:3091 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3172 src/cryptsetup_reencrypt.c:1312 msgid "" "Key file can be used only with --key-slot or with exactly one key slot " "active." msgstr "" -#: src/cryptsetup.c:3100 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3181 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "" -#: src/cryptsetup.c:3108 +#: src/cryptsetup.c:3190 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "" -#: src/cryptsetup.c:3283 +#: src/cryptsetup.c:3236 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "" + +#: src/cryptsetup.c:3369 msgid "Command requires device as argument." msgstr "" -#: src/cryptsetup.c:3305 +#: src/cryptsetup.c:3391 msgid "" "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt " "tool for LUKS1." msgstr "" -#: src/cryptsetup.c:3317 +#: src/cryptsetup.c:3403 msgid "" "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt " "utility." msgstr "" -#: src/cryptsetup.c:3327 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3413 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "" -#: src/cryptsetup.c:3335 +#: src/cryptsetup.c:3421 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "" -#: src/cryptsetup.c:3339 +#: src/cryptsetup.c:3425 msgid "LUKS2 device is not in reencryption." msgstr "" -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3452 msgid " [--type ] []" msgstr "" -#: src/cryptsetup.c:3366 src/veritysetup.c:399 src/integritysetup.c:480 +#: src/cryptsetup.c:3452 src/veritysetup.c:408 src/integritysetup.c:493 msgid "open device as " msgstr "" -#: src/cryptsetup.c:3367 src/cryptsetup.c:3368 src/cryptsetup.c:3369 -#: src/veritysetup.c:400 src/veritysetup.c:401 src/integritysetup.c:481 -#: src/integritysetup.c:482 +#: src/cryptsetup.c:3453 src/cryptsetup.c:3454 src/cryptsetup.c:3455 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494 +#: src/integritysetup.c:495 msgid "" msgstr "" -#: src/cryptsetup.c:3367 src/veritysetup.c:400 src/integritysetup.c:481 +#: src/cryptsetup.c:3453 src/veritysetup.c:409 src/integritysetup.c:494 msgid "close device (remove mapping)" msgstr "" -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3454 msgid "resize active device" msgstr "" -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3455 msgid "show device status" msgstr "" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "[--cipher ]" msgstr "" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "benchmark cipher" msgstr "" -#: src/cryptsetup.c:3371 src/cryptsetup.c:3372 src/cryptsetup.c:3373 -#: src/cryptsetup.c:3374 src/cryptsetup.c:3375 src/cryptsetup.c:3382 -#: src/cryptsetup.c:3383 src/cryptsetup.c:3384 src/cryptsetup.c:3385 -#: src/cryptsetup.c:3386 src/cryptsetup.c:3387 src/cryptsetup.c:3388 -#: src/cryptsetup.c:3389 src/cryptsetup.c:3390 +#: src/cryptsetup.c:3457 src/cryptsetup.c:3458 src/cryptsetup.c:3459 +#: src/cryptsetup.c:3460 src/cryptsetup.c:3461 src/cryptsetup.c:3468 +#: src/cryptsetup.c:3469 src/cryptsetup.c:3470 src/cryptsetup.c:3471 +#: src/cryptsetup.c:3472 src/cryptsetup.c:3473 src/cryptsetup.c:3474 +#: src/cryptsetup.c:3475 src/cryptsetup.c:3476 msgid "" msgstr "" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3457 msgid "try to repair on-disk metadata" msgstr "" -#: src/cryptsetup.c:3372 +#: src/cryptsetup.c:3458 msgid "reencrypt LUKS2 device" msgstr "" -#: src/cryptsetup.c:3373 +#: src/cryptsetup.c:3459 msgid "erase all keyslots (remove encryption key)" msgstr "" -#: src/cryptsetup.c:3374 +#: src/cryptsetup.c:3460 msgid "convert LUKS from/to LUKS2 format" msgstr "" -#: src/cryptsetup.c:3375 +#: src/cryptsetup.c:3461 msgid "set permanent configuration options for LUKS2" msgstr "" -#: src/cryptsetup.c:3376 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3462 src/cryptsetup.c:3463 msgid " []" msgstr "" -#: src/cryptsetup.c:3376 +#: src/cryptsetup.c:3462 msgid "formats a LUKS device" msgstr "" -#: src/cryptsetup.c:3377 +#: src/cryptsetup.c:3463 msgid "add key to LUKS device" msgstr "" -#: src/cryptsetup.c:3378 src/cryptsetup.c:3379 src/cryptsetup.c:3380 +#: src/cryptsetup.c:3464 src/cryptsetup.c:3465 src/cryptsetup.c:3466 msgid " []" msgstr "" -#: src/cryptsetup.c:3378 +#: src/cryptsetup.c:3464 msgid "removes supplied key or key file from LUKS device" msgstr "" -#: src/cryptsetup.c:3379 +#: src/cryptsetup.c:3465 msgid "changes supplied key or key file of LUKS device" msgstr "" -#: src/cryptsetup.c:3380 +#: src/cryptsetup.c:3466 msgid "converts a key to new pbkdf parameters" msgstr "" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid " " msgstr "" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid "wipes key with number from LUKS device" msgstr "" -#: src/cryptsetup.c:3382 +#: src/cryptsetup.c:3468 msgid "print UUID of LUKS device" msgstr "" -#: src/cryptsetup.c:3383 +#: src/cryptsetup.c:3469 msgid "tests for LUKS partition header" msgstr "" -#: src/cryptsetup.c:3384 +#: src/cryptsetup.c:3470 msgid "dump LUKS partition information" msgstr "" -#: src/cryptsetup.c:3385 +#: src/cryptsetup.c:3471 msgid "dump TCRYPT device information" msgstr "" -#: src/cryptsetup.c:3386 +#: src/cryptsetup.c:3472 msgid "dump BITLK device information" msgstr "" -#: src/cryptsetup.c:3387 +#: src/cryptsetup.c:3473 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "" -#: src/cryptsetup.c:3388 +#: src/cryptsetup.c:3474 msgid "Resume suspended LUKS device" msgstr "" -#: src/cryptsetup.c:3389 +#: src/cryptsetup.c:3475 msgid "Backup LUKS device header and keyslots" msgstr "" -#: src/cryptsetup.c:3390 +#: src/cryptsetup.c:3476 msgid "Restore LUKS device header and keyslots" msgstr "" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid " " msgstr "" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid "Manipulate LUKS2 tokens" msgstr "" -#: src/cryptsetup.c:3409 src/veritysetup.c:417 src/integritysetup.c:498 +#: src/cryptsetup.c:3495 src/veritysetup.c:426 src/integritysetup.c:511 msgid "" "\n" " is one of:\n" msgstr "" -#: src/cryptsetup.c:3415 +#: src/cryptsetup.c:3501 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2381,7 +2425,7 @@ "bitlkClose\n" msgstr "" -#: src/cryptsetup.c:3419 +#: src/cryptsetup.c:3505 #, c-format msgid "" "\n" @@ -2391,14 +2435,14 @@ " optional key file for the new key for luksAddKey action\n" msgstr "" -#: src/cryptsetup.c:3426 +#: src/cryptsetup.c:3512 #, c-format msgid "" "\n" "Default compiled-in metadata format is %s (for luksFormat action).\n" msgstr "" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3517 #, c-format msgid "" "\n" @@ -2410,7 +2454,7 @@ "\tIteration time: %d, Memory required: %dkB, Parallel threads: %d\n" msgstr "" -#: src/cryptsetup.c:3442 +#: src/cryptsetup.c:3528 #, c-format msgid "" "\n" @@ -2420,733 +2464,733 @@ "\tLUKS: %s, Key: %d bits, LUKS header hashing: %s, RNG: %s\n" msgstr "" -#: src/cryptsetup.c:3451 +#: src/cryptsetup.c:3537 msgid "" "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "" -#: src/cryptsetup.c:3467 src/veritysetup.c:575 src/integritysetup.c:642 +#: src/cryptsetup.c:3555 src/veritysetup.c:587 src/integritysetup.c:665 #, c-format msgid "%s: requires %s as arguments" msgstr "" -#: src/cryptsetup.c:3500 src/veritysetup.c:462 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3587 src/veritysetup.c:472 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "" -#: src/cryptsetup.c:3501 src/veritysetup.c:463 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3588 src/veritysetup.c:473 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "" -#: src/cryptsetup.c:3502 src/veritysetup.c:464 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3589 src/veritysetup.c:474 src/integritysetup.c:555 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "" -#: src/cryptsetup.c:3506 src/veritysetup.c:468 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3593 src/veritysetup.c:478 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "" -#: src/cryptsetup.c:3507 src/veritysetup.c:469 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3594 src/veritysetup.c:479 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "" -#: src/cryptsetup.c:3508 src/veritysetup.c:470 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3595 src/veritysetup.c:480 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "" -#: src/cryptsetup.c:3509 +#: src/cryptsetup.c:3596 msgid "Show debug messages including JSON metadata" msgstr "" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3597 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "" -#: src/cryptsetup.c:3511 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3598 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3599 msgid "Verifies the passphrase by asking for it twice" msgstr "" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3600 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "" -#: src/cryptsetup.c:3514 +#: src/cryptsetup.c:3601 msgid "Read the volume (master) key from file." msgstr "" -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3602 msgid "Dump volume (master) key instead of keyslots info" msgstr "" -#: src/cryptsetup.c:3516 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "" -#: src/cryptsetup.c:3516 src/cryptsetup.c:3579 src/integritysetup.c:562 -#: src/integritysetup.c:566 src/integritysetup.c:570 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup.c:3666 src/integritysetup.c:579 +#: src/integritysetup.c:583 src/integritysetup.c:587 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "" -#: src/cryptsetup.c:3517 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3604 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "" -#: src/cryptsetup.c:3517 src/cryptsetup.c:3518 src/cryptsetup.c:3519 -#: src/cryptsetup.c:3520 src/cryptsetup.c:3523 src/cryptsetup.c:3576 -#: src/cryptsetup.c:3577 src/cryptsetup.c:3585 src/cryptsetup.c:3586 -#: src/veritysetup.c:473 src/veritysetup.c:474 src/veritysetup.c:475 -#: src/veritysetup.c:478 src/veritysetup.c:479 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:3604 src/cryptsetup.c:3605 src/cryptsetup.c:3606 +#: src/cryptsetup.c:3607 src/cryptsetup.c:3610 src/cryptsetup.c:3663 +#: src/cryptsetup.c:3664 src/cryptsetup.c:3672 src/cryptsetup.c:3673 +#: 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 "" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3605 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3606 msgid "Limits the read from newly added keyfile" msgstr "" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3607 msgid "Number of bytes to skip in newly added keyfile" msgstr "" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3608 msgid "Slot number for new key (default is first free)" msgstr "" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3609 msgid "The size of the device" msgstr "" -#: src/cryptsetup.c:3522 src/cryptsetup.c:3524 src/cryptsetup.c:3525 -#: src/cryptsetup.c:3531 src/integritysetup.c:552 src/integritysetup.c:559 +#: src/cryptsetup.c:3609 src/cryptsetup.c:3611 src/cryptsetup.c:3612 +#: src/cryptsetup.c:3618 src/integritysetup.c:569 src/integritysetup.c:576 msgid "SECTORS" msgstr "" -#: src/cryptsetup.c:3523 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3610 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3611 msgid "The start offset in the backend device" msgstr "" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3612 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3613 msgid "Create a readonly mapping" msgstr "" -#: src/cryptsetup.c:3527 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3614 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3615 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "" -#: src/cryptsetup.c:3528 src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3615 src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "" -#: src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3617 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3618 msgid "Align payload at sector boundaries - for luksFormat" msgstr "" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3619 msgid "File with LUKS header and keyslots backup" msgstr "" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3620 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3621 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "" -#: src/cryptsetup.c:3535 +#: src/cryptsetup.c:3622 msgid "Share device with another non-overlapping crypt segment" msgstr "" -#: src/cryptsetup.c:3536 src/veritysetup.c:482 +#: src/cryptsetup.c:3623 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "" -#: src/cryptsetup.c:3537 src/integritysetup.c:579 +#: src/cryptsetup.c:3624 src/integritysetup.c:599 msgid "Allow discards (aka TRIM) requests for device" msgstr "" -#: src/cryptsetup.c:3538 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3625 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3626 msgid "Do not activate device, just check passphrase" msgstr "" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3627 msgid "Use hidden header (hidden TCRYPT device)" msgstr "" -#: src/cryptsetup.c:3541 +#: src/cryptsetup.c:3628 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "" -#: src/cryptsetup.c:3542 +#: src/cryptsetup.c:3629 msgid "Use backup (secondary) TCRYPT header" msgstr "" -#: src/cryptsetup.c:3543 +#: src/cryptsetup.c:3630 msgid "Scan also for VeraCrypt compatible device" msgstr "" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3631 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3632 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3633 msgid "" "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3634 msgid "Disable password quality check (if enabled)" msgstr "" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3635 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3636 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3637 msgid "Bypass dm-crypt workqueue and process read requests synchronously" msgstr "" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3638 msgid "Bypass dm-crypt workqueue and process write requests synchronously" msgstr "" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3639 msgid "Device removal is deferred until the last user closes it" msgstr "" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3640 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3641 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "" -#: src/cryptsetup.c:3554 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3641 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "" -#: src/cryptsetup.c:3555 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3642 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "" -#: src/cryptsetup.c:3558 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3645 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3646 msgid "Keyslot priority: ignore, normal, prefer" msgstr "" -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3647 msgid "Disable locking of on-disk metadata" msgstr "" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3648 msgid "Disable loading volume keys via kernel keyring" msgstr "" -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3649 msgid "Data integrity algorithm (LUKS2 only)" msgstr "" -#: src/cryptsetup.c:3563 src/integritysetup.c:573 +#: src/cryptsetup.c:3650 src/integritysetup.c:590 msgid "Disable journal for integrity device" msgstr "" -#: src/cryptsetup.c:3564 src/integritysetup.c:547 +#: src/cryptsetup.c:3651 src/integritysetup.c:564 msgid "Do not wipe device after format" msgstr "" -#: src/cryptsetup.c:3565 src/integritysetup.c:577 +#: src/cryptsetup.c:3652 src/integritysetup.c:594 msgid "Use inefficient legacy padding (old kernels)" msgstr "" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3653 msgid "Do not ask for passphrase if activation by token fails" msgstr "" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3654 msgid "Token number (default: any)" msgstr "" -#: src/cryptsetup.c:3568 +#: src/cryptsetup.c:3655 msgid "Key description" msgstr "" -#: src/cryptsetup.c:3569 +#: src/cryptsetup.c:3656 msgid "Encryption sector size (default: 512 bytes)" msgstr "" -#: src/cryptsetup.c:3570 +#: src/cryptsetup.c:3657 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "" -#: src/cryptsetup.c:3571 +#: src/cryptsetup.c:3658 msgid "Set activation flags persistent for device" msgstr "" -#: src/cryptsetup.c:3572 +#: src/cryptsetup.c:3659 msgid "Set label for the LUKS2 device" msgstr "" -#: src/cryptsetup.c:3573 +#: src/cryptsetup.c:3660 msgid "Set subsystem label for the LUKS2 device" msgstr "" -#: src/cryptsetup.c:3574 +#: src/cryptsetup.c:3661 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "" -#: src/cryptsetup.c:3575 +#: src/cryptsetup.c:3662 msgid "Read or write the json from or to a file" msgstr "" -#: src/cryptsetup.c:3576 +#: src/cryptsetup.c:3663 msgid "LUKS2 header metadata area size" msgstr "" -#: src/cryptsetup.c:3577 +#: src/cryptsetup.c:3664 msgid "LUKS2 header keyslots area size" msgstr "" -#: src/cryptsetup.c:3578 +#: src/cryptsetup.c:3665 msgid "Refresh (reactivate) device with new parameters" msgstr "" -#: src/cryptsetup.c:3579 +#: src/cryptsetup.c:3666 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "" -#: src/cryptsetup.c:3580 +#: src/cryptsetup.c:3667 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "" -#: src/cryptsetup.c:3581 +#: src/cryptsetup.c:3668 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "" -#: src/cryptsetup.c:3582 +#: src/cryptsetup.c:3669 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "" -#: src/cryptsetup.c:3583 +#: src/cryptsetup.c:3670 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "" -#: src/cryptsetup.c:3584 +#: src/cryptsetup.c:3671 msgid "Resume initialized LUKS2 reencryption only." msgstr "" -#: src/cryptsetup.c:3585 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3672 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "" -#: src/cryptsetup.c:3586 +#: src/cryptsetup.c:3673 msgid "Maximal reencryption hotzone size." msgstr "" -#: src/cryptsetup.c:3587 +#: src/cryptsetup.c:3674 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "" -#: src/cryptsetup.c:3588 +#: src/cryptsetup.c:3675 msgid "Reencryption hotzone checksums hash" msgstr "" -#: src/cryptsetup.c:3589 +#: src/cryptsetup.c:3676 msgid "Override device autodetection of dm device to be reencrypted" msgstr "" -#: src/cryptsetup.c:3605 src/veritysetup.c:505 src/integritysetup.c:595 +#: src/cryptsetup.c:3692 src/veritysetup.c:515 src/integritysetup.c:615 msgid "[OPTION...] " msgstr "" -#: src/cryptsetup.c:3656 src/veritysetup.c:539 src/integritysetup.c:606 +#: src/cryptsetup.c:3747 src/veritysetup.c:551 src/integritysetup.c:626 msgid "Argument missing." msgstr "" -#: src/cryptsetup.c:3725 src/veritysetup.c:570 src/integritysetup.c:637 +#: src/cryptsetup.c:3817 src/veritysetup.c:582 src/integritysetup.c:660 msgid "Unknown action." msgstr "" -#: src/cryptsetup.c:3735 +#: src/cryptsetup.c:3827 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "" -#: src/cryptsetup.c:3740 +#: src/cryptsetup.c:3832 msgid "Option --deferred is allowed only for close command." msgstr "" -#: src/cryptsetup.c:3745 +#: src/cryptsetup.c:3837 msgid "Option --shared is allowed only for open of plain device." msgstr "" -#: src/cryptsetup.c:3750 src/integritysetup.c:654 +#: src/cryptsetup.c:3842 src/integritysetup.c:677 msgid "Option --allow-discards is allowed only for open operation." msgstr "" -#: src/cryptsetup.c:3755 +#: src/cryptsetup.c:3847 msgid "Option --persistent is allowed only for open operation." msgstr "" -#: src/cryptsetup.c:3760 +#: src/cryptsetup.c:3852 msgid "" "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "" -#: src/cryptsetup.c:3765 +#: src/cryptsetup.c:3857 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "" -#: src/cryptsetup.c:3775 +#: src/cryptsetup.c:3867 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-" "size=(bytes)." msgstr "" -#: src/cryptsetup.c:3781 +#: src/cryptsetup.c:3873 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "" -#: src/cryptsetup.c:3786 +#: src/cryptsetup.c:3878 msgid "" "Option --integrity-no-wipe can be used only for format action with integrity " "extension." msgstr "" -#: src/cryptsetup.c:3792 +#: src/cryptsetup.c:3884 msgid "" "Options --label and --subsystem are allowed only for luksFormat and config " "LUKS2 operations." msgstr "" -#: src/cryptsetup.c:3798 +#: src/cryptsetup.c:3890 msgid "" "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK " "devices." msgstr "" -#: src/cryptsetup.c:3803 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3895 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "" -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3901 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "" -#: src/cryptsetup.c:3816 +#: src/cryptsetup.c:3908 msgid "Option --key-file takes precedence over specified key file argument." msgstr "" -#: src/cryptsetup.c:3823 src/veritysetup.c:582 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3915 src/veritysetup.c:594 src/integritysetup.c:686 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "" -#: src/cryptsetup.c:3827 +#: src/cryptsetup.c:3919 msgid "Only one --key-file argument is allowed." msgstr "" -#: src/cryptsetup.c:3831 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3923 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "" -#: src/cryptsetup.c:3835 +#: src/cryptsetup.c:3927 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "" -#: src/cryptsetup.c:3839 +#: src/cryptsetup.c:3931 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "" -#: src/cryptsetup.c:3843 +#: src/cryptsetup.c:3935 msgid "Option --align-payload is allowed only for luksFormat." msgstr "" -#: src/cryptsetup.c:3847 +#: src/cryptsetup.c:3939 msgid "" "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only " "for luksFormat with LUKS2." msgstr "" -#: src/cryptsetup.c:3852 +#: src/cryptsetup.c:3944 msgid "Invalid LUKS2 metadata size specification." msgstr "" -#: src/cryptsetup.c:3856 +#: src/cryptsetup.c:3948 msgid "Invalid LUKS2 keyslots size specification." msgstr "" -#: src/cryptsetup.c:3860 +#: src/cryptsetup.c:3952 msgid "Options --align-payload and --offset cannot be combined." msgstr "" -#: src/cryptsetup.c:3866 +#: src/cryptsetup.c:3958 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "" -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3965 msgid "" "Option --offset is supported only for open of plain and loopaes devices, " "luksFormat and device reencryption." msgstr "" -#: src/cryptsetup.c:3879 +#: src/cryptsetup.c:3971 msgid "" "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only " "for TCRYPT device." msgstr "" -#: src/cryptsetup.c:3884 +#: src/cryptsetup.c:3976 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "" -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:3981 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "" -#: src/cryptsetup.c:3895 +#: src/cryptsetup.c:3987 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "" -#: src/cryptsetup.c:3899 +#: src/cryptsetup.c:3991 msgid "" "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "" -#: src/cryptsetup.c:3907 +#: src/cryptsetup.c:3999 msgid "" "Option --veracrypt-query-pim is supported only for VeraCrypt compatible " "devices." msgstr "" -#: src/cryptsetup.c:3911 +#: src/cryptsetup.c:4003 msgid "" "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "" -#: src/cryptsetup.c:3918 +#: src/cryptsetup.c:4010 msgid "Option --priority can be only ignore/normal/prefer." msgstr "" -#: src/cryptsetup.c:3923 src/cryptsetup.c:3961 +#: src/cryptsetup.c:4015 src/cryptsetup.c:4053 msgid "Keyslot specification is required." msgstr "" -#: src/cryptsetup.c:3928 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4020 src/cryptsetup_reencrypt.c:1713 msgid "" "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/" "argon2id." msgstr "" -#: src/cryptsetup.c:3933 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4025 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "" -#: src/cryptsetup.c:3939 +#: src/cryptsetup.c:4031 msgid "Sector size option is not supported for this command." msgstr "" -#: src/cryptsetup.c:3951 +#: src/cryptsetup.c:4043 msgid "" "Large IV sectors option is supported only for opening plain type device with " "sector size larger than 512 bytes." msgstr "" -#: src/cryptsetup.c:3956 +#: src/cryptsetup.c:4048 msgid "Key size is required with --unbound option." msgstr "" -#: src/cryptsetup.c:3966 +#: src/cryptsetup.c:4058 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "" -#: src/cryptsetup.c:3971 +#: src/cryptsetup.c:4063 msgid "Option --refresh may be used only with open action." msgstr "" -#: src/cryptsetup.c:3982 +#: src/cryptsetup.c:4074 msgid "Cannot disable metadata locking." msgstr "" -#: src/cryptsetup.c:3992 +#: src/cryptsetup.c:4085 msgid "Invalid max reencryption hotzone size specification." msgstr "" -#: src/cryptsetup.c:4000 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4093 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "" -#: src/cryptsetup.c:4003 +#: src/cryptsetup.c:4096 msgid "Maximum device reduce size is 1 GiB." msgstr "" -#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4099 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "" -#: src/cryptsetup.c:4011 +#: src/cryptsetup.c:4104 msgid "Invalid data size specification." msgstr "" -#: src/cryptsetup.c:4016 +#: src/cryptsetup.c:4109 msgid "Reduce size overflow." msgstr "" -#: src/cryptsetup.c:4020 +#: src/cryptsetup.c:4113 msgid "LUKS2 decryption requires option --header." msgstr "" -#: src/cryptsetup.c:4024 +#: src/cryptsetup.c:4117 msgid "Device size must be multiple of 512 bytes sector." msgstr "" -#: src/cryptsetup.c:4028 +#: src/cryptsetup.c:4121 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "" -#: src/cryptsetup.c:4032 +#: src/cryptsetup.c:4125 msgid "Options --device-size and --size cannot be combined." msgstr "" -#: src/cryptsetup.c:4036 +#: src/cryptsetup.c:4129 msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." msgstr "" -#: src/veritysetup.c:67 +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "" -#: src/veritysetup.c:98 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "" -#: src/veritysetup.c:108 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "" -#: src/veritysetup.c:182 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "" -#: src/veritysetup.c:190 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "" -#: src/veritysetup.c:197 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "" -#: src/veritysetup.c:397 +#: src/veritysetup.c:406 msgid " " msgstr "" -#: src/veritysetup.c:397 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:492 msgid "format device" msgstr "" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid " " msgstr "" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid "verify device" msgstr "" -#: src/veritysetup.c:399 +#: src/veritysetup.c:408 msgid " " msgstr "" -#: src/veritysetup.c:401 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:495 msgid "show active device status" msgstr "" -#: src/veritysetup.c:402 +#: src/veritysetup.c:411 msgid "" msgstr "" -#: src/veritysetup.c:402 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:496 msgid "show on-disk information" msgstr "" -#: src/veritysetup.c:421 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3156,7 +3200,7 @@ " hash of the root node on \n" msgstr "" -#: src/veritysetup.c:428 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3165,140 +3209,145 @@ "Hash format: %u\n" msgstr "" -#: src/veritysetup.c:471 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "number" msgstr "" -#: src/veritysetup.c:473 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "" -#: src/veritysetup.c:474 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "" -#: src/veritysetup.c:475 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "blocks" msgstr "" -#: src/veritysetup.c:477 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "" -#: src/veritysetup.c:477 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:566 msgid "path" msgstr "" -#: src/veritysetup.c:478 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "" -#: src/veritysetup.c:479 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "string" msgstr "" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "Salt" msgstr "" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "hex string" msgstr "" -#: src/veritysetup.c:483 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "" -#: src/veritysetup.c:484 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "" -#: src/veritysetup.c:485 +#: src/veritysetup.c:495 msgid "Panic kernel if corruption is detected" msgstr "" -#: src/veritysetup.c:486 +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "" -#: src/veritysetup.c:487 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "" -#: src/veritysetup.c:488 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "" -#: src/veritysetup.c:588 +#: src/veritysetup.c:600 msgid "" "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks " "is allowed only for open operation." msgstr "" -#: src/veritysetup.c:593 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "" -#: src/veritysetup.c:598 +#: src/veritysetup.c:610 msgid "" "Option --ignore-corruption and --restart-on-corruption cannot be used " "together." msgstr "" -#: src/veritysetup.c:603 +#: src/veritysetup.c:615 msgid "" "Option --panic-on-corruption and --restart-on-corruption cannot be used " "together." msgstr "" -#: src/integritysetup.c:84 src/utils_password.c:305 +#: src/integritysetup.c:85 +#, c-format +msgid "Invalid key size. Maximum is %u bytes." +msgstr "" + +#: src/integritysetup.c:95 src/utils_password.c:339 #, c-format msgid "Cannot read keyfile %s." msgstr "" -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:99 src/utils_password.c:344 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "" -#: 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 msgid "" msgstr "" -#: src/integritysetup.c:480 +#: src/integritysetup.c:493 msgid " " msgstr "" -#: src/integritysetup.c:502 +#: src/integritysetup.c:515 #, c-format msgid "" "\n" @@ -3306,414 +3355,419 @@ " is the device containing data with integrity tags\n" msgstr "" -#: 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 msgid "The size of the data integrity key" msgstr "" -#: src/integritysetup.c:563 +#: src/integritysetup.c:580 msgid "Read the integrity key from a file" msgstr "" -#: src/integritysetup.c:565 +#: src/integritysetup.c:582 msgid "Journal integrity algorithm" msgstr "" -#: src/integritysetup.c:566 +#: src/integritysetup.c:583 msgid "The size of the journal integrity key" msgstr "" -#: src/integritysetup.c:567 +#: src/integritysetup.c:584 msgid "Read the journal integrity key from a file" msgstr "" -#: src/integritysetup.c:569 +#: src/integritysetup.c:586 msgid "Journal encryption algorithm" msgstr "" -#: src/integritysetup.c:570 +#: src/integritysetup.c:587 msgid "The size of the journal encryption key" msgstr "" -#: src/integritysetup.c:571 +#: src/integritysetup.c:588 msgid "Read the journal encryption key from a file" msgstr "" -#: 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 msgid "Option --integrity-recalculate can be used only for open action." msgstr "" -#: 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 msgid "Invalid journal size specification." msgstr "" -#: 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 msgid "Reencryption already in-progress." msgstr "" -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "" -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "" -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "" -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "" -#: 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 #, c-format msgid "Cannot write device %s." msgstr "" -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "" -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "" -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "" -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "" -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "" -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "" -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "" -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "" -#: 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 msgid "Failed to write activation flags to new header." msgstr "" -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "" -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "" -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "" -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "" -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "" -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "" -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "" -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "" -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "" -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "" -#: 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 "" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "" -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "" -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "" -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr "" -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "" -#: 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 "" -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "" -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "" "Option --new must be used together with --reduce-device-size or --header." msgstr "" -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "" "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-" "iterations." msgstr "" -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "" -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "" -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "" -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "" @@ -3754,96 +3808,96 @@ msgid "Command failed with code %i (%s).\n" msgstr "" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "" -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "" -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "" -#: 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 msgid "Failed to initialize device signature probes." msgstr "" -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "" -#: 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: % 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: % bytes) on device %s " "will be wiped." msgstr "" -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "" -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "" -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." msgstr "" -#: src/utils_password.c:43 src/utils_password.c:75 +#: src/utils_password.c:43 src/utils_password.c:76 #, c-format msgid "Cannot check password quality: %s" msgstr "" @@ -3860,46 +3914,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:228 src/utils_password.c:242 msgid "Error reading passphrase from terminal." msgstr "" -#: src/utils_password.c:206 +#: src/utils_password.c:240 msgid "Verify passphrase: " msgstr "" -#: src/utils_password.c:213 +#: src/utils_password.c:247 msgid "Passphrases do not match." msgstr "" -#: src/utils_password.c:250 +#: src/utils_password.c:284 msgid "Cannot use offset with terminal input." msgstr "" -#: src/utils_password.c:253 +#: src/utils_password.c:287 #, c-format msgid "Enter passphrase: " msgstr "" -#: src/utils_password.c:256 +#: src/utils_password.c:290 #, c-format msgid "Enter passphrase for %s: " msgstr "" -#: src/utils_password.c:287 +#: src/utils_password.c:321 msgid "No key available with this passphrase." msgstr "" -#: 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 #, c-format msgid "Cannot open keyfile %s for write." msgstr "" -#: src/utils_password.c:335 +#: src/utils_password.c:372 #, c-format msgid "Cannot write to keyfile %s." msgstr "" diff -Nru cryptsetup-2.3.4/po/cs.po cryptsetup-2.3.6/po/cs.po --- cryptsetup-2.3.4/po/cs.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/cs.po 2021-05-28 04:57:08.000000000 -0500 @@ -3,11 +3,12 @@ # This file is distributed under the same license as the cryptsetup package. # Milan Broz , 2010. # Petr Pisar , 2010, 2011, 2012, 2013, 2014, 2015, 2016. -# Petr Pisar , 2017, 2018, 2019, 2020. +# Petr Pisar , 2017, 2018, 2019, 2020, 2021. # # See `LUKS On-Disk Format Specification' document to clarify some terms. # # backing device → podpůrné zařízení +# detached header → oddědelená hlavička # digest → otisk # key slot → pozice klíče # keyring → klíčenka @@ -23,10 +24,10 @@ # msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.4-rc0\n" +"Project-Id-Version: cryptsetup 2.3.6-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-08-27 21:34+0200\n" -"PO-Revision-Date: 2020-09-01 18:10+02:00\n" +"POT-Creation-Date: 2021-05-21 17:33+0200\n" +"PO-Revision-Date: 2021-05-23 07:33+02:00\n" "Last-Translator: Petr Pisar \n" "Language-Team: Czech \n" "Language: cs\n" @@ -36,62 +37,62 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -#: lib/libdevmapper.c:405 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "Nelze inicializovat device-mapper, nespuštěno superuživatelem." -#: lib/libdevmapper.c:408 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "Nelze inicializovat device-mapper. Je jaderný modul dm_mod zaveden?" -#: lib/libdevmapper.c:1149 +#: lib/libdevmapper.c:1180 msgid "Requested deferred flag is not supported." msgstr "Požadovaný příznak pozdrženo není podporován." -#: lib/libdevmapper.c:1216 +#: lib/libdevmapper.c:1249 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "DM-UUID pro zařízení %s bylo zkráceno." -#: lib/libdevmapper.c:1547 +#: lib/libdevmapper.c:1580 msgid "Unknown dm target type." msgstr "Neznámý druh cíle DM." -#: lib/libdevmapper.c:1660 lib/libdevmapper.c:1665 lib/libdevmapper.c:1725 -#: lib/libdevmapper.c:1728 +#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766 +#: lib/libdevmapper.c:1769 msgid "Requested dm-crypt performance options are not supported." msgstr "Požadované výkonnostní volby dm-cryptu nejsou podporovány." -#: lib/libdevmapper.c:1672 lib/libdevmapper.c:1676 +#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Požadované volby, jak zacházet s poškozením dat dm-verity, nejsou podporovány." -#: lib/libdevmapper.c:1680 +#: lib/libdevmapper.c:1721 msgid "Requested dm-verity FEC options are not supported." msgstr "Požadované FEC volby dm-cryptu nejsou podporovány." -#: lib/libdevmapper.c:1684 +#: lib/libdevmapper.c:1725 msgid "Requested data integrity options are not supported." msgstr "Požadované volby integrity dat nejsou podporovány." -#: lib/libdevmapper.c:1686 +#: lib/libdevmapper.c:1727 msgid "Requested sector_size option is not supported." msgstr "Požadované volby sector_size není podporována." -#: lib/libdevmapper.c:1691 +#: lib/libdevmapper.c:1732 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "Požadovaný automatický přepočet značek integrity není podporován." -#: lib/libdevmapper.c:1695 lib/libdevmapper.c:1731 lib/libdevmapper.c:1734 +#: lib/libdevmapper.c:1736 lib/libdevmapper.c:1772 lib/libdevmapper.c:1775 #: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Zahazování (TRIM) není podporováno." -#: lib/libdevmapper.c:1699 +#: lib/libdevmapper.c:1740 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "Požadovaný režim bitmapy integrity DM není podporován." -#: lib/libdevmapper.c:2663 +#: lib/libdevmapper.c:2713 #, c-format msgid "Failed to query dm-%s segment." msgstr "Dotaz na část dm-%s selhal." @@ -134,7 +135,7 @@ msgid "Cannot initialize crypto backend." msgstr "Implementaci šifrování nelze inicializovat." -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "Hašovací algoritmus %s není podporován." @@ -148,7 +149,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "Druh zařízení nelze určit. Nekompatibilní aktivace zařízení?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "Tato operace je podporována jen u zařízení LUKS." @@ -156,7 +157,7 @@ msgid "This operation is supported only for LUKS2 device." msgstr "Tato operace je podporována jen u zařízení LUKS2." -#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2347 msgid "All key slots full." msgstr "Všechny pozice klíčů jsou obsazeny." @@ -170,7 +171,7 @@ msgid "Key slot %d is full, please select another one." msgstr "Pozice klíče %d je obsazena, prosím, vyberte jinou." -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "Velikost zařízení není zarovnaná na velikost logického sektoru zařízení." @@ -179,7 +180,7 @@ msgid "Header detected but device %s is too small." msgstr "Nalezena hlavička, ale zařízení %s je příliš malé." -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "Tato operace není na zařízení tohoto typu podporována." @@ -187,17 +188,13 @@ msgid "Illegal operation with reencryption in-progress." msgstr "Zakázaná operace spolu s probíhajícím přešifrování." -#: lib/setup.c:832 lib/luks1/keymanage.c:475 +#: lib/setup.c:832 lib/luks1/keymanage.c:482 #, c-format msgid "Unsupported LUKS version %d." msgstr "Nepodporovaná verze LUKS %d." -#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 -msgid "Detached metadata device is not supported for this crypt type." -msgstr "Zařízení s oddělenými metadaty není na šifře tohoto typu podporováno." - -#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628 -#: lib/setup.c:2777 lib/setup.c:4517 +#: lib/setup.c:1427 lib/setup.c:2547 lib/setup.c:2619 lib/setup.c:2631 +#: lib/setup.c:2785 lib/setup.c:4532 #, c-format msgid "Device %s is not active." msgstr "Zařízení %s není aktivní." @@ -211,7 +208,7 @@ msgid "Invalid plain crypt parameters." msgstr "Neplatné parametry plain šifry." -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 msgid "Invalid key size." msgstr "Neplatná velikost klíče." @@ -219,12 +216,16 @@ msgid "UUID is not supported for this crypt type." msgstr "UUID není na šifře tohoto typu podporováno." +#: lib/setup.c:1539 lib/setup.c:1959 +msgid "Detached metadata device is not supported for this crypt type." +msgstr "Zařízení s oddělenými metadaty není na šifře tohoto typu podporováno." + #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1238 src/cryptsetup.c:3945 +#: src/cryptsetup.c:1296 src/cryptsetup.c:4037 msgid "Unsupported encryption sector size." msgstr "Nepodporovaná velikost šifrovaného sektoru." -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "Velikost zařízení není zarovnaná na požadovanou velikost sektoru." @@ -268,8 +269,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "POZOR: Oblast s pozicemi klíčů pro LUKS2 změnila velikost na % bajtů.\n" -#: lib/setup.c:1882 lib/utils_device.c:834 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:2358 lib/luks2/luks2_reencrypt.c:3383 #, c-format msgid "Device %s is too small." msgstr "Zařízení %s je příliš malé." @@ -303,16 +304,16 @@ msgid "Can't format VERITY without device." msgstr "VERITY nelze bez zařízení naformátovat." -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "Nepodporovaný druh VERITY haše %d." -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "Nepodporovaná velikost bloku VERITY." -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "Nepodporovaná poloha haše VERITY." @@ -342,236 +343,236 @@ msgid "Unknown crypt device type %s requested." msgstr "Požadován neznámý typ šifrovaného zařízení %s." -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "Nepodporované parametry na zařízení %s." -#: 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:2410 +#: lib/luks2/luks2_reencrypt.c:2753 #, c-format msgid "Mismatching parameters on device %s." msgstr "Neodpovídající parametry an za zařízení %s." -#: lib/setup.c:2661 +#: lib/setup.c:2664 msgid "Crypt devices mismatch." msgstr "Zařízení dmcryptu si neodpovídají." -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3161 #, c-format msgid "Failed to reload device %s." msgstr "Zařízení %s nebylo možné znovu zavést." -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "Zařízení %s nebylo možné pozastavit." -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3096 lib/luks2/luks2_reencrypt.c:3165 #, c-format msgid "Failed to resume device %s." msgstr "Zařízení %s nebylo možné probudit." -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "Nepřekonatelná chyba při zavádění zařízení %s (nad zařízením %s)." -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "Zařízení %s nebylo možné přepnout do dm-error." -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "Nelze změnit velikost zařízení zpětné smyčky." -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "Opravdu chcete změnit UUID zařízení?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "Soubor se zálohou hlavičky neobsahuje kompatibilní hlavičku LUKS." -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "Svazek %s není aktivní." -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "Svazek %s je již uspán." -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "Uspání není na zařízení %s podporováno." -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "Chyba při uspávání zařízení %s." -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "Svazek %s není uspán." - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "Probuzení není na zařízení %s podporováno." -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "Chyba při probouzení zařízení %s." -#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4314 lib/setup.c:4327 -#: lib/setup.c:4335 lib/setup.c:4348 lib/setup.c:4698 lib/setup.c:5844 +#: lib/setup.c:3164 lib/setup.c:3212 lib/setup.c:3282 +#, c-format +msgid "Volume %s is not suspended." +msgstr "Svazek %s není uspán." + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5862 msgid "Volume key does not match the volume." msgstr "Heslo svazku neodpovídá svazku." -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "Nelze přidat pozici klíče, všechny pozice jsou zakázány a klíč svazku nebyl poskytnut." -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "Záměna novou pozicí klíče se nezdařila." -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "Pozice klíče %d je neplatná." -#: lib/setup.c:3675 src/cryptsetup.c:1584 src/cryptsetup.c:1929 +#: lib/setup.c:3679 src/cryptsetup.c:1634 src/cryptsetup.c:1979 #, c-format msgid "Keyslot %d is not active." msgstr "Pozice klíče %d není aktivní." -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "Hlavička zařízení se překrývá s datovou oblastí." -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "Přešifrování již probíhá. Zařízení nelze aktivovat." -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2253 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2852 msgid "Failed to get reencryption lock." msgstr "Získání zámku pro přešifrování selhalo." -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2871 msgid "LUKS2 reencryption recovery failed." msgstr "Obnova přešifrování LUKS2 selhalo." -#: lib/setup.c:4127 lib/setup.c:4384 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "Typ zařízení není řádně inicializován." -#: lib/setup.c:4175 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "Zařízení %s již existuje." -#: lib/setup.c:4182 +#: lib/setup.c:4192 #, c-format msgid "Cannot use device %s, name is invalid or still in use." msgstr "Zařízení %s nelze použít. Název není platný nebo zařízení se stále používá." -#: lib/setup.c:4301 +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "Byl zadán neplatný klíč svazku." -#: lib/setup.c:4410 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "K zařízení VERITY byl zadán neplatný kořenový haš." -#: lib/setup.c:4417 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "Je potřeba podpis kořenového otisku." -#: lib/setup.c:4426 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "Jaderná klíčenka chybí: je potřeba pro předání podpisu do jádra." -#: lib/setup.c:4443 lib/setup.c:5920 +#: lib/setup.c:4458 lib/setup.c:5938 msgid "Failed to load key in kernel keyring." msgstr "Klíč se nepodařilo přidat do jaderné klíčenky." -#: lib/setup.c:4496 lib/setup.c:4512 lib/luks2/luks2_json_metadata.c:2306 -#: src/cryptsetup.c:2676 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2744 #, c-format msgid "Device %s is still in use." msgstr "Zařízení %s se stále používá." -#: lib/setup.c:4521 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "Neplatné zařízení %s." -#: lib/setup.c:4637 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "Vyhrazená paměť pro klíč svazku je příliš malá." -#: lib/setup.c:4645 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "Nelze získat klíč svazku pro otevřené zařízení." -#: lib/setup.c:4662 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "K zařízení VERITY nelze získat kořenový otisk." -#: lib/setup.c:4664 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Na šifrovaném zařízení %s není tato operace podporována." -#: lib/setup.c:4870 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "Operace výpisu není na zařízení tohoto typu podporována." -#: lib/setup.c:5195 +#: lib/setup.c:5213 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "Počátek dat není násobkem %u bajtů." -#: lib/setup.c:5480 +#: lib/setup.c:5498 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "Zařízení %s, které se stále používá, nelze konvertovat." -#: lib/setup.c:5777 +#: lib/setup.c:5795 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "Přiřazení pozice klíče %u jakožto nového klíče svazku se nezdařilo." -#: lib/setup.c:5850 +#: lib/setup.c:5868 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "Inicializace parametrů výchozí pozice klíče LUKS2 selhala." -#: lib/setup.c:5856 +#: lib/setup.c:5874 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "Přiřazení pozice klíče %d k otisku se nezdařilo." -#: lib/setup.c:5987 +#: lib/setup.c:6005 msgid "Kernel keyring is not supported by the kernel." msgstr "Jaderná klíčenka není jádrem podporována." -#: lib/setup.c:5997 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6015 lib/luks2/luks2_reencrypt.c:2968 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "Čtení hesla z klíčenky selhalo (chyba %d)." -#: lib/setup.c:6021 +#: lib/setup.c:6039 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "Získání zámku pro tvrdý přístup do globální paměti selhalo." @@ -599,8 +600,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "Nelze se přesunout na požadované místo v souboru s klíčem." -#: 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 msgid "Out of memory while reading passphrase." msgstr "Při čtení hesla došla paměť." @@ -620,57 +621,57 @@ msgid "Cannot read requested amount of data." msgstr "Požadované množství dat nelze načíst." -#: 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 #, c-format msgid "Device %s does not exist or access denied." msgstr "Zařízení %s neexistuje nebo přístup byl zamítnut." -#: lib/utils_device.c:197 +#: lib/utils_device.c:200 #, c-format msgid "Device %s is not compatible." msgstr "Zařízení %s není kompatibilní." -#: lib/utils_device.c:532 +#: lib/utils_device.c:544 #, c-format msgid "Ignoring bogus optimal-io size for data device (%u bytes)." msgstr "U zařízení s daty se ignoruje chybná optimální velikost I/O (%u bajtů)." # TODO: Pluralize -#: lib/utils_device.c:648 +#: lib/utils_device.c:666 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "Zařízení %s je příliš malé. Je třeba alespoň % bajtů." -#: lib/utils_device.c:729 +#: lib/utils_device.c:747 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "Zařízení %s nelze použít, protože se již používá (již namapováno nebo připojeno)." -#: lib/utils_device.c:733 +#: lib/utils_device.c:751 #, c-format msgid "Cannot use device %s, permission denied." msgstr "Zařízení %s nelze použít, povolení zamítnuto." -#: lib/utils_device.c:736 +#: lib/utils_device.c:754 #, c-format msgid "Cannot get info about device %s." msgstr "O zařízení %s nelze získat údaje." -#: lib/utils_device.c:759 +#: lib/utils_device.c:777 msgid "Cannot use a loopback device, running as non-root user." msgstr "Zařízení typu loopback nelze použít, nespuštěno superuživatelem." -#: lib/utils_device.c:769 +#: lib/utils_device.c:787 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "Připojení zařízení zpětné smyčky selhalo (požadováno zařízení s příznakem autoclear)." -#: lib/utils_device.c:815 +#: lib/utils_device.c:833 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "Požadovaná poloha je za hranicí skutečné velikosti zařízení %s." -#: lib/utils_device.c:823 +#: lib/utils_device.c:841 #, c-format msgid "Device %s has zero size." msgstr "Zařízení %s má nulovou velikost." @@ -744,16 +745,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "POZOR: Adresář se zámkem %s/%s chybí!\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "Zamykací adresář %s/%s bude vytvořen s výchozími zakompilovanými právy." #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Zamykání zrušeno. Zamykací cesta %s/%s je nepoužitelná (%s není adresářem)." -#: 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 msgid "Cannot seek to device offset." msgstr "Nelze se přesunout na požadované místo v zařízení." @@ -780,7 +781,7 @@ msgstr "Zápis šifry by měl být ve tvaru [šifra]-[režim]-[iv]." #: lib/luks1/keyencryption.c:97 lib/luks1/keymanage.c:344 -#: lib/luks1/keymanage.c:635 lib/luks1/keymanage.c:1080 +#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1094 #: lib/luks2/luks2_json_metadata.c:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." @@ -800,12 +801,12 @@ msgstr "Chyba vstupu/výstupu při šifrování pozice klíče." #: 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:1263 -#: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "Zařízení %s nelze otevřít." @@ -826,13 +827,13 @@ msgid "LUKS keyslot %u is invalid." msgstr "Pozice %u klíče LUKS není platná." -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 -#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1445 -#: src/cryptsetup.c:1571 src/cryptsetup.c:1628 src/cryptsetup.c:1684 -#: src/cryptsetup.c:1751 src/cryptsetup.c:1854 src/cryptsetup.c:1918 -#: src/cryptsetup.c:2148 src/cryptsetup.c:2343 src/cryptsetup.c:2403 -#: src/cryptsetup.c:2469 src/cryptsetup.c:2633 src/cryptsetup.c:3291 -#: src/cryptsetup.c:3300 src/cryptsetup_reencrypt.c:1388 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1495 +#: src/cryptsetup.c:1621 src/cryptsetup.c:1678 src/cryptsetup.c:1734 +#: src/cryptsetup.c:1801 src/cryptsetup.c:1904 src/cryptsetup.c:1968 +#: src/cryptsetup.c:2198 src/cryptsetup.c:2409 src/cryptsetup.c:2471 +#: src/cryptsetup.c:2537 src/cryptsetup.c:2701 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3386 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "Zařízení %s není platným zařízením LUKS." @@ -856,7 +857,7 @@ msgid "Backup file does not contain valid LUKS header." msgstr "Záložní soubor neobsahuje platnou hlavičku LUKS." -#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549 +#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:556 #: lib/luks2/luks2_json_metadata.c:1190 #, c-format msgid "Cannot open header backup file %s." @@ -896,102 +897,102 @@ msgid "Non standard key size, manual repair required." msgstr "Nestandardní velikost klíče, je třeba ruční opravy." -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "Nestandardní zarovnání pozice klíče, je třeba ruční opravy." -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "Opravují se pozice klíčů." -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Pozice klíče %i: poloha opravena (%u → %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Pozice klíče %i: proklad opraven (%u → %u)." -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Pozice klíče %i: chybná značka oddílu." -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Pozice klíče %i: sůl vymazána." -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "Hlavička LUKS se zapisuje na disk." -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "Oprava selhala." -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "Požadovaný haš LUKSu %s není podporován." -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1145 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1188 msgid "No known problems detected for LUKS header." msgstr "V hlavičce LUKS nenalezen žádný známý problém." -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Chyba při aktualizaci hlavičky LUKS na zařízení %s." -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Chyba při opakovaném čtení hlavičky LUKS po aktualizaci zařízení %s." # TODO: Pluralize -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "Poloha dat u hlavičky LUKS musí být buď 0 nebo více než velikost hlavičky." -#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825 -#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1009 -#: src/cryptsetup.c:2796 +#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832 +#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2864 msgid "Wrong LUKS UUID format provided." msgstr "Poskytnut UUID LUKSu ve špatném tvaru." -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "Hlavičku LUKS nelze vytvořit: čtení náhodné soli selhalo." -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "Hlavičku LUKS nelze vytvořit: výpočet otisku hlavičky (haš %s) selhal." -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "Pozice klíče %d je aktivní, nejprve ji uvolněte." -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "Pozice klíče %d obsahuje příliš málo útržků. Manipulace s hlavičkou?" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "Pozici s klíčem nezle otevřít (za použití haše %s)." -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "Pozice klíče %d není platná, prosím, vyberte pozici mezi 0 a %d." -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "Zařízení %s není možné smazat." @@ -1027,11 +1028,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "Hašovací algoritmus PBKDF2 %s není podporován, přeskakuje se." -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1022 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059 msgid "Required kernel crypto interface not available." msgstr "Požadované kryptografické rozhraní jádra není dostupné." -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1024 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Ujistěte se, že jaderný modul algif_skcipher je zaveden." @@ -1057,147 +1058,161 @@ msgid "This function is not supported without TCRYPT header load." msgstr "Bez dat s hlavičkou TCRYPT není tato funkce podporována." -#: 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 "Při rozboru podporovaného hlavního klíče svazku byla nalezena položka nečekaného typu „%u“." -#: lib/bitlk/bitlk.c:380 +#: lib/bitlk/bitlk.c:397 msgid "Invalid string found when parsing Volume Master Key." msgstr "Při rozboru hlavního svazku klíče byl nalezen neplatný řetězec." -#: lib/bitlk/bitlk.c:385 +#: lib/bitlk/bitlk.c:402 #, c-format msgid "Unexpected string ('%s') found when parsing supported Volume Master Key." msgstr "Při rozboru hlavního klíče svazku byl nalezen nečekaný řetězec („%s“)." -#: 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 "Při rozboru hlavního klíče svazku byl nalezen záznam metadat s nečekanou hodnotou „%u“." -#: lib/bitlk/bitlk.c:479 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "Z %s nebylo možné načíst vzorec BITLK." -#: lib/bitlk/bitlk.c:485 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Neplatná nebo neznámá značka zařízení BITLK." + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "BITLK verze 1 není v současnosti podporován." -#: lib/bitlk/bitlk.c:491 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "Neplatná nebo neznámá značka zavaděče zařízení BITLK." -#: lib/bitlk/bitlk.c:503 -msgid "Invalid or unknown signature for BITLK device." -msgstr "Neplatná nebo neznámá značka zařízení BITLK." - -#: lib/bitlk/bitlk.c:515 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "Nepodporovaná velikost sektoru %." -#: lib/bitlk/bitlk.c:523 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "Z %s nebylo možné načíst hlavičku BITLK." -#: lib/bitlk/bitlk.c:548 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "Z %s nebylo možné přečíst metadata BITLK FVE." -#: lib/bitlk/bitlk.c:599 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "Neznámý nebo nepodporovaný druh šifrování." -#: lib/bitlk/bitlk.c:632 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "Z %s nebylo možné načíst položky metadat BITLK." -#: lib/bitlk/bitlk.c:926 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "Při rozboru externího klíče byla v metadatech nalezena položka nečekaného typu „%u“." + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "Při rozboru externího klíče byla v metadatech nalezena položka s nečekanou hodnotou „%u“." + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "Při rozboru startovacího klíče byla v metadatech nalezena nečekaná položka." + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "Tato operace není podporována." -#: lib/bitlk/bitlk.c:934 +#: lib/bitlk/bitlk.c:1079 msgid "Unexpected key data size." msgstr "Nečekaná velikost údajů o klíči." -#: lib/bitlk/bitlk.c:988 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "Toto zařízení BITLK je v nepodporovaném stavu a nelze jej aktivovat." -#: lib/bitlk/bitlk.c:994 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "Zařízení BITLK s typem „%s“ nelze aktivovat." -#: lib/bitlk/bitlk.c:1076 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "Aktivace částečně dešifrovaného zařízení BITLK není podporována." -#: lib/bitlk/bitlk.c:1212 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "Zařízení nelze aktivovat. Jaderný dm-crypt postrádá podporu inicializačního vektoru BITLK." -#: lib/bitlk/bitlk.c:1216 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "Zařízení nelze aktivovat. Jaderný dm-crypt postrádá podporu difuzéru Elephant BITLK." -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "Zařízení VERITY %s nepoužívá hlavičku uvnitř disku." -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "Zařízení %s není platným zařízením VERITY." -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "Nepodporovaná verze VERITY %d." -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "Hlavička VERITY je poškozena." -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "Na zařízení %s poskytnuto UUID VERITY ve špatném tvaru." -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "Chyba při aktualizaci hlavičky VERITY na zařízení %s." -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "Ověření podpisu kořenového otisku není podporováno." -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "Chyby v zařízení FEC nelze opravit." # TODO: Pluralize -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "Nalezeno %u opravitelných chyb v zařízení FEC." -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "Jádro nepodporuje mapování dm-verity." -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "Jádro nepodporuje volbu pro podpis dm-verity." -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "Po aktivaci zjistilo zařízení VERITY poškození." @@ -1206,41 +1221,37 @@ msgid "Spare area is not zeroed at position %." msgstr "Řídká oblast na pozici % není vynulována." -#: 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 msgid "Device offset overflow." msgstr "Pozice na zařízení přetekla." -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "Ověření na pozici % selhalo." -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "Neplatné parametry velikosti pro zařízení VERITY." - -#: lib/verity/verity_hash.c:296 +#: lib/verity/verity_hash.c:273 msgid "Hash area overflow." msgstr "Přetečení oblasti haše." -#: lib/verity/verity_hash.c:373 +#: lib/verity/verity_hash.c:346 msgid "Verification of data area failed." msgstr "Ověření datové oblasti selhalo." -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "Ověření kořenového haše selhalo." -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "Při vytváření oblasti haší došlo k chybě na vstupu/výstupu." -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "Oblast haší se nepodařilo vytvořit." -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "POZOR: Jádro nemůže aktivovat zařízení, pokud velikost datového bloku přesahuje velikost stránky (%u)." @@ -1249,53 +1260,61 @@ msgid "Failed to allocate RS context." msgstr "Kontext RS se nepodařilo alokovat." -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "Vyrovnávací paměť se nepodařilo alokovat." -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Čtení bloku RS % bajtu %d selhalo." -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "Čtení parity bloku RS % selhalo." -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "Oprava parity bloku RS % selhala." -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "Zápis parity bloku RS % selhal." -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "Velikosti bloků musí odpovídat FEC." -#: lib/verity/verity_fec.c:229 +#: lib/verity/verity_fec.c:233 msgid "Invalid number of parity bytes." msgstr "Chybný počet paritních bajtů." -#: lib/verity/verity_fec.c:265 +#: lib/verity/verity_fec.c:238 +msgid "Invalid FEC segment length." +msgstr "Neplatná délka části FEC." + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "Velikost zařízení %s se nepodařilo určit." -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355 msgid "Kernel does not support dm-integrity mapping." msgstr "Jádro nepodporuje mapování dm-integrity." # Fixed metadata means fix_padding attribute of dm-integrity target # documented as "use a smaller padding". -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "Jádro nepodporuje drobné zarovnání metadat dm-integrity." +#: lib/integrity/integrity.c:287 +msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)." +msgstr "Jádro odmítá aktivovat volbu nebezpečného přepočtu (pro přebití vizte zastaralé volby aktivace)" + #: lib/luks2/luks2_disk_metadata.c:383 lib/luks2/luks2_json_metadata.c:967 #: lib/luks2/luks2_json_metadata.c:1252 #, c-format @@ -1319,7 +1338,7 @@ msgstr "Požadovaná poloha dat je příliš nízká." # TODO: Pluralize -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "POZOR: oblast s pozicemi klíčů (% bajtů) je příliš malá, dostupný počet pozic klíčů LUKS2 je značně omezen.\n" @@ -1403,7 +1422,7 @@ msgid "Reencryption in-progress. Cannot deactivate device." msgstr "Probíhá přešifrování. Zařízení nelze deaktivovat." -#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3206 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "Výměna pozastaveného zařízení %s za cíl dm-error selhala." @@ -1513,7 +1532,7 @@ #: 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:3046 msgid "Failed to initialize old segment storage wrapper." msgstr "Obálku pro starou část úložiště se nepodařilo inicializovat." @@ -1525,7 +1544,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "Kontrolní součty pro aktuální horkou zónu se nepodařilo přečíst." -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3054 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "Čtení oblasti s horkou zónou počínaje na % selhalo." @@ -1568,209 +1587,209 @@ msgid "Failed to set new keyslots area size." msgstr "Nastavení velikosti nové oblasti s pozicemi klíčů selhalo." -#: lib/luks2/luks2_reencrypt.c:2318 +#: lib/luks2/luks2_reencrypt.c:2320 #, c-format msgid "Data shift is not aligned to requested encryption sector size (% bytes)." msgstr "Posun dat není zarovnán s požadovanou velikostí šifrovaného sektoru (% bajtů)." -#: lib/luks2/luks2_reencrypt.c:2339 +#: lib/luks2/luks2_reencrypt.c:2341 #, c-format msgid "Data device is not aligned to requested encryption sector size (% bytes)." msgstr "Zařízení s daty není zarovnáno na požadovanou velikost šifrovaného sektoru (% bajtů)." -#: lib/luks2/luks2_reencrypt.c:2360 +#: lib/luks2/luks2_reencrypt.c:2362 #, c-format msgid "Data shift (% sectors) is less than future data offset (% sectors)." msgstr "Posun dat (% sektorů) je menší než budoucí poloha dat (% sektorů)." -#: lib/luks2/luks2_reencrypt.c:2366 lib/luks2/luks2_reencrypt.c:2779 -#: lib/luks2/luks2_reencrypt.c:2800 +#: lib/luks2/luks2_reencrypt.c:2368 lib/luks2/luks2_reencrypt.c:2795 +#: lib/luks2/luks2_reencrypt.c:2816 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "Zařízení %s nebylo možné otevřít ve výlučném režimu (již namapováno nebo připojeno)." -#: lib/luks2/luks2_reencrypt.c:2534 +#: lib/luks2/luks2_reencrypt.c:2536 msgid "Device not marked for LUKS2 reencryption." msgstr "Zařízení není označeno pro přešifrování LUKS2." -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2542 lib/luks2/luks2_reencrypt.c:3311 msgid "Failed to load LUKS2 reencryption context." msgstr "Načtení kontextu přešifrování LUKS2 selhalo." -#: lib/luks2/luks2_reencrypt.c:2619 +#: lib/luks2/luks2_reencrypt.c:2621 msgid "Failed to get reencryption state." msgstr "Stavu přešifrování se nepodařilo zjistit." -#: lib/luks2/luks2_reencrypt.c:2623 +#: lib/luks2/luks2_reencrypt.c:2625 msgid "Device is not in reencryption." msgstr "Zařízení se nepřešifrovává." -#: lib/luks2/luks2_reencrypt.c:2630 +#: lib/luks2/luks2_reencrypt.c:2632 msgid "Reencryption process is already running." msgstr "Proces přešifrování již běží." -#: lib/luks2/luks2_reencrypt.c:2632 +#: lib/luks2/luks2_reencrypt.c:2634 msgid "Failed to acquire reencryption lock." msgstr "Získání zámku pro přešifrování selhalo." -#: lib/luks2/luks2_reencrypt.c:2650 +#: lib/luks2/luks2_reencrypt.c:2652 msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "V přešifrování nelze pokračovat. Spusťte nejprve obnovu přešifrování." -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2766 msgid "Active device size and requested reencryption size don't match." msgstr "Aktivní velikost zařízení a velikost požadovaná k přešifrování si neodpovídají." -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2780 msgid "Illegal device size requested in reencryption parameters." msgstr "V parametrech přešifrování je požadována zakázaná velikost zařízení." -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "Probíhá přešifrování. Obnovu nelze provést." -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2922 msgid "LUKS2 reencryption already initialized in metadata." msgstr "V metadatech je přešifrování LUKS2 již inicializováno." -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2929 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "Inicializace přešifrování LUKS2 v metadatech selhala." -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3020 msgid "Failed to set device segments for next reencryption hotzone." msgstr "Nastavení segmentů zařízení pro další horkou zónu přešifrování selhalo." -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3062 msgid "Failed to write reencryption resilience metadata." msgstr "Metadata pro odolnost při přešifrování se nepodařilo zapsat." -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3069 msgid "Decryption failed." msgstr "Rozšifrování selhalo." -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3074 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "Zápis oblasti s horkou zónou počínaje na % selhal." -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3079 msgid "Failed to sync data." msgstr "Synchronizace dat selhala." -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3087 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "Po dokončení přešifrování aktuální horké zóny se nepodařilo aktualizovat metadata." -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3154 msgid "Failed to write LUKS2 metadata." msgstr "Zápis metadat LUKS2 selhal." -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3177 msgid "Failed to wipe backup segment data." msgstr "Vyčištění dat záložní části selhalo." -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3190 msgid "Failed to disable reencryption requirement flag." msgstr "Vypnutí příznaku požadavku na přešifrování selhalo." -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3198 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "Nepřekonatelná chyba při přešifrování bloku na pozici % dlouhého % sektorů." -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3207 msgid "Do not resume the device unless replaced with error target manually." msgstr "Zařízení neprobouzejte, dokud jej ručně nenahradíte chybovým cílem." -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3256 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "V přešifrování nelze pokračovat. Přešifrování se nachází v nečekaném stavu." -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3262 msgid "Missing or invalid reencrypt context." msgstr "Chybějící nebo neplatný kontext přešifrování." -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3269 msgid "Failed to initialize reencryption device stack." msgstr "Zásobník zařízení k přešifrování se nepodařilo inicializovat." -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3288 lib/luks2/luks2_reencrypt.c:3324 msgid "Failed to update reencryption context." msgstr "Kontext přešifrování se nepodařilo aktualizovat." -#: lib/luks2/luks2_token.c:262 +#: lib/luks2/luks2_token.c:263 msgid "No free token slot." msgstr "Žádná volná pozice s tokenem" -#: lib/luks2/luks2_token.c:269 +#: lib/luks2/luks2_token.c:270 #, c-format msgid "Failed to create builtin token %s." msgstr "Vestavěný token %s nebylo možné vytvořit" -#: src/cryptsetup.c:166 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "Se vstupem mimo terminál nelze ověřit heslo." -#: src/cryptsetup.c:229 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Parametry pro šifrování pozice s klíčem lze nastavit jen u zařízení LUKS2." -#: src/cryptsetup.c:259 src/cryptsetup.c:971 src/cryptsetup.c:1281 -#: src/cryptsetup.c:3157 src/cryptsetup_reencrypt.c:723 -#: src/cryptsetup_reencrypt.c:793 +#: src/cryptsetup.c:291 src/cryptsetup.c:1006 src/cryptsetup.c:1339 +#: src/cryptsetup.c:3245 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "Nelze najít žádný známý vzorek se specifikaci šifry." -#: src/cryptsetup.c:267 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "POZOR: Jedná-li se o režim plain a je-li určen soubor s klíčem, parametr --hash se ignoruje.\n" -#: src/cryptsetup.c:275 +#: 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 "POZOR: Přepínač --keyfile-size se ignoruje, velikost pro čtení je stejná jako velikosti šifrovacího klíče.\n" -#: src/cryptsetup.c:315 +#: src/cryptsetup.c:347 #, c-format msgid "Detected device signature(s) on %s. Proceeding further may damage existing data." msgstr "Na %s byla nalezen vzorec zařízení. Pokračování může poškodit existující data." -#: src/cryptsetup.c:321 src/cryptsetup.c:1102 src/cryptsetup.c:1154 -#: src/cryptsetup.c:1258 src/cryptsetup.c:1331 src/cryptsetup.c:1986 -#: src/cryptsetup.c:2694 src/cryptsetup.c:2817 src/integritysetup.c:233 +#: src/cryptsetup.c:353 src/cryptsetup.c:1145 src/cryptsetup.c:1197 +#: src/cryptsetup.c:1316 src/cryptsetup.c:1389 src/cryptsetup.c:2036 +#: src/cryptsetup.c:2762 src/cryptsetup.c:2886 src/integritysetup.c:242 msgid "Operation aborted.\n" msgstr "Operace zrušena.\n" -#: src/cryptsetup.c:389 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "Je vyžadován přepínač --key-file." -#: src/cryptsetup.c:442 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "Zadejte PIM VeraCryptu: " -#: src/cryptsetup.c:451 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "Neplatná hodnota VIM: chyba rozboru" -#: src/cryptsetup.c:454 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "Neplatná hodnota PIM: 0" -#: src/cryptsetup.c:457 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "Neplatná hodnota PIM: mimo rozsah" -#: src/cryptsetup.c:480 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "S tímto heslem není rozpoznatelná žádná hlavička zařízení." -#: src/cryptsetup.c:549 +#: src/cryptsetup.c:582 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "Zařízení %s není platným zařízením BITLK." -#: src/cryptsetup.c:584 +#: src/cryptsetup.c:617 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1780,69 +1799,69 @@ "který umožňuje přístup k šifrovanému oddílu bez znalosti hesla.\n" "Tento výpis by měl být vždy uložen na bezpečném místě a v zašifrované podobě." -#: src/cryptsetup.c:681 +#: src/cryptsetup.c:714 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "Zařízení %s je stále aktivní a naplánováno pro opožděné odstranění.\n" -#: src/cryptsetup.c:709 +#: src/cryptsetup.c:742 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "Změna velikosti aktivního zařízení vyžaduje klíč svazku v klíčence. Byl však použit přepínač --disable-keyring." -#: src/cryptsetup.c:850 +#: src/cryptsetup.c:885 msgid "Benchmark interrupted." msgstr "Hodnocení výkonu přerušeno." -#: src/cryptsetup.c:871 +#: src/cryptsetup.c:906 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s –\n" -#: src/cryptsetup.c:873 +#: src/cryptsetup.c:908 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u iterací za sekundu pro %zubitový klíč\n" -#: src/cryptsetup.c:887 +#: src/cryptsetup.c:922 #, c-format msgid "%-10s N/A\n" msgstr "%-10s –\n" -#: src/cryptsetup.c:889 +#: 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 "%-10s %4u iterací, %5u paměti, %1u souběžných vláken (procesorů) pro %zubitový klíč (požadován čas %u ms)\n" -#: src/cryptsetup.c:913 +#: src/cryptsetup.c:948 msgid "Result of benchmark is not reliable." msgstr "Výsledek hodnocení výkonu není spolehlivý." # ???: are aproximated? -#: src/cryptsetup.c:963 +#: src/cryptsetup.c:998 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Testy jsou počítány jen z práce s pamětí (žádné I/O úložiště).\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:983 +#: src/cryptsetup.c:1018 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*sAlgoritmus | Klíč | Šifrování | Dešifrování\n" -#: src/cryptsetup.c:987 +#: src/cryptsetup.c:1022 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "Šifra %s (s %ibitovým klíčem) není dostupná." #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:1006 +#: src/cryptsetup.c:1041 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "# Algoritmus | Klíč | Šifrování | Dešifrování\n" -#: src/cryptsetup.c:1015 +#: src/cryptsetup.c:1052 msgid "N/A" msgstr "–" -#: src/cryptsetup.c:1095 +#: src/cryptsetup.c:1138 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1850,19 +1869,19 @@ "Zdá se, že zařízení nevyžaduje obnovu přešifrování.\n" "Přejete si přesto pokračovat?" -#: src/cryptsetup.c:1101 +#: src/cryptsetup.c:1144 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "Opravdu pokračovat s obnovou přešifrování LUKS2?" -#: src/cryptsetup.c:1110 +#: src/cryptsetup.c:1153 msgid "Enter passphrase for reencryption recovery: " msgstr "Zadejte heslo pro obnovení přešifrování: " -#: src/cryptsetup.c:1153 +#: src/cryptsetup.c:1196 msgid "Really try to repair LUKS device header?" msgstr "Opravdu se pokusit opravit hlavičku zařízení LUKS?" -#: src/cryptsetup.c:1172 src/integritysetup.c:146 +#: src/cryptsetup.c:1215 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" @@ -1871,106 +1890,110 @@ "Lze přerušit pomocí Ctrl+C (zbytek nesmazaného zařízení bude obsahovat\n" "neplatné součty).\n" -#: src/cryptsetup.c:1194 src/integritysetup.c:168 +#: src/cryptsetup.c:1237 src/integritysetup.c:179 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "Dočasné zařízení %s nelze deaktivovat." -#: src/cryptsetup.c:1243 +#: src/cryptsetup.c:1301 msgid "Integrity option can be used only for LUKS2 format." msgstr "Volby integrity lze použít jen při formátu LUKS2." -#: src/cryptsetup.c:1248 src/cryptsetup.c:1308 +#: src/cryptsetup.c:1306 src/cryptsetup.c:1366 msgid "Unsupported LUKS2 metadata size options." msgstr "Nepodporované volby velikosti metadat LUKS2." -#: src/cryptsetup.c:1265 +#: src/cryptsetup.c:1315 +msgid "Header file does not exist, do you want to create it?" +msgstr "Soubor s hlavičkou neexistuje. Chcete jej vytvořit?" + +#: src/cryptsetup.c:1323 #, c-format msgid "Cannot create header file %s." msgstr "Soubor s hlavičkou %s nelze vytvořit." -#: src/cryptsetup.c:1288 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:1346 src/integritysetup.c:205 src/integritysetup.c:213 +#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303 +#: src/integritysetup.c:313 msgid "No known integrity specification pattern detected." msgstr "Nelze najít žádný známý vzorek se specifikací integrity." -#: src/cryptsetup.c:1301 +#: src/cryptsetup.c:1359 #, c-format msgid "Cannot use %s as on-disk header." msgstr "%s nelze použít pro hlavičku uvnitř disku." -#: src/cryptsetup.c:1325 src/integritysetup.c:227 +#: src/cryptsetup.c:1383 src/integritysetup.c:236 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "Toto nevratně přepíše data na %s." -#: src/cryptsetup.c:1366 src/cryptsetup.c:1700 src/cryptsetup.c:1767 -#: src/cryptsetup.c:1869 src/cryptsetup.c:1935 src/cryptsetup_reencrypt.c:553 +#: src/cryptsetup.c:1416 src/cryptsetup.c:1750 src/cryptsetup.c:1817 +#: src/cryptsetup.c:1919 src/cryptsetup.c:1985 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "Nastavení parametrů PBKDF selhalo." -#: src/cryptsetup.c:1451 +#: src/cryptsetup.c:1501 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "Zmenšená poloha dat je dovolena jen u oddělené hlavičky LUKS." -#: src/cryptsetup.c:1462 src/cryptsetup.c:1773 +#: src/cryptsetup.c:1512 src/cryptsetup.c:1823 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "Bez pozic pro klíče nelze určit velikost LUKS klíče svazku. Prosím, použijte přepínač --key-size." -#: src/cryptsetup.c:1500 +#: src/cryptsetup.c:1550 msgid "Device activated but cannot make flags persistent." msgstr "Zařízení aktivováno, ale příznaky nelze učinit trvalými." -#: src/cryptsetup.c:1581 src/cryptsetup.c:1651 +#: src/cryptsetup.c:1631 src/cryptsetup.c:1701 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "Ke smazání vybrán klíč na pozici %d." -#: src/cryptsetup.c:1593 src/cryptsetup.c:1654 +#: src/cryptsetup.c:1643 src/cryptsetup.c:1704 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "" "Toto je poslední pozice klíče. Smazáním tohoto klíče přijdete o možnost\n" "zařízení použít." -#: src/cryptsetup.c:1594 +#: src/cryptsetup.c:1644 msgid "Enter any remaining passphrase: " msgstr "Zadejte jakékoliv jiné heslo: " -#: src/cryptsetup.c:1595 src/cryptsetup.c:1656 +#: src/cryptsetup.c:1645 src/cryptsetup.c:1706 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Operace zrušena, pozice klíče NEBYLA vymazána.\n" -#: src/cryptsetup.c:1633 +#: src/cryptsetup.c:1683 msgid "Enter passphrase to be deleted: " msgstr "Zadejte heslo, které se má smazat: " -#: src/cryptsetup.c:1714 src/cryptsetup.c:1788 src/cryptsetup.c:1822 +#: src/cryptsetup.c:1764 src/cryptsetup.c:1838 src/cryptsetup.c:1872 msgid "Enter new passphrase for key slot: " msgstr "Zadejte nové heslo pro pozici klíče: " -#: src/cryptsetup.c:1805 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1855 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "Zadejte jakékoliv existující heslo: " -#: src/cryptsetup.c:1873 +#: src/cryptsetup.c:1923 msgid "Enter passphrase to be changed: " msgstr "Zadejte heslo, které má být změněno: " -#: src/cryptsetup.c:1889 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1939 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "Zadejte nové heslo: " -#: src/cryptsetup.c:1939 +#: src/cryptsetup.c:1989 msgid "Enter passphrase for keyslot to be converted: " msgstr "Zadejte heslo pro pozici klíče, který má být převeden: " -#: src/cryptsetup.c:1963 +#: src/cryptsetup.c:2013 msgid "Only one device argument for isLuks operation is supported." msgstr "U operace isLuks je podporován pouze jeden argument se zařízením." -#: src/cryptsetup.c:2013 +#: src/cryptsetup.c:2063 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -1980,12 +2003,12 @@ "který umožňuje přístup k šifrovanému oddílu bez znalosti hesla.\n" "Tento výpis by měl být uložen na bezpečném místě a v zašifrované podobě." -#: src/cryptsetup.c:2078 +#: src/cryptsetup.c:2128 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "Pozice klíče %d neobsahuje nepřiřazený klíč." -#: src/cryptsetup.c:2084 +#: src/cryptsetup.c:2134 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -1993,30 +2016,40 @@ "Výpis hlavičky s nepřiřazeným klíčem je citlivý údaj.\n" "Tento výpis by měl být uložen na bezpečném místě a v zašifrované podobě." -#: src/cryptsetup.c:2219 src/cryptsetup.c:2240 +#: src/cryptsetup.c:2223 src/cryptsetup.c:2252 +#, c-format +msgid "%s is not active %s device name." +msgstr "%s není název aktivního zařízení %s." + +#: src/cryptsetup.c:2247 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "%s není název aktivního zařízení LUKS nebo mu chybí hlavička." + +#: src/cryptsetup.c:2285 src/cryptsetup.c:2306 msgid "Option --header-backup-file is required." msgstr "Je vyžadován přepínač --header-backup-file." -#: src/cryptsetup.c:2270 +#: src/cryptsetup.c:2336 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s není zařízení spravované nástrojem cryptsetup." -#: src/cryptsetup.c:2281 +#: src/cryptsetup.c:2347 #, c-format msgid "Refresh is not supported for device type %s" msgstr "Reaktivace není na zařízení typu %s podporována" -#: src/cryptsetup.c:2323 +#: src/cryptsetup.c:2389 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Nerozpoznaná metadata druhu zařízení %s." -#: src/cryptsetup.c:2326 +#: src/cryptsetup.c:2392 msgid "Command requires device and mapped name as arguments." msgstr "Příkaz vyžaduje jako argumenty zařízení a mapovaný název." -#: src/cryptsetup.c:2348 +#: src/cryptsetup.c:2414 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -2025,95 +2058,95 @@ "Tento úkon smaže všechny pozice s klíči na zařízení %s.\n" "Po jeho dokončení zařízení bude nepoužitelné." -#: src/cryptsetup.c:2355 +#: src/cryptsetup.c:2421 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Operace zrušena, pozice s klíči NEBYLY smazány.\n" -#: src/cryptsetup.c:2392 +#: src/cryptsetup.c:2460 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Neplatný druh formátu LUKS. Podporován je pouze LUKS1 a LUKS2." -#: src/cryptsetup.c:2410 +#: src/cryptsetup.c:2478 #, c-format msgid "Device is already %s type." msgstr "Zařízení je již druhu %s." -#: src/cryptsetup.c:2415 +#: src/cryptsetup.c:2483 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Tato operace převede formát %s na %s.\n" -#: src/cryptsetup.c:2421 +#: src/cryptsetup.c:2489 msgid "Operation aborted, device was NOT converted.\n" msgstr "Operace zrušena, zařízení NEBYLO převedeno.\n" -#: src/cryptsetup.c:2461 +#: src/cryptsetup.c:2529 msgid "Option --priority, --label or --subsystem is missing." msgstr "Chybí přepínač --priority, --label nebo --subsystem." -#: src/cryptsetup.c:2495 src/cryptsetup.c:2528 src/cryptsetup.c:2551 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2596 src/cryptsetup.c:2619 #, c-format msgid "Token %d is invalid." msgstr "Token %d je neplatný." -#: src/cryptsetup.c:2498 src/cryptsetup.c:2554 +#: src/cryptsetup.c:2566 src/cryptsetup.c:2622 #, c-format msgid "Token %d in use." msgstr "Token %d se používá." -#: src/cryptsetup.c:2505 +#: src/cryptsetup.c:2573 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "Přidání tokenu %d klíčenky LUKS2 selhalo." -#: src/cryptsetup.c:2514 src/cryptsetup.c:2576 +#: src/cryptsetup.c:2582 src/cryptsetup.c:2644 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "Přiřazení tokenu %d do pozice s klíčem %d selhalo." -#: src/cryptsetup.c:2531 +#: src/cryptsetup.c:2599 #, c-format msgid "Token %d is not in use." msgstr "Token %d se nepoužívá." -#: src/cryptsetup.c:2566 +#: src/cryptsetup.c:2634 msgid "Failed to import token from file." msgstr "Import tokenu ze souboru selhal." -#: src/cryptsetup.c:2591 +#: src/cryptsetup.c:2659 #, c-format msgid "Failed to get token %d for export." msgstr "Získání tokenu %d za účelem exportu selhalo." -#: src/cryptsetup.c:2606 +#: src/cryptsetup.c:2674 msgid "--key-description parameter is mandatory for token add action." msgstr "Parametr --key-description je při přidávání tokenu povinný." -#: src/cryptsetup.c:2612 src/cryptsetup.c:2620 +#: src/cryptsetup.c:2680 src/cryptsetup.c:2688 msgid "Action requires specific token. Use --token-id parameter." msgstr "Akce vyžaduje určitý token. Použijte parametr --token-id." -#: src/cryptsetup.c:2625 +#: src/cryptsetup.c:2693 #, c-format msgid "Invalid token operation %s." msgstr "Neplatná operace tokenu %s." -#: src/cryptsetup.c:2680 +#: src/cryptsetup.c:2748 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "Automaticky nalezené aktivní zařízení DM „%s“ pro datové zařízení %s.\n" -#: src/cryptsetup.c:2684 +#: src/cryptsetup.c:2752 #, c-format msgid "Device %s is not a block device.\n" msgstr "Zařízení %s není blokovým zařízením.\n" -#: src/cryptsetup.c:2686 +#: src/cryptsetup.c:2754 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "Držitele zařízení %s nebylo možné automaticky nalézt." -#: src/cryptsetup.c:2688 +#: src/cryptsetup.c:2756 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2126,237 +2159,246 @@ "To může vést k poškození dat, bylo-li zařízení ve skutečnosti aktivováno.\n" "Pro přešifrování za běhu použijte parametr --active-name.\n" -#: src/cryptsetup.c:2768 +#: src/cryptsetup.c:2836 msgid "Invalid LUKS device type." msgstr "Neplatný druh zařízení LUKS." -#: src/cryptsetup.c:2773 +#: src/cryptsetup.c:2841 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." -msgstr "Přešifrování bez odpojené hlavičky (--header) není možné bez zmenšení velikosti datového zařízení (--reduce-device-size)." +msgstr "Přešifrování bez oddělené hlavičky (--header) není možné bez zmenšení velikosti datového zařízení (--reduce-device-size)." -#: src/cryptsetup.c:2778 +#: src/cryptsetup.c:2846 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "Požadovaný počátek dat musí být menší nebo roven polovině parametru --reduce-device-size" -#: src/cryptsetup.c:2787 +#: src/cryptsetup.c:2855 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "Upravuje se hodnota --reduce-device-size na dvojnásobek --offset % (v sektorech).\n" -#: src/cryptsetup.c:2791 +#: src/cryptsetup.c:2859 msgid "Encryption is supported only for LUKS2 format." msgstr "Šifrování je podporováno jen s formátem LUKS2." -#: src/cryptsetup.c:2813 +#: src/cryptsetup.c:2882 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "Na %s zjištěno zařízeno LUKS. Přejete si toto zařízení LUKS znovu zašifrovat?" -#: src/cryptsetup.c:2828 +#: src/cryptsetup.c:2900 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "Dočasný soubor s hlavičkou %s již existuje. Operace se ruší." -#: src/cryptsetup.c:2830 src/cryptsetup.c:2837 +#: src/cryptsetup.c:2902 src/cryptsetup.c:2909 #, c-format msgid "Cannot create temporary header file %s." msgstr "Dočasný soubor s hlavičkou %s nelze vytvořit." -#: src/cryptsetup.c:2901 +#: src/cryptsetup.c:2976 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "%s/%s je nyní aktivní a připraveno pro přešifrování za běhu.\n" -#: src/cryptsetup.c:3065 src/cryptsetup.c:3071 +#: src/cryptsetup.c:3013 +msgid "LUKS2 decryption is supported with detached header device only." +msgstr "Dešifrování LUKS2 je podporováno jen u zařízení s oddělenou hlavičkou." + +#: src/cryptsetup.c:3146 src/cryptsetup.c:3152 msgid "Not enough free keyslots for reencryption." msgstr "Nedostatek pozic s klíči pro přešifrování." -#: src/cryptsetup.c:3091 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3172 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "Soubor s klíčem lze použít jen s přepínačem --key-slot nebo s právě jednou aktivní pozicí klíče." -#: src/cryptsetup.c:3100 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3181 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "Zadejte heslo pro pozici klíče %d: " -#: src/cryptsetup.c:3108 +#: src/cryptsetup.c:3190 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "Zadejte heslo pro pozici klíče %u: " -#: src/cryptsetup.c:3283 +#: src/cryptsetup.c:3236 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "Přepíná se algoritmus šifrování dat na %s.\n" + +#: src/cryptsetup.c:3369 msgid "Command requires device as argument." msgstr "Příkaz vyžaduje jako argument zařízení." -#: src/cryptsetup.c:3305 +#: src/cryptsetup.c:3391 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "Nyní je podporován pouze formát LUKS2. Pro LUKS1, prosím, použijte nástroj cryptsetup-reencrypt." -#: src/cryptsetup.c:3317 +#: src/cryptsetup.c:3403 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "Zastaralé offline přešifrování již probíhá. Použijte nástroj cryptsetup-reencrypt." -#: src/cryptsetup.c:3327 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3413 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "Přešifrování zařízení s profilem integrity není podporováno." -#: src/cryptsetup.c:3335 +#: src/cryptsetup.c:3421 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "Přešifrování LUKS2 je již inicializováno. Operace se ruší." -#: src/cryptsetup.c:3339 +#: src/cryptsetup.c:3425 msgid "LUKS2 device is not in reencryption." msgstr "Zařízení LUKS2 se nepřešifrovává." -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3452 msgid " [--type ] []" msgstr " [--type ] []" -#: src/cryptsetup.c:3366 src/veritysetup.c:399 src/integritysetup.c:480 +#: src/cryptsetup.c:3452 src/veritysetup.c:408 src/integritysetup.c:493 msgid "open device as " msgstr "otevře zařízení jako " -#: src/cryptsetup.c:3367 src/cryptsetup.c:3368 src/cryptsetup.c:3369 -#: src/veritysetup.c:400 src/veritysetup.c:401 src/integritysetup.c:481 -#: src/integritysetup.c:482 +#: src/cryptsetup.c:3453 src/cryptsetup.c:3454 src/cryptsetup.c:3455 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494 +#: src/integritysetup.c:495 msgid "" msgstr "" -#: src/cryptsetup.c:3367 src/veritysetup.c:400 src/integritysetup.c:481 +#: src/cryptsetup.c:3453 src/veritysetup.c:409 src/integritysetup.c:494 msgid "close device (remove mapping)" msgstr "zavře zařízení (odstraní mapování)" -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3454 msgid "resize active device" msgstr "změní velikost aktivního zařízení" -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3455 msgid "show device status" msgstr "zobrazí stav zařízení" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "[--cipher ]" msgstr "[--cipher <šifra>]" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "benchmark cipher" msgstr "zhodnotí výkon šifry" -#: src/cryptsetup.c:3371 src/cryptsetup.c:3372 src/cryptsetup.c:3373 -#: src/cryptsetup.c:3374 src/cryptsetup.c:3375 src/cryptsetup.c:3382 -#: src/cryptsetup.c:3383 src/cryptsetup.c:3384 src/cryptsetup.c:3385 -#: src/cryptsetup.c:3386 src/cryptsetup.c:3387 src/cryptsetup.c:3388 -#: src/cryptsetup.c:3389 src/cryptsetup.c:3390 +#: src/cryptsetup.c:3457 src/cryptsetup.c:3458 src/cryptsetup.c:3459 +#: src/cryptsetup.c:3460 src/cryptsetup.c:3461 src/cryptsetup.c:3468 +#: src/cryptsetup.c:3469 src/cryptsetup.c:3470 src/cryptsetup.c:3471 +#: src/cryptsetup.c:3472 src/cryptsetup.c:3473 src/cryptsetup.c:3474 +#: src/cryptsetup.c:3475 src/cryptsetup.c:3476 msgid "" msgstr "" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3457 msgid "try to repair on-disk metadata" msgstr "pokusí se opravit metadata uložená na disku" -#: src/cryptsetup.c:3372 +#: src/cryptsetup.c:3458 msgid "reencrypt LUKS2 device" msgstr "přešifruje zařízení LUKS2" -#: src/cryptsetup.c:3373 +#: src/cryptsetup.c:3459 msgid "erase all keyslots (remove encryption key)" msgstr "smaže všechny pozice s klíči (odstraní šifrovací klíč)" -#: src/cryptsetup.c:3374 +#: src/cryptsetup.c:3460 msgid "convert LUKS from/to LUKS2 format" msgstr "převede formát LUKS do/z formátu LUKS2" -#: src/cryptsetup.c:3375 +#: src/cryptsetup.c:3461 msgid "set permanent configuration options for LUKS2" msgstr "nastaví trvalé volby konfigurace pro LUKS2" -#: src/cryptsetup.c:3376 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3462 src/cryptsetup.c:3463 msgid " []" msgstr " []" -#: src/cryptsetup.c:3376 +#: src/cryptsetup.c:3462 msgid "formats a LUKS device" msgstr "naformátuje zařízení LUKS" -#: src/cryptsetup.c:3377 +#: src/cryptsetup.c:3463 msgid "add key to LUKS device" msgstr "do zařízení LUKS přidá klíč" -#: src/cryptsetup.c:3378 src/cryptsetup.c:3379 src/cryptsetup.c:3380 +#: src/cryptsetup.c:3464 src/cryptsetup.c:3465 src/cryptsetup.c:3466 msgid " []" msgstr " []" -#: src/cryptsetup.c:3378 +#: src/cryptsetup.c:3464 msgid "removes supplied key or key file from LUKS device" msgstr "odstraní zadaný klíč nebo soubor s klíčem ze zařízení LUKS" -#: src/cryptsetup.c:3379 +#: src/cryptsetup.c:3465 msgid "changes supplied key or key file of LUKS device" msgstr "změní zadaný klíč nebo soubor s klíčem u zařízení LUKS" -#: src/cryptsetup.c:3380 +#: src/cryptsetup.c:3466 msgid "converts a key to new pbkdf parameters" msgstr "převede klíč do nových parametrů PBKDF" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid " " msgstr " " -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid "wipes key with number from LUKS device" msgstr "smaže klíč s číslem ze zařízení LUKS" -#: src/cryptsetup.c:3382 +#: src/cryptsetup.c:3468 msgid "print UUID of LUKS device" msgstr "zobrazí UUID zařízení LUKS" -#: src/cryptsetup.c:3383 +#: src/cryptsetup.c:3469 msgid "tests for LUKS partition header" msgstr "otestuje na hlavičku oddílu LUKS" -#: src/cryptsetup.c:3384 +#: src/cryptsetup.c:3470 msgid "dump LUKS partition information" msgstr "vypíše údaje o oddílu LUKS" -#: src/cryptsetup.c:3385 +#: src/cryptsetup.c:3471 msgid "dump TCRYPT device information" msgstr "vypíše údaje o oddílu TCRYPT" -#: src/cryptsetup.c:3386 +#: src/cryptsetup.c:3472 msgid "dump BITLK device information" msgstr "vypíše údaje o zařízení BITLK" # TODO: not consistent with previous line -#: src/cryptsetup.c:3387 +#: src/cryptsetup.c:3473 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "Uspí zařízení LUKS a smaže klíč (všechny operace budou zmrazeny)" # TODO: not consistent with previous line -#: src/cryptsetup.c:3388 +#: src/cryptsetup.c:3474 msgid "Resume suspended LUKS device" msgstr "Probudí uspané zařízení LUKS" # TODO: not consistent with previous line -#: src/cryptsetup.c:3389 +#: src/cryptsetup.c:3475 msgid "Backup LUKS device header and keyslots" msgstr "Zálohuje hlavičku zařízení LUKS a jeho pozice s klíči" # TODO: not consistent with previous line -#: src/cryptsetup.c:3390 +#: src/cryptsetup.c:3476 msgid "Restore LUKS device header and keyslots" msgstr "Obnoví hlavičku zařízení LUKS a jeho pozice s klíči" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid " " msgstr " " -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid "Manipulate LUKS2 tokens" msgstr "Zachází s tokeny LUKS2" -#: src/cryptsetup.c:3409 src/veritysetup.c:417 src/integritysetup.c:498 +#: src/cryptsetup.c:3495 src/veritysetup.c:426 src/integritysetup.c:511 msgid "" "\n" " is one of:\n" @@ -2364,7 +2406,7 @@ "\n" " je jedna z:\n" -#: src/cryptsetup.c:3415 +#: src/cryptsetup.c:3501 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2376,7 +2418,7 @@ "\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3419 +#: src/cryptsetup.c:3505 #, c-format msgid "" "\n" @@ -2391,7 +2433,7 @@ " je číslo pozice klíče LUKS, který se má upravit\n" " je volitelný soubor s novým klíčem pro akci luksAddKey\n" -#: src/cryptsetup.c:3426 +#: src/cryptsetup.c:3512 #, c-format msgid "" "\n" @@ -2400,7 +2442,7 @@ "\n" "Výchozí zakompilovaný formát metadat (pro akci luksFormat) je %s.\n" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3517 #, c-format msgid "" "\n" @@ -2417,7 +2459,7 @@ "Výchozí PBKDF pro LUKS2: %s\n" "\tDoba iterací: %d, nutná paměť: %d kB, souběžná vlákna: %d\n" -#: src/cryptsetup.c:3442 +#: src/cryptsetup.c:3528 #, c-format msgid "" "\n" @@ -2432,451 +2474,451 @@ "\tplain: %s, Klíč: %d bitů, Haš hesla: %s\n" "\tLUKS: %s, Klíč: %d bitů, Haš hlavičky LUKS: %s, RNG: %s\n" -#: src/cryptsetup.c:3451 +#: src/cryptsetup.c:3537 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: V režimu XTS (dva vnitřní klíče) bude výchozí velikost klíče zdvojnásobena.\n" -#: src/cryptsetup.c:3467 src/veritysetup.c:575 src/integritysetup.c:642 +#: src/cryptsetup.c:3555 src/veritysetup.c:587 src/integritysetup.c:665 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: vyžaduje %s jako argumenty" -#: src/cryptsetup.c:3500 src/veritysetup.c:462 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3587 src/veritysetup.c:472 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "Zobrazí tuto nápovědu" -#: src/cryptsetup.c:3501 src/veritysetup.c:463 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3588 src/veritysetup.c:473 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "Zobrazí stručný návod na použití" -#: src/cryptsetup.c:3502 src/veritysetup.c:464 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3589 src/veritysetup.c:474 src/integritysetup.c:555 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "Vypíše verzi balíku" -#: src/cryptsetup.c:3506 src/veritysetup.c:468 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3593 src/veritysetup.c:478 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "Přepínače nápovědy:" -#: src/cryptsetup.c:3507 src/veritysetup.c:469 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3594 src/veritysetup.c:479 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "Zobrazuje podrobnější chybové hlášky" -#: src/cryptsetup.c:3508 src/veritysetup.c:470 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3595 src/veritysetup.c:480 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "Zobrazuje ladicí hlášky" -#: src/cryptsetup.c:3509 +#: src/cryptsetup.c:3596 msgid "Show debug messages including JSON metadata" msgstr "Zobrazuje ladicí hlášky včetně metadat JSON" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3597 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "Šifra použita k zašifrování disku (vizte /proc/crypto)" -#: src/cryptsetup.c:3511 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3598 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "Haš použit k vytvoření šifrovacího klíče z hesla" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3599 msgid "Verifies the passphrase by asking for it twice" msgstr "Ověřuje heslo dvojitým dotazem" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3600 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "Klíč načte ze souboru" -#: src/cryptsetup.c:3514 +#: src/cryptsetup.c:3601 msgid "Read the volume (master) key from file." msgstr "(Hlavní) klíč svazku načte ze souboru." -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3602 msgid "Dump volume (master) key instead of keyslots info" msgstr "Vypíše (hlavní) klíč svazku namísto údajů o pozicích klíčů" -#: src/cryptsetup.c:3516 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "Velikost šifrovacího klíče" -#: src/cryptsetup.c:3516 src/cryptsetup.c:3579 src/integritysetup.c:562 -#: src/integritysetup.c:566 src/integritysetup.c:570 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup.c:3666 src/integritysetup.c:579 +#: src/integritysetup.c:583 src/integritysetup.c:587 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "BITY" -#: src/cryptsetup.c:3517 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3604 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "Omezí čtení ze souboru s klíčem" -#: src/cryptsetup.c:3517 src/cryptsetup.c:3518 src/cryptsetup.c:3519 -#: src/cryptsetup.c:3520 src/cryptsetup.c:3523 src/cryptsetup.c:3576 -#: src/cryptsetup.c:3577 src/cryptsetup.c:3585 src/cryptsetup.c:3586 -#: src/veritysetup.c:473 src/veritysetup.c:474 src/veritysetup.c:475 -#: src/veritysetup.c:478 src/veritysetup.c:479 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:3604 src/cryptsetup.c:3605 src/cryptsetup.c:3606 +#: src/cryptsetup.c:3607 src/cryptsetup.c:3610 src/cryptsetup.c:3663 +#: src/cryptsetup.c:3664 src/cryptsetup.c:3672 src/cryptsetup.c:3673 +#: 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 "bajty" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3605 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "Přeskočí daný počet bajtů na začátku souboru s klíčem" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3606 msgid "Limits the read from newly added keyfile" msgstr "Omezí čtení z nově přidaného souboru s klíčem" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3607 msgid "Number of bytes to skip in newly added keyfile" msgstr "Přeskočí daný počet bajtů na začátku nově přidaného souboru s klíčem" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3608 msgid "Slot number for new key (default is first free)" msgstr "Číslo pozice pro nový klíč (výchozí je první volná)" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3609 msgid "The size of the device" msgstr "Velikost zařízení" -#: src/cryptsetup.c:3522 src/cryptsetup.c:3524 src/cryptsetup.c:3525 -#: src/cryptsetup.c:3531 src/integritysetup.c:552 src/integritysetup.c:559 +#: src/cryptsetup.c:3609 src/cryptsetup.c:3611 src/cryptsetup.c:3612 +#: src/cryptsetup.c:3618 src/integritysetup.c:569 src/integritysetup.c:576 msgid "SECTORS" msgstr "SEKTORY" -#: src/cryptsetup.c:3523 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3610 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "Použije zadanou velikost zařízení (ignoruje zbytek zařízení). NEBEZPEČNÉ!" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3611 msgid "The start offset in the backend device" msgstr "Poloha začátku dat v podkladovém zařízení" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3612 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Kolik sektorů šifrovaných dat se má na začátku přeskočit" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3613 msgid "Create a readonly mapping" msgstr "Vytvoří mapování určené jen pro čtení" -#: src/cryptsetup.c:3527 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3614 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "Nevyžaduje potvrzení" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3615 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Časový limit pro interaktivní dotaz na heslo (v sekundách)" -#: src/cryptsetup.c:3528 src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3615 src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "sekundy" -#: src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "Aktualizace ukazatele postupu (v sekundách)" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3617 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "Kolikrát se lze zeptat na heslo" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3618 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Zarovnává data na hranici sektorů – pro luksFormat" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3619 msgid "File with LUKS header and keyslots backup" msgstr "Soubor se zálohou hlavičky LUKS a pozic s klíči" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3620 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "Pro vytvoření klíče svazku použije /dev/random" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3621 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "Pro vytvoření klíče svazku použije /dev/urandom" -#: src/cryptsetup.c:3535 +#: src/cryptsetup.c:3622 msgid "Share device with another non-overlapping crypt segment" msgstr "Zařízení sdílí s jiným nepřekrývajícím se šifrovaným segmentem" -#: src/cryptsetup.c:3536 src/veritysetup.c:482 +#: src/cryptsetup.c:3623 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "Použije zařízení s UUID" -#: src/cryptsetup.c:3537 src/integritysetup.c:579 +#: src/cryptsetup.c:3624 src/integritysetup.c:599 msgid "Allow discards (aka TRIM) requests for device" msgstr "Povolí u daného zařízení požadavky na zahození (TRIM)" -#: src/cryptsetup.c:3538 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3625 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "Zařízení nebo soubor s oddělenou hlavičkou LUKS" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3626 msgid "Do not activate device, just check passphrase" msgstr "Zařízení neaktivuje, jen zkontroluje heslo" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3627 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Použije se skrytá hlavička (skryté zařízení TCRYPT)" -#: src/cryptsetup.c:3541 +#: src/cryptsetup.c:3628 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "Zařízení je systémová jednotka TCRYPT (se zavaděčem)" -#: src/cryptsetup.c:3542 +#: src/cryptsetup.c:3629 msgid "Use backup (secondary) TCRYPT header" msgstr "Použije se záložní (druhá) hlavička TCRYPT" -#: src/cryptsetup.c:3543 +#: src/cryptsetup.c:3630 msgid "Scan also for VeraCrypt compatible device" msgstr "Hledá také zařízení kompatibilní s VeraCrypt" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3631 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Osobní iterační činitel (PIM) pro zařízení kompatibilní s VeraCrypt" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3632 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Zeptá se na Osobní iterační činitel pro zařízení kompatibilní s VeraCrypt" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3633 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "Druh metadat zařízení: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3634 msgid "Disable password quality check (if enabled)" msgstr "Vypne kontrolku odolnosti hesla (byla-li zapnuta)" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3635 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Použije výkonnostně kompatibilní přepínač dmcryptu same_cpu_crypt" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3636 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Použije výkonnostně kompatibilní přepínač dmcryptu submit_from_crypt_cpus" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3637 msgid "Bypass dm-crypt workqueue and process read requests synchronously" msgstr "Přeskočit pracovní frontu dm-cryptu a zpracovávat požadavky na čtení synchronně" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3638 msgid "Bypass dm-crypt workqueue and process write requests synchronously" msgstr "Přeskočit pracovní frontu dm-cryptu a zpracovávat požadavky na zápis synchronně" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3639 msgid "Device removal is deferred until the last user closes it" msgstr "Odstranění zařízení se odloží, dokud jej poslední uživatel neuzavře" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3640 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "Pro serializaci paměti těžkého PBKDF použije globální zámek (obezlička při nedostatku paměti)" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3641 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "Doba opakování PBKDF pro LUKS (v ms)" -#: src/cryptsetup.c:3554 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3641 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "milisekundy" -#: src/cryptsetup.c:3555 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3642 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "Algoritmus PBKDF (pro LUKS2): argon2i, argon2id, pbkdf2" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "omezení paměťové náročnosti PBKDF" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "kilobajty" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "náročnost paralelizace PBKDF" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "vlákna" -#: src/cryptsetup.c:3558 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3645 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "náročnost iterací PBKDF (vynuceno, vypne test složitosti)" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3646 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Priorita pozice klíče: ignore [ignorovat], normal [normální], prefer [upřednostnit]" -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3647 msgid "Disable locking of on-disk metadata" msgstr "Vypne zamykání metadata uložených na disku" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3648 msgid "Disable loading volume keys via kernel keyring" msgstr "Vypne načítání klíčů svazků přes jadernou klíčenku" -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3649 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Algoritmus pro integritu dat (pouze LUKS2)" -#: src/cryptsetup.c:3563 src/integritysetup.c:573 +#: src/cryptsetup.c:3650 src/integritysetup.c:590 msgid "Disable journal for integrity device" msgstr "Vypne žurnál pro zařízení s integritou" -#: src/cryptsetup.c:3564 src/integritysetup.c:547 +#: src/cryptsetup.c:3651 src/integritysetup.c:564 msgid "Do not wipe device after format" msgstr "Po formátu nevymazat zařízení" -#: src/cryptsetup.c:3565 src/integritysetup.c:577 +#: src/cryptsetup.c:3652 src/integritysetup.c:594 msgid "Use inefficient legacy padding (old kernels)" msgstr "Použije neefektivní zastaralé vyplňování (stará jádra)" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3653 msgid "Do not ask for passphrase if activation by token fails" msgstr "Neptá se na heslo, když aktivace tokenem selže" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3654 msgid "Token number (default: any)" msgstr "Číslo tokenu (výchozí cokoliv)" -#: src/cryptsetup.c:3568 +#: src/cryptsetup.c:3655 msgid "Key description" msgstr "Popis klíče" -#: src/cryptsetup.c:3569 +#: src/cryptsetup.c:3656 msgid "Encryption sector size (default: 512 bytes)" msgstr "Velikost sektoru šifrování (výchozí: 512 bajtů)" -#: src/cryptsetup.c:3570 +#: src/cryptsetup.c:3657 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "Inicializační vektor počítá ve velikostech sektoru (nikoliv po 512 bajtech)" -#: src/cryptsetup.c:3571 +#: src/cryptsetup.c:3658 msgid "Set activation flags persistent for device" msgstr "Nastaví trvalé příznaky pro aktivaci zařízení" -#: src/cryptsetup.c:3572 +#: src/cryptsetup.c:3659 msgid "Set label for the LUKS2 device" msgstr "Nastaví jmenovku zařízení LUKS2" -#: src/cryptsetup.c:3573 +#: src/cryptsetup.c:3660 msgid "Set subsystem label for the LUKS2 device" msgstr "Nastaví jmenovku podsystému zařízení LUKS2" -#: src/cryptsetup.c:3574 +#: src/cryptsetup.c:3661 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "Vytvoří nebo vypíše nepřiřazenou (žádný datový segment nepřiřazen) LUKS2 pozici s klíčem" -#: src/cryptsetup.c:3575 +#: src/cryptsetup.c:3662 msgid "Read or write the json from or to a file" msgstr "Načte nebo zapíše JSON z nebo do souboru" -#: src/cryptsetup.c:3576 +#: src/cryptsetup.c:3663 msgid "LUKS2 header metadata area size" msgstr "Velikost oblasti s metadaty hlavičky LUKS2" -#: src/cryptsetup.c:3577 +#: src/cryptsetup.c:3664 msgid "LUKS2 header keyslots area size" msgstr "Velikost oblasti s pozicemi klíčů hlavičky LUKS" -#: src/cryptsetup.c:3578 +#: src/cryptsetup.c:3665 msgid "Refresh (reactivate) device with new parameters" msgstr "Reaktivuje zařízení s novými parametry" -#: src/cryptsetup.c:3579 +#: src/cryptsetup.c:3666 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "Pozice s klíčem LUKS2: Velikost šifrovacího klíče" -#: src/cryptsetup.c:3580 +#: src/cryptsetup.c:3667 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "Pozice s klíčem LUKS2: Šifra použitá pro šifrování pozice s klíčem" -#: src/cryptsetup.c:3581 +#: src/cryptsetup.c:3668 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "Zašifruje zařízení LUKS2 (šifrování bez mezikopie)." -#: src/cryptsetup.c:3582 +#: src/cryptsetup.c:3669 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "Natrvalo dešifruje zařízení LUKS2 (odstraní šifrování)." -#: src/cryptsetup.c:3583 +#: src/cryptsetup.c:3670 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "Inicializuje přešifrování LUKS2 pouze v metadatech." -#: src/cryptsetup.c:3584 +#: src/cryptsetup.c:3671 msgid "Resume initialized LUKS2 reencryption only." msgstr "Pouze dokončí již inicializované přešifrování LUKS2." -#: src/cryptsetup.c:3585 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3672 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "Zmenší velikost datového zařízení (posune začátek dat). NEBEZPEČNÉ!" -#: src/cryptsetup.c:3586 +#: src/cryptsetup.c:3673 msgid "Maximal reencryption hotzone size." msgstr "Maximální velikost horké zóny při přešifrování." -#: src/cryptsetup.c:3587 +#: src/cryptsetup.c:3674 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "Druh odolnosti horké zóny při přešifrování (checksum [kontrolní součet], journal [žurnál], none [žádná])" -#: src/cryptsetup.c:3588 +#: src/cryptsetup.c:3675 msgid "Reencryption hotzone checksums hash" msgstr "Algoritmus kontrolního součtu při přešifrování" -#: src/cryptsetup.c:3589 +#: src/cryptsetup.c:3676 msgid "Override device autodetection of dm device to be reencrypted" msgstr "Přebije automatické hledání zařízení DM pro přešifrování" -#: src/cryptsetup.c:3605 src/veritysetup.c:505 src/integritysetup.c:595 +#: src/cryptsetup.c:3692 src/veritysetup.c:515 src/integritysetup.c:615 msgid "[OPTION...] " msgstr "[PŘEPÍNAČ…] " -#: src/cryptsetup.c:3656 src/veritysetup.c:539 src/integritysetup.c:606 +#: src/cryptsetup.c:3747 src/veritysetup.c:551 src/integritysetup.c:626 msgid "Argument missing." msgstr "Chybí argument ." -#: src/cryptsetup.c:3725 src/veritysetup.c:570 src/integritysetup.c:637 +#: src/cryptsetup.c:3817 src/veritysetup.c:582 src/integritysetup.c:660 msgid "Unknown action." msgstr "Neznámá akce." -#: src/cryptsetup.c:3735 +#: src/cryptsetup.c:3827 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "Přepínače --refresh a --test-passphrase se vzájemně vylučují." -#: src/cryptsetup.c:3740 +#: src/cryptsetup.c:3832 msgid "Option --deferred is allowed only for close command." msgstr "Přepínač --deferred je dovolen jen při příkazu zavření." -#: src/cryptsetup.c:3745 +#: src/cryptsetup.c:3837 msgid "Option --shared is allowed only for open of plain device." msgstr "Přepínač --shared je dovolen jen při úkonu otevírání zařízení plain." -#: src/cryptsetup.c:3750 src/integritysetup.c:654 +#: src/cryptsetup.c:3842 src/integritysetup.c:677 msgid "Option --allow-discards is allowed only for open operation." msgstr "Přepínač --allow-discards je dovolen jen při úkonu otevírání." -#: src/cryptsetup.c:3755 +#: src/cryptsetup.c:3847 msgid "Option --persistent is allowed only for open operation." msgstr "Přepínač --persistent je dovolen jen při úkonu otevírání." -#: src/cryptsetup.c:3760 +#: src/cryptsetup.c:3852 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "Přepínač --serialize-memory-hard-pbkdf je dovolen jen při úkonu otevírání." -#: src/cryptsetup.c:3765 +#: src/cryptsetup.c:3857 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "Přepínač --persistent není dovolen současně s --test-passphrase." -#: src/cryptsetup.c:3775 +#: src/cryptsetup.c:3867 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2885,260 +2927,260 @@ "open a benchmark. Čtení ze souboru s klíčem lze omezit\n" "pomocí --keyfile-size=(bajty)." -#: src/cryptsetup.c:3781 +#: src/cryptsetup.c:3873 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "Přepínač --integrity je dovolen pouze u luksFormat (LUKS2)." -#: src/cryptsetup.c:3786 +#: src/cryptsetup.c:3878 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "Přepínač --integrity-no-wipe smí být použit jen při formátování s rozšířením integrity." -#: src/cryptsetup.c:3792 +#: src/cryptsetup.c:3884 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "Přepínače --label a --subsystem jsou dovoleny jen při úkonech luksFormat a config s LUKS2." -#: src/cryptsetup.c:3798 +#: src/cryptsetup.c:3890 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "Přepínač --test-passphrase je dovolen pouze při otevírání zařízení LUKS, TCRYPT a BITLK." -#: src/cryptsetup.c:3803 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3895 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "Velikost klíče musí být násobkem 8 bitů." -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3901 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "Pozice klíče není platná." -#: src/cryptsetup.c:3816 +#: src/cryptsetup.c:3908 msgid "Option --key-file takes precedence over specified key file argument." msgstr "Přepínač --key-file má přednost před zadaným argumentem souboru s klíčem." -#: src/cryptsetup.c:3823 src/veritysetup.c:582 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3915 src/veritysetup.c:594 src/integritysetup.c:686 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "U přepínače není záporné číslo dovoleno." -#: src/cryptsetup.c:3827 +#: src/cryptsetup.c:3919 msgid "Only one --key-file argument is allowed." msgstr "Je dovolen pouze jeden argument přepínače --key-file." -#: src/cryptsetup.c:3831 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3923 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "Je dovolen pouze jeden z přepínačů --use-[u]random." -#: src/cryptsetup.c:3835 +#: src/cryptsetup.c:3927 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "Přepínač --use-[u]random je dovolen pouze u luksFormat." -#: src/cryptsetup.c:3839 +#: src/cryptsetup.c:3931 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "Přepínač --uuid je dovolen pouze u luksFormat a luksUUID." -#: src/cryptsetup.c:3843 +#: src/cryptsetup.c:3935 msgid "Option --align-payload is allowed only for luksFormat." msgstr "Přepínač --align-payload je dovolen pouze u luksFormat." -#: src/cryptsetup.c:3847 +#: src/cryptsetup.c:3939 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Přepínače --luks2-metadata-size a --opt-luks2-keyslots-size jsou dovoleny jen při úkonu luksFormat s LUKS2." -#: src/cryptsetup.c:3852 +#: src/cryptsetup.c:3944 msgid "Invalid LUKS2 metadata size specification." msgstr "Zadána neplatná velikost metadat LUKS2." -#: src/cryptsetup.c:3856 +#: src/cryptsetup.c:3948 msgid "Invalid LUKS2 keyslots size specification." msgstr "Zadána neplatná velikost pozic s klíči LUKS2." -#: src/cryptsetup.c:3860 +#: src/cryptsetup.c:3952 msgid "Options --align-payload and --offset cannot be combined." msgstr "Přepínače --align-payload a --offset nelze kombinovat." -#: src/cryptsetup.c:3866 +#: src/cryptsetup.c:3958 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "Přepínač --skip je podporován jen při otevírání zařízení plain a loopaes." -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3965 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "Přepínač --offset je podporován jen při otevírání zařízení plain a loopaes a při úkonu luksFormat a přešifrování." -#: src/cryptsetup.c:3879 +#: src/cryptsetup.c:3971 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "Přepínač --tcrypt-hidden, --tcrypt-system nebo --tcrypt-backup je podporován jen u zařízení TCRYPT." -#: src/cryptsetup.c:3884 +#: src/cryptsetup.c:3976 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "Přepínač --tcrypt-hidden nelze použít s přepínačem --allow-discards." -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:3981 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "Přepínač --veracrypt je podporován jen u typu zařízení TCRYPT." -#: src/cryptsetup.c:3895 +#: src/cryptsetup.c:3987 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "Zadán neplatný argument parametru --veracrypt-pim." -#: src/cryptsetup.c:3899 +#: src/cryptsetup.c:3991 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "Přepínač --veracrypt-pim je podporován jen u zařízení kompatibilním s VeraCrypt." -#: src/cryptsetup.c:3907 +#: src/cryptsetup.c:3999 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "Přepínač --veracrypt-query-pim je podporován jen u zařízení kompatibilním s VeraCrypt." -#: src/cryptsetup.c:3911 +#: src/cryptsetup.c:4003 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "Přepínače --veracrypt-pim a --veracrypt-query-pim se vzájemně vylučují." -#: src/cryptsetup.c:3918 +#: src/cryptsetup.c:4010 msgid "Option --priority can be only ignore/normal/prefer." msgstr "Přepínač --priority smí mít pouze argument ignore, normal a prefer." -#: src/cryptsetup.c:3923 src/cryptsetup.c:3961 +#: src/cryptsetup.c:4015 src/cryptsetup.c:4053 msgid "Keyslot specification is required." msgstr "Je nutné určit pozici s klíčem." -#: src/cryptsetup.c:3928 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4020 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "Funkce pro odvození klíče na základě hesla (PBKDF) smí být pouze pbkdf2 nebo argon2i/argon2id." -#: src/cryptsetup.c:3933 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4025 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "Vynucené iterace PBKDF nelze kombinovat s volnou doby iterací." -#: src/cryptsetup.c:3939 +#: src/cryptsetup.c:4031 msgid "Sector size option is not supported for this command." msgstr "Tento příkaz nepodporuje volbu velikosti sektoru." # FIXME: "Large IV sectors" should read "IV large sectors". -#: src/cryptsetup.c:3951 +#: src/cryptsetup.c:4043 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." msgstr "Volba inicializačního vektoru s velkými sektory je podporována jen při otevírání zařízení typu plain s velikostí sektoru větší než 512 bajtů." -#: src/cryptsetup.c:3956 +#: src/cryptsetup.c:4048 msgid "Key size is required with --unbound option." msgstr "Přepínač --unbound vyžaduje velikost klíče." -#: src/cryptsetup.c:3966 +#: src/cryptsetup.c:4058 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "Přepínač --unbound lze použít pouze s akcemi luksAddKey nebo luksDump." -#: src/cryptsetup.c:3971 +#: src/cryptsetup.c:4063 msgid "Option --refresh may be used only with open action." msgstr "Přepínač --refresh lze použít pouze s úkonem otevření." -#: src/cryptsetup.c:3982 +#: src/cryptsetup.c:4074 msgid "Cannot disable metadata locking." msgstr "Zamykání metadata nelze vypnout." -#: src/cryptsetup.c:3992 +#: src/cryptsetup.c:4085 msgid "Invalid max reencryption hotzone size specification." msgstr "Zadána neplatná maximální velikost horké zóny při přešifrování." -#: src/cryptsetup.c:4000 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4093 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "Zadána neplatná velikost zařízení." -#: src/cryptsetup.c:4003 +#: src/cryptsetup.c:4096 msgid "Maximum device reduce size is 1 GiB." msgstr "Maximální velikost zmenšení zařízení je 1 GiB." -#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4099 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "Velikost zmenšení musí být násobkem 512bajtových sektorů." -#: src/cryptsetup.c:4011 +#: src/cryptsetup.c:4104 msgid "Invalid data size specification." msgstr "Zadána neplatná velikost dat." -#: src/cryptsetup.c:4016 +#: src/cryptsetup.c:4109 msgid "Reduce size overflow." msgstr "Velikost ke zmenšení přetekla." -#: src/cryptsetup.c:4020 +#: src/cryptsetup.c:4113 msgid "LUKS2 decryption requires option --header." msgstr "Dešifrování LUKS2 vyžaduje přepínač --header." -#: src/cryptsetup.c:4024 +#: src/cryptsetup.c:4117 msgid "Device size must be multiple of 512 bytes sector." msgstr "Velikost zařízení musí být násobkem 512bajtových sektorů." -#: src/cryptsetup.c:4028 +#: src/cryptsetup.c:4121 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "Přepínače --reduce-device-size a --data-size nelze kombinovat." -#: src/cryptsetup.c:4032 +#: src/cryptsetup.c:4125 msgid "Options --device-size and --size cannot be combined." msgstr "Přepínače --device-size a --size nelze kombinovat." -#: src/cryptsetup.c:4036 +#: src/cryptsetup.c:4129 msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." msgstr "Přepínače --keyslot-cipher a --keyslot-key-size musí být použity spolu." -#: src/veritysetup.c:67 +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "Zadán neplatný řetězec se solí." -#: src/veritysetup.c:98 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "Nelze vytvořit obraz hašů %s určený k zápisu." -#: src/veritysetup.c:108 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "Nelze vytvořit obraz FEC %s určený k zápisu." -#: src/veritysetup.c:182 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "Zadán neplatný řetězec s kořenovým hašem." -#: src/veritysetup.c:190 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "Neplatné soubor s podpisem %s." -#: src/veritysetup.c:197 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "Soubor s podpisem %s nelze číst." -#: src/veritysetup.c:397 +#: src/veritysetup.c:406 msgid " " msgstr " " -#: src/veritysetup.c:397 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:492 msgid "format device" msgstr "naformátuje zařízení" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid " " msgstr " " -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid "verify device" msgstr "ověří zařízení" -#: src/veritysetup.c:399 +#: src/veritysetup.c:408 msgid " " msgstr " " -#: src/veritysetup.c:401 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:495 msgid "show active device status" msgstr "zobrazí stav aktivního zařízení" -#: src/veritysetup.c:402 +#: src/veritysetup.c:411 msgid "" msgstr "" -#: src/veritysetup.c:402 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:496 msgid "show on-disk information" msgstr "zobrazí údaje z disku" -#: src/veritysetup.c:421 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3153,7 +3195,7 @@ " je zařízení obsahující ověřovací data\n" " haš kořenového uzlu na \n" -#: src/veritysetup.c:428 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3164,135 +3206,140 @@ "Výchozí zakompilované parametry dm-verity:\n" "\tHaš: %s, Datový blok (bajty): %u, Blok hašů (bajty): %u, Velikost soli: %u, Formát haše: %u\n" -#: src/veritysetup.c:471 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "Nepoužije superblok verity" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Druh formátu (1 – běžný, 0 – původní z OS Chrome)" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "number" msgstr "číslo" -#: src/veritysetup.c:473 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "Velikost bloku na zařízení dat" -#: src/veritysetup.c:474 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "Velikost bloku na zařízení hašů" -#: src/veritysetup.c:475 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "Paritní bajty FEC" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "Počet bloků v datovém souboru" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "blocks" msgstr "bloky" -#: src/veritysetup.c:477 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "Cesta k zařízení s daty pro opravu chyb" -#: src/veritysetup.c:477 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:566 msgid "path" msgstr "cesta" -#: src/veritysetup.c:478 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "Poloha začátku dat v zařízení hašů" -#: src/veritysetup.c:479 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "Poloha začátku dat v zařízení FEC" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "Hašovací algoritmus" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "string" msgstr "řetězec" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "Salt" msgstr "Sůl" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "hex string" msgstr "šestnáctkový řetězec" -#: src/veritysetup.c:483 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "Cesta k souboru s podpisem kořenového otisku" -#: src/veritysetup.c:484 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "Restartuje jádro, pokud je zjištěno poškození" -#: src/veritysetup.c:485 +#: src/veritysetup.c:495 msgid "Panic kernel if corruption is detected" msgstr "Jádro zpanikaří, pokud je zjištěno poškození" -#: src/veritysetup.c:486 +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "Ignoruje poškození, pouze jej zaznamená" -#: src/veritysetup.c:487 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "Neověřuje vynulované bloky" -#: src/veritysetup.c:488 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "Ověří datový blok pouze při prvním čtení" -#: src/veritysetup.c:588 +#: src/veritysetup.c:600 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "Přepínače --ignore-corruption, --restart-on-corruption nebo --ignore-zero-blocks jsou dovoleny jen při úkonu otevírání." -#: src/veritysetup.c:593 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "Přepínač --root-hash-signature smí být použit jen při otevírání." -#: src/veritysetup.c:598 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "Přepínače --ignore-corruption a --restart-on-corruption nelze použít najednou." -#: src/veritysetup.c:603 +#: src/veritysetup.c:615 msgid "Option --panic-on-corruption and --restart-on-corruption cannot be used together." msgstr "Přepínač --panic-on-corruption a --restart-on-corruption nelze použít najednou." -#: src/integritysetup.c:84 src/utils_password.c:305 +#: src/integritysetup.c:85 +#, c-format +msgid "Invalid key size. Maximum is %u bytes." +msgstr "Neplatná velikost klíče. Maximální je %u bajtů." + +#: src/integritysetup.c:95 src/utils_password.c:339 #, c-format msgid "Cannot read keyfile %s." msgstr "Soubor s klíčem %s nelze číst." # FIXME: Pluralize -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:99 src/utils_password.c:344 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "Ze souboru s klíčem %2$s nelze přečíst %1$d bajtů." -#: src/integritysetup.c:254 +#: src/integritysetup.c:266 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Formátováno s velikostí značky %u, vnitřní integrita %s.\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:492 src/integritysetup.c:496 msgid "" msgstr "" -#: src/integritysetup.c:480 +#: src/integritysetup.c:493 msgid " " msgstr " " -#: src/integritysetup.c:502 +#: src/integritysetup.c:515 #, c-format msgid "" "\n" @@ -3303,403 +3350,409 @@ " je zařízení, které bude vytvořeno pod %s\n" " je zařízení obsahující data se značkami integrity\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 "" "\n" "Výchozí zakompilované parametry dm-integrity:\n" "\tAlgoritmus kontrolního součtu: %s\n" +"\tMaximální velikost souboru s klíčem: %d kB\n" -#: src/integritysetup.c:549 +#: src/integritysetup.c:566 msgid "Path to data device (if separated)" msgstr "Cesta k zařízení s daty (je-li odděleno)" -#: src/integritysetup.c:551 +#: src/integritysetup.c:568 msgid "Journal size" msgstr "Velikost žurnálu" -#: src/integritysetup.c:552 +#: src/integritysetup.c:569 msgid "Interleave sectors" msgstr "Prokládat sektory" -#: src/integritysetup.c:553 +#: src/integritysetup.c:570 msgid "Journal watermark" msgstr "Zaplněnost žurnálu" -#: src/integritysetup.c:553 +#: src/integritysetup.c:570 msgid "percent" msgstr "procenta" -#: src/integritysetup.c:554 +#: src/integritysetup.c:571 msgid "Journal commit time" msgstr "Perioda vyprazdňování žurnálu" -#: src/integritysetup.c:554 src/integritysetup.c:556 +#: src/integritysetup.c:571 src/integritysetup.c:573 msgid "ms" msgstr "ms" -#: src/integritysetup.c:555 +#: src/integritysetup.c:572 msgid "Number of 512-byte sectors per bit (bitmap mode)." msgstr "Počet 512bajtových sektorů na bit (režim bitmapy)." -#: src/integritysetup.c:556 +#: src/integritysetup.c:573 msgid "Bitmap mode flush time" msgstr "Perioda vyprazdňování při režimu bitmapy" -#: src/integritysetup.c:557 +#: src/integritysetup.c:574 msgid "Tag size (per-sector)" msgstr "Velikost značky (na sektor)" -#: src/integritysetup.c:558 +#: src/integritysetup.c:575 msgid "Sector size" msgstr "Velikost sektoru" -#: src/integritysetup.c:559 +#: src/integritysetup.c:576 msgid "Buffers size" msgstr "Velikost vyrovnávací paměti" -#: src/integritysetup.c:561 +#: src/integritysetup.c:578 msgid "Data integrity algorithm" msgstr "Algoritmus pro kontrolu integrity dat" -#: src/integritysetup.c:562 +#: src/integritysetup.c:579 msgid "The size of the data integrity key" msgstr "Velikost klíče pro integritu dat" -#: src/integritysetup.c:563 +#: src/integritysetup.c:580 msgid "Read the integrity key from a file" msgstr "Klíč pro integritu načte ze souboru" -#: src/integritysetup.c:565 +#: src/integritysetup.c:582 msgid "Journal integrity algorithm" msgstr "Algoritmus pro integritu žurnálu" -#: src/integritysetup.c:566 +#: src/integritysetup.c:583 msgid "The size of the journal integrity key" msgstr "Velikost klíče integrity žurnálu" -#: src/integritysetup.c:567 +#: src/integritysetup.c:584 msgid "Read the journal integrity key from a file" msgstr "Klíč integrity žurnálu načte ze souboru" -#: src/integritysetup.c:569 +#: src/integritysetup.c:586 msgid "Journal encryption algorithm" msgstr "Algoritmus šifrování žurnálu" -#: src/integritysetup.c:570 +#: src/integritysetup.c:587 msgid "The size of the journal encryption key" msgstr "Velikost šifrovacího klíče žurnálu" -#: src/integritysetup.c:571 +#: src/integritysetup.c:588 msgid "Read the journal encryption key from a file" msgstr "Šifrovací klíč žurnálu načte ze souboru" -#: src/integritysetup.c:574 +#: src/integritysetup.c:591 msgid "Recovery mode (no journal, no tag checking)" msgstr "Režim obnovy (žádný žurnál, žádná kontrola značek)" -#: src/integritysetup.c:575 +#: src/integritysetup.c:592 msgid "Use bitmap to track changes and disable journal for integrity device" msgstr "Ke sledování změn použije bitmapu a vypne žurnál pro zařízení s integritou" -#: src/integritysetup.c:576 +#: src/integritysetup.c:593 msgid "Recalculate initial tags automatically." msgstr "Automaticky přepočítá počáteční značky." -#: src/integritysetup.c:649 +#: src/integritysetup.c:596 +msgid "Do not protect superblock with HMAC (old kernels)" +msgstr "Nechrání superblok pomocí HMAC (stará jádra)" + +#: src/integritysetup.c:597 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "Povolí přepočet svazků s klíči HMAC (stará jádra)" + +#: src/integritysetup.c:672 msgid "Option --integrity-recalculate can be used only for open action." msgstr "Přepínač --integrity-recalculate smí být použit jen při otevírá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 "Přepínače --journal-size, --interleave-sectors, --sector-size, --tag-size a --no-wipe lze použít jen při formátování." -#: src/integritysetup.c:675 +#: src/integritysetup.c:698 msgid "Invalid journal size specification." msgstr "Zadána neplatná velikost žurnálu." -#: src/integritysetup.c:680 +#: src/integritysetup.c:703 msgid "Both key file and key size options must be specified." msgstr "Musí být zadány oba přepínače pro soubor s klíčem a velikostí klíče." -#: src/integritysetup.c:683 -msgid "Integrity algorithm must be specified if integrity key is used." -msgstr "Je-li použit klíč integrity, musí být zadán algoritmus integrity." - -#: src/integritysetup.c:688 +#: src/integritysetup.c:708 msgid "Both journal integrity key file and key size options must be specified." msgstr "Musí být zadány oba přepínače pro soubor s klíčem žurnálu a velikostí klíče." -#: src/integritysetup.c:691 +#: src/integritysetup.c:711 msgid "Journal integrity algorithm must be specified if journal integrity key is used." msgstr "Je-li použit klíč integrity žurnálu, musí být zadán algoritmus integrity žurnálu." -#: src/integritysetup.c:696 +#: src/integritysetup.c:716 msgid "Both journal encryption key file and key size options must be specified." msgstr "Musí být zadány oba přepínače pro soubor s šifrovacím klíčem žurnálu a velikostí klíče." -#: src/integritysetup.c:699 +#: src/integritysetup.c:719 msgid "Journal encryption algorithm must be specified if journal encryption key is used." msgstr "Je-li použit šifrovací klíč žurnálu, musí být zadán algoritmus šifrování žurnálu." -#: src/integritysetup.c:703 +#: src/integritysetup.c:723 msgid "Recovery and bitmap mode options are mutually exclusive." msgstr "Přepínače režimu bitmapy a obnovení se vzájemně vylučují." -#: src/integritysetup.c:707 +#: src/integritysetup.c:727 msgid "Journal options cannot be used in bitmap mode." msgstr "Přepínače žurnálu nelze použití spolu s režimem bitmapy." -#: src/integritysetup.c:711 +#: src/integritysetup.c:731 msgid "Bitmap options can be used only in bitmap mode." msgstr "Přepínače bitmapy lze použít jen při režimu bitmapy." -#: src/cryptsetup_reencrypt.c:172 +#: src/cryptsetup_reencrypt.c:190 msgid "Reencryption already in-progress." msgstr "Přešifrování již probíhá." -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "Zařízení %s nelze výlučně otevřít. Zařízení se používá." -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "Alokace zarovnané paměti se nezdařila." -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "Ze zařízení %s nelze číst." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "LUKS1 zařízení %s se označuje za nepoužitelné." -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "Na zařízení %s se nastavuje příznak offline přešifrování." -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "Zařízení %s není možné zapsat." -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "Nelze zapsat soubor s protokolem přešifrování." -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "Soubor s protokolem přešifrování nelze načíst." -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "Soubor s protokolem %s existuje, pokračuje se v přerušeném přešifrování.\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "Aktivuje se dočasné zařízení za pomoci staré hlavičky LUKS." -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "Aktivuje se dočasné zařízení za pomoci nové hlavičky LUKS." -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "Aktivace dočasných zařízení selhala." -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "Nastavení polohy dat selhalo." -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "Nastavení velikosti metadat selhalo." -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "Byla vytvořena nová hlavička LUKS zařízení %s." -#: 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 "Tato verze cryptsetup-reencrypt neumí zacházet s novým vnitřním druhem tokenů %s." -#: src/cryptsetup_reencrypt.c:655 +#: src/cryptsetup_reencrypt.c:673 msgid "Failed to read activation flags from backup header." msgstr "Přečtení příznaků pro aktivaci ze záložní hlavičky selhalo." -#: src/cryptsetup_reencrypt.c:659 +#: src/cryptsetup_reencrypt.c:677 msgid "Failed to write activation flags to new header." msgstr "Zápis příznaků pro aktivaci do nové hlavičky selhal." -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "Čtení požadavků ze záložní hlavičky selhalo." -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "Záloha hlavičky %s zařízení %s byla vytvořena." -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "Záložní hlavičky LUKS se nepodařilo vytvořit." -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "Hlavičku %s na zařízení %s nelze obnovit." -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "Hlavička %s na zařízení %s byla obnovena." -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "Nelze otevřít dočasné zařízení LUKS." -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "Velikost zařízení nelze zjistit." -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "Chyba vstupu/výstupu během přešifrování." -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "Poskytnuté UUID není platné." -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "Nelze otevřít soubor s protokolem přešifrová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 "Žádné dešifrování není rozpracované. Poskytnuté UUID lze použít jen k dokončení pozastaveného procesu dešifrování." -#: src/cryptsetup_reencrypt.c:1504 +#: src/cryptsetup_reencrypt.c:1522 #, c-format msgid "Changed pbkdf parameters in keyslot %i." msgstr "Parametry PBKDF pro pozici klíče %i změněny." -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "Velikost bloku přešifrování" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "MiB" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "Nezmění klíč, oblast s daty se nepřešifruje" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "Nový (hlavní) klíč svazku načte ze souboru" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "Doba opakování PBKDF2 pro LUKS (v ms)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "K zařízením se bude přistupovat pomocí přímého I/O" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "Po každém bloku se zavolá fsync" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "Po každém bloku se aktualizuje soubor s protokolem" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "Použije se pouze tato pozice (ostatní budou zakázány)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "Vytvoří novou hlavičku na nešifrovaném zařízení" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "Natrvalo dešifruje zařízení (odstraní šifrování)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "UUID, které se použije pro dokončení dešifrování" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Druh metadat LUKS: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[PŘEPÍNAČ…] " -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "Přešifrování změní: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "klíč svazku" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "nastaví haš na " -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr ", nastaví šifru na " -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "Vyžadován argument." -#: 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 "Velikost bloku při přešifrování může nabývat hodnot pouze mezi 1 a 64 MiB." -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "Maximální velikost zmenšení zařízení je 64 MiB." -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "Přepínač --new musí být použit spolu s --reduce-device-size nebo --header." -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "Přepínač --keep-key lze použít jen s přepínači --hash, --iter-time nebo --pbkdf-force-iterations." -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "Přepínač --new nelze být použit spolu s --decrypt." -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "Přepínač --decrypt se neslučuje se zadanými parametry." -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "Přepínač --uuid lze použít jen spolu s přepínačem --decrypt." -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Neplatný druh LUKS. Použijte jeden z: „luks“, „luks1“ nebo „luks2“" @@ -3740,32 +3793,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "Příkaz selhal s kódem %i (%s).\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "Pozice klíče %i vytvořena." -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "Pozice klíče %i odemknuta." -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "Pozice klíče %i odemknuta." -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "Token %i vytvořen." -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "Token %i se odstraněn." -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3773,55 +3826,55 @@ "\n" "Výmaz přerušen." -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "POZOR: Zařízení %s již obsahuje vzorec oddílu „%s“.\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "POZOR: Zařízení %s již obsahuje vzorec superbloku „%s“.\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "Sondu vzorců zařízení se nepodařilo inicializovat." -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "O zařízení %s nebylo možné zjistit údaje." -#: 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 "Zařízení %s se používá. K formátování nelze přikročit." -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "Soubor %s nebylo možné otevřít pro čtení i zápis." -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "Existující vzorec „%s“ oddílu (poloha: % bajtů) na zařízení %s bude vymazán." -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "Existující vzorec superbloku „%s“ (poloha: % bajtů) na zařízení %s bude vymazán." -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "Odstranění vzorce ze zařízení selhalo." -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "Otestování zařízení %s na vzorce selhalo." -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3829,7 +3882,7 @@ "\n" "Přešifrování přerušeno." -#: src/utils_password.c:43 src/utils_password.c:75 +#: src/utils_password.c:43 src/utils_password.c:76 #, c-format msgid "Cannot check password quality: %s" msgstr "Odolnost hesla nelze prověřit: %s" @@ -3848,46 +3901,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "Kontrola odolnosti hesla selhala: Špatné heslo (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:228 src/utils_password.c:242 msgid "Error reading passphrase from terminal." msgstr "Chyba při čtení hesla z terminálu." -#: src/utils_password.c:206 +#: src/utils_password.c:240 msgid "Verify passphrase: " msgstr "Ověřte heslo: " -#: src/utils_password.c:213 +#: src/utils_password.c:247 msgid "Passphrases do not match." msgstr "Hesla se neshodují." -#: src/utils_password.c:250 +#: src/utils_password.c:284 msgid "Cannot use offset with terminal input." msgstr "Ve vstupu z terminálu nelze měnit polohu." -#: src/utils_password.c:253 +#: src/utils_password.c:287 #, c-format msgid "Enter passphrase: " msgstr "Zadejte heslo: " -#: src/utils_password.c:256 +#: src/utils_password.c:290 #, c-format msgid "Enter passphrase for %s: " msgstr "Zadejte heslo pro %s: " -#: src/utils_password.c:287 +#: src/utils_password.c:321 msgid "No key available with this passphrase." msgstr "S tímto heslem není dostupný žádný klíč." -#: src/utils_password.c:289 +#: src/utils_password.c:323 msgid "No usable keyslot is available." msgstr "Nejsou dostupné žádné použitelné pozice s klíči." -#: src/utils_password.c:328 +#: src/utils_password.c:365 #, c-format msgid "Cannot open keyfile %s for write." msgstr "Soubor s klíčem %s nelze otevřít pro zápis." -#: src/utils_password.c:335 +#: src/utils_password.c:372 #, c-format msgid "Cannot write to keyfile %s." msgstr "Do souboru s klíčem %s nelze zapsat." @@ -3930,6 +3983,15 @@ msgid "Failed to write JSON file." msgstr "Zapsaní souboru s dokumentem JSON selhalo." +#~ msgid "WARNING: Locking directory %s/%s is missing!\n" +#~ msgstr "POZOR: Adresář se zámkem %s/%s chybí!\n" + +#~ msgid "Invalid size parameters for verity device." +#~ msgstr "Neplatné parametry velikosti pro zařízení VERITY." + +#~ msgid "Integrity algorithm must be specified if integrity key is used." +#~ msgstr "Je-li použit klíč integrity, musí být zadán algoritmus integrity." + #~ msgid "Wrong key size." #~ msgstr "Špatná velikost klíče." diff -Nru cryptsetup-2.3.4/po/de.po cryptsetup-2.3.6/po/de.po --- cryptsetup-2.3.4/po/de.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/de.po 2021-05-28 04:57:08.000000000 -0500 @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.3-rc0\n" +"Project-Id-Version: cryptsetup 2.3.6-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-05-15 10:45+0200\n" -"PO-Revision-Date: 2020-05-15 15:19+0200\n" +"POT-Creation-Date: 2021-05-21 17:33+0200\n" +"PO-Revision-Date: 2021-05-22 19:35+0200\n" "Last-Translator: Roland Illig \n" "Language-Team: German \n" "Language: de\n" @@ -16,64 +16,65 @@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.3.1\n" +"X-Generator: Poedit 2.4.3\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: lib/libdevmapper.c:399 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "Das Kernelmodul »device-mapper« kann nicht initialisiert werden, da das Programm nicht mit Root-Rechten läuft." -#: lib/libdevmapper.c:402 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "Das Kernelmodul »device-mapper« kann nicht initialisiert werden. Ist das Kernelmodul »dm_mod« geladen?" -#: lib/libdevmapper.c:1131 +#: lib/libdevmapper.c:1180 msgid "Requested deferred flag is not supported." msgstr "Verlangter »deferred«-Schalter wird nicht unterstützt." -#: lib/libdevmapper.c:1198 +#: lib/libdevmapper.c:1249 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "DM-UUID für Gerät »%s« wurde verkürzt." -#: lib/libdevmapper.c:1520 +#: lib/libdevmapper.c:1580 msgid "Unknown dm target type." msgstr "Unbekannte Art des dm-Ziels." -#: lib/libdevmapper.c:1623 lib/libdevmapper.c:1679 +#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766 +#: lib/libdevmapper.c:1769 msgid "Requested dm-crypt performance options are not supported." msgstr "Die verlangten dm-crypt-Performance-Optionen werden nicht unterstützt." -#: lib/libdevmapper.c:1630 +#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Die verlangten dm-verity-Datenbeschädigungs-Optionen werden nicht unterstützt." -#: lib/libdevmapper.c:1634 +#: lib/libdevmapper.c:1721 msgid "Requested dm-verity FEC options are not supported." msgstr "Die verlangten dm-verity-FEC-Optionen werden nicht unterstützt." -#: lib/libdevmapper.c:1638 +#: lib/libdevmapper.c:1725 msgid "Requested data integrity options are not supported." msgstr "Die verlangten Datenintegritäts-Optionen werden nicht unterstützt." -#: lib/libdevmapper.c:1640 +#: lib/libdevmapper.c:1727 msgid "Requested sector_size option is not supported." msgstr "Die verlangte sector_size-Option wird nicht unterstützt." -#: lib/libdevmapper.c:1645 +#: lib/libdevmapper.c:1732 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "Die verlangte automatische Berechnung der Integritätsangaben wird nicht unterstützt." -#: 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:2170 msgid "Discard/TRIM is not supported." msgstr "»Discard/TRIM« wird nicht unterstützt." -#: lib/libdevmapper.c:1653 +#: lib/libdevmapper.c:1740 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "Der verlangte Bitmap-Modus für dm-Integrität wird nicht unterstützt." -#: lib/libdevmapper.c:2607 +#: lib/libdevmapper.c:2713 #, c-format msgid "Failed to query dm-%s segment." msgstr "Fehler beim Abfragen des »dm-%s«-Segments." @@ -115,7 +116,7 @@ msgid "Cannot initialize crypto backend." msgstr "Fehler beim Initialisieren des Krypto-Backends." -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "Hash-Algorithmus »%s« wird nicht unterstützt." @@ -129,7 +130,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "Geräte-Art kann nicht bestimmt werden. Inkompatible Aktivierung des Geräts?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "Diese Operation wird nur für LUKS-Geräte unterstützt." @@ -137,7 +138,7 @@ msgid "This operation is supported only for LUKS2 device." msgstr "Diese Operation wird nur für LUKS2-Geräte unterstützt." -#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2347 msgid "All key slots full." msgstr "Alle Schlüsselfächer sind voll." @@ -151,7 +152,7 @@ msgid "Key slot %d is full, please select another one." msgstr "Schlüsselfach %d ist voll, bitte wählen Sie ein anderes." -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "Gerätegröße ist nicht an logischer Sektorgröße ausgerichtet." @@ -160,7 +161,7 @@ msgid "Header detected but device %s is too small." msgstr "Header gefunden, aber Gerät »%s« ist zu klein." -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "Diese Operation wird für diese Geräteart nicht unterstützt." @@ -168,17 +169,13 @@ msgid "Illegal operation with reencryption in-progress." msgstr "Ungültige Operation, während die Wiederverschlüsselung läuft." -#: lib/setup.c:832 lib/luks1/keymanage.c:475 +#: lib/setup.c:832 lib/luks1/keymanage.c:482 #, c-format msgid "Unsupported LUKS version %d." msgstr "Nicht unterstützte LUKS-Version %d." -#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 -msgid "Detached metadata device is not supported for this crypt type." -msgstr "Gerät für separierte Metadaten wird für diese Verschlüsselungsart nicht unterstützt." - -#: 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:4532 #, c-format msgid "Device %s is not active." msgstr "Gerät »%s« ist nicht aktiv." @@ -192,7 +189,7 @@ msgid "Invalid plain crypt parameters." msgstr "Ungültige Parameter für Plain-Verschlüsselung." -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 msgid "Invalid key size." msgstr "Ungültige Schlüsselgröße." @@ -200,12 +197,16 @@ msgid "UUID is not supported for this crypt type." msgstr "UUID wird für diese Verschlüsselungsart nicht unterstützt." +#: lib/setup.c:1539 lib/setup.c:1959 +msgid "Detached metadata device is not supported for this crypt type." +msgstr "Gerät für separierte Metadaten wird für diese Verschlüsselungsart nicht unterstützt." + #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1226 src/cryptsetup.c:3923 +#: src/cryptsetup.c:1296 src/cryptsetup.c:4037 msgid "Unsupported encryption sector size." msgstr "Nicht unterstützte Sektorengröße für Verschlüsselung." -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "Gerätegröße ist nicht an verlangter Sektorgröße ausgerichtet." @@ -249,8 +250,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "Warnung: Größe des LUKS2-Schlüsselfachbereichs wurde auf % Bytes geändert.\n" -#: 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:2358 lib/luks2/luks2_reencrypt.c:3383 #, c-format msgid "Device %s is too small." msgstr "Gerät »%s« ist zu klein." @@ -283,16 +284,16 @@ msgid "Can't format VERITY without device." msgstr "Ohne Gerät kann VERITY nicht formatiert werden." -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "Nicht unterstützte VERITY-Hash-Art %d." -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "Nicht unterstützte VERITY-Blockgröße." -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "Nicht unterstützter VERITY-Hash-Offset." @@ -322,236 +323,236 @@ msgid "Unknown crypt device type %s requested." msgstr "Unbekannte Art des Verschlüsselungsgeräts »%s« verlangt." -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "Nicht unterstützte Parameter für Gerät %s." -#: 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:2410 +#: lib/luks2/luks2_reencrypt.c:2753 #, c-format msgid "Mismatching parameters on device %s." msgstr "Parameter für Gerät %s sind durcheinander." -#: lib/setup.c:2661 +#: lib/setup.c:2664 msgid "Crypt devices mismatch." msgstr "Verschlüsselungsgeräte passen nicht zusammen." -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3161 #, c-format msgid "Failed to reload device %s." msgstr "Gerät »%s« konnte nicht neugeladen werden." -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "Gerät »%s« konnte nicht stillgelegt werden." -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3096 lib/luks2/luks2_reencrypt.c:3165 #, c-format msgid "Failed to resume device %s." msgstr "Gerät »%s« konnte nicht fortgesetzt werden." -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "Schwerwiegender Fehler beim Neuladen von Gerät »%s« (über Gerät »%s«)." -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "Gerät »%s« konnte nicht auf dm-error umgeschaltet werden." -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "Fehler beim Ändern der Größe des Loopback-Geräts." -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "Wollen Sie wirklich die UUID des Geräts ändern?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "Header-Backupdatei enthält keinen kompatiblen LUKS-Header." -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "Laufwerk »%s« ist nicht aktiv." -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "Laufwerk »%s« ist bereits im Ruhezustand." -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "Das Gerät »%s« unterstützt keinen Ruhezustand." -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "Das Gerät »%s« kann nicht in den Ruhezustand versetzt werden." -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "Laufwerk »%s« ist nicht im Ruhezustand." - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "Das Gerät »%s« kann nicht aus dem Ruhezustand aufgeweckt werden." -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "Fehler beim Aufwecken von Gerät »%s« aus dem Ruhezustand." -#: 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 +#, c-format +msgid "Volume %s is not suspended." +msgstr "Laufwerk »%s« ist nicht im Ruhezustand." + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5862 msgid "Volume key does not match the volume." msgstr "Der Laufwerksschlüssel passt nicht zum Laufwerk." -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "Schlüsselfach kann nicht hinzugefügt werden, da alle Fächer deaktiviert sind und kein Laufwerksschlüssel angegeben wurde." -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "Neues Schlüsselfach konnte nicht ausgewechselt werden." -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "Schlüsselfach %d ist ungültig." -#: lib/setup.c:3675 src/cryptsetup.c:1572 src/cryptsetup.c:1917 +#: lib/setup.c:3679 src/cryptsetup.c:1634 src/cryptsetup.c:1979 #, c-format msgid "Keyslot %d is not active." msgstr "Schlüsselfach %d ist nicht aktiv." -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "Geräteheader und Datenbereich überlappen sich." -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "Wiederverschlüsselung läuft bereits. Das Gerät kann nicht aktiviert werden." -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2243 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2852 msgid "Failed to get reencryption lock." msgstr "Fehler beim Zugriff auf die Sperre zur Wiederverschlüsselung." -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2871 msgid "LUKS2 reencryption recovery failed." msgstr "Fehler beim Wiederherstellen der LUKS2-Wiederverschlüsselung." -#: lib/setup.c:4127 lib/setup.c:4379 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "Geräteart ist nicht richtig initialisiert." -#: lib/setup.c:4171 -#, c-format -msgid "Cannot use device %s, name is invalid or still in use." -msgstr "Gerät »%s« kann nicht verwendet werden, da es gerade benutzt wird oder der Name ungültig ist." - -#: lib/setup.c:4174 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "Das Gerät »%s« existiert bereits." -#: lib/setup.c:4296 +#: lib/setup.c:4192 +#, c-format +msgid "Cannot use device %s, name is invalid or still in use." +msgstr "Gerät »%s« kann nicht verwendet werden, da es gerade benutzt wird oder der Name ungültig ist." + +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "Falscher Laufwerksschlüssel für Plain-Gerät angegeben." -#: lib/setup.c:4405 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "Falscher Root-Hash-Schlüssel für VERITY-Gerät angegeben." -#: lib/setup.c:4412 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "Signatur des Stammhashes erforderlich." -#: lib/setup.c:4421 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "Der Kernel-Schlüsselbund fehlt. Wird benötigt, um die Signatur zum Kernel zu übergeben." -#: lib/setup.c:4438 lib/setup.c:5915 +#: lib/setup.c:4458 lib/setup.c:5938 msgid "Failed to load key in kernel keyring." msgstr "Fehler beim Laden des Schlüssels im Kernel-Schlüsselbund." -#: lib/setup.c:4491 lib/setup.c:4507 lib/luks2/luks2_json_metadata.c:2296 -#: src/cryptsetup.c:2664 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2744 #, c-format msgid "Device %s is still in use." msgstr "Gerät »%s« wird gerade benutzt." -#: lib/setup.c:4516 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "Ungültiges Gerät »%s«." -#: lib/setup.c:4632 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "Laufwerks-Schlüsselpuffer zu klein." -#: lib/setup.c:4640 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "Fehler beim Ermitteln des Laufwerksschlüssels für Plain-Gerät." -#: lib/setup.c:4657 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "Root-Hash für Verity-Gerät kann nicht ermittelt werden." -#: lib/setup.c:4659 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Diese Operation wird für Kryptogerät »%s« nicht unterstützt." -#: lib/setup.c:4865 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "Die Dump-Operation wird für diese Geräteart nicht unterstützt." -#: lib/setup.c:5190 +#: lib/setup.c:5213 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "Datenoffset ist kein Vielfaches von %u Bytes." -#: lib/setup.c:5475 +#: lib/setup.c:5498 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "Gerät »%s« kann nicht konvertiert werden, da es gerade benutzt wird." -#: lib/setup.c:5772 +#: lib/setup.c:5795 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "Schlüsselfach %u konnte nicht dem Laufwerksschlüssel zugeordnet werden." -#: lib/setup.c:5845 +#: lib/setup.c:5868 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "Fehler beim Initialisieren der LUKS2-Schlüsselfach-Parameter." -#: lib/setup.c:5851 +#: lib/setup.c:5874 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "Schlüsselfach %d konnte nicht dem Digest zugeordnet werden." -#: lib/setup.c:5982 +#: lib/setup.c:6005 msgid "Kernel keyring is not supported by the kernel." msgstr "Der Kernel-Schlüsselbund wird vom Kernel nicht unterstützt." -#: lib/setup.c:5992 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6015 lib/luks2/luks2_reencrypt.c:2968 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "Fehler beim Lesen der Passphrase vom Schlüsselbund (Fehler %d)." -#: lib/setup.c:6016 +#: lib/setup.c:6039 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "Globale Speicherzugriffsserialisierungssperre konnte nicht angefordert werden." @@ -579,8 +580,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "Fehler beim Zugriff auf die Schlüsseldatei." -#: 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 msgid "Out of memory while reading passphrase." msgstr "Zu wenig Speicher zum Einlesen der Passphrase." @@ -600,51 +601,56 @@ msgid "Cannot read requested amount of data." msgstr "Die gewünschte Menge an Daten kann nicht eingelesen werden." -#: 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 #, c-format msgid "Device %s does not exist or access denied." msgstr "Gerät »%s« existiert nicht oder Zugriff verweigert." -#: lib/utils_device.c:197 +#: lib/utils_device.c:200 #, c-format msgid "Device %s is not compatible." msgstr "Gerät »%s« ist nicht kompatibel." -#: lib/utils_device.c:642 +#: lib/utils_device.c:544 +#, c-format +msgid "Ignoring bogus optimal-io size for data device (%u bytes)." +msgstr "Merkwürdige Optimale-Datenübertragungs-Größe für Datengerät (%u Bytes) wird ignoriert." + +#: lib/utils_device.c:666 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "Gerät »%s« ist zu klein. Mindestens % Bytes erforderlich." -#: lib/utils_device.c:723 +#: lib/utils_device.c:747 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "Gerät »%s« kann nicht benutzt werden, da es bereits anderweitig benutzt wird." -#: lib/utils_device.c:727 +#: lib/utils_device.c:751 #, c-format msgid "Cannot use device %s, permission denied." msgstr "Gerät »%s« kann nicht verwendet werden, Zugriff verweigert." -#: lib/utils_device.c:730 +#: lib/utils_device.c:754 #, c-format msgid "Cannot get info about device %s." msgstr "Fehler beim Abrufen der Infos über Gerät »%s«." -#: lib/utils_device.c:753 +#: lib/utils_device.c:777 msgid "Cannot use a loopback device, running as non-root user." msgstr "Das Loopback-Gerät kann nicht benutzt werden, da das Programm nicht mit Root-Rechten läuft." -#: lib/utils_device.c:763 +#: lib/utils_device.c:787 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "Anklemmen des Loopback-Geräts fehlgeschlagen (das Loopback-Gerät benötigt den »autoclear«-Schalter)." -#: lib/utils_device.c:809 +#: lib/utils_device.c:833 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "Der angeforderte Offset ist jenseits der wirklichen Größe des Geräts »%s«." -#: lib/utils_device.c:817 +#: lib/utils_device.c:841 #, c-format msgid "Device %s has zero size." msgstr "Gerät »%s« hat die Größe 0." @@ -718,16 +724,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "WARNUNG: Zugriffssperren-Verzeichnis %s/%s ist nicht vorhanden!\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "Das Verzeichnis %s/%s, das die Dateisperren enthält, wird mit den vorgegebenen, fest einprogrammierten Berechtigungen erzeugt." #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Sperren abgebrochen. Der Sperrpfad %s/%s ist unbenutzbar (%s ist kein Verzeichnis)." -#: 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 msgid "Cannot seek to device offset." msgstr "Fehler beim Springen zum Gerät-Offset." @@ -755,8 +761,8 @@ msgstr "Verschlüsselungsverfahren sollte im Format [Verfahren]-[Modus]-[IV] sein." #: 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:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." msgstr "Fehler beim Schreiben auf Gerät »%s«, Zugriff verweigert." @@ -775,12 +781,12 @@ msgstr "E/A-Fehler beim Verschlüsseln des Schlüsselfachs." #: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "Fehler beim Öffnen des Geräts »%s«." @@ -801,43 +807,43 @@ msgid "LUKS keyslot %u is invalid." msgstr "LUKS-Schlüsselfach %u ist ungültig." -#: 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:1091 src/cryptsetup.c:1495 +#: src/cryptsetup.c:1621 src/cryptsetup.c:1678 src/cryptsetup.c:1734 +#: src/cryptsetup.c:1801 src/cryptsetup.c:1904 src/cryptsetup.c:1968 +#: src/cryptsetup.c:2198 src/cryptsetup.c:2409 src/cryptsetup.c:2471 +#: src/cryptsetup.c:2537 src/cryptsetup.c:2701 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3386 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "Gerät »%s« ist kein gültiges LUKS-Gerät." -#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1100 +#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1108 #, c-format msgid "Requested header backup file %s already exists." msgstr "Angeforderte Header-Backupdatei »%s« existiert bereits." -#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1102 +#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1110 #, c-format msgid "Cannot create header backup file %s." msgstr "Fehler beim Anlegen der Header-Backupdatei »%s«." -#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1109 +#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1117 #, c-format msgid "Cannot write header backup file %s." msgstr "Fehler beim Speichern der Header-Backupdatei »%s«." -#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1161 +#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1169 msgid "Backup file does not contain valid LUKS header." msgstr "Backupdatei enthält keinen gültigen LUKS-Header." -#: 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:1190 #, c-format msgid "Cannot open header backup file %s." msgstr "Fehler beim Öffnen der Header-Backupdatei »%s«." -#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1190 +#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1198 #, c-format msgid "Cannot read header backup file %s." msgstr "Fehler beim Einlesen der Header-Backupdatei »%s«." @@ -859,7 +865,7 @@ msgid "already contains LUKS header. Replacing header will destroy existing keyslots." msgstr "enthält bereits einen LUKS-Header. Das Ersetzen des Headers wird bestehende Schlüsselfächer zerstören." -#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1224 +#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1232 msgid "" "\n" "WARNING: real device header has different UUID than backup!" @@ -871,103 +877,103 @@ msgid "Non standard key size, manual repair required." msgstr "Ungewöhnliche Schlüsselgröße, manuelles Reparieren erforderlich." -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "Ungewöhnliche Ausrichtung der Schlüsselfächer, manuelles Reparieren erforderlich." -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "Schlüsselfächer werden repariert." -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Schlüsselfach %i: Offset repariert (%u -> %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Schlüsselfach %i: Streifen repariert (%u -> %u)." # XXX -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Schlüsselfach %i: schwindlerische Partitions-Signatur." -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Schlüsselfach %i: Salt gelöscht." -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "LUKS-Header wird auf den Datenträger geschrieben." -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "Fehler beim Reparieren." -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "Verlangter LUKS-Hash »%s« wird nicht unterstützt." -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1133 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1188 msgid "No known problems detected for LUKS header." msgstr "Keine bekannten Probleme im LUKS-Header erkannt." -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Fehler beim Aktualisieren des LUKS-Headers auf Gerät »%s«." -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Fehler beim Neueinlesen des LUKS-Headers nach dem Aktualisieren auf Gerät »%s«." -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "Daten-Offset für LUKS-Header muss entweder 0 sein oder mehr als die Headergröße." -#: 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:1009 +#: src/cryptsetup.c:2864 msgid "Wrong LUKS UUID format provided." msgstr "Falsches LUKS-UUID-Format angegeben." -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "LUKS-Header kann nicht angelegt werden: Fehler beim Einlesen des zufälligen Salts." # XXX -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "LUKS-Header kann nicht angelegt werden: Fehler beim Hashen des Headers (mit Hash-Algorithmus »%s«)." -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "Schlüsselfach %d aktiv, löschen Sie es erst." -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "Material für Schlüsselfach %d enthält zu wenige Streifen. Manipulation des Headers?" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "Schlüsselfach kann nicht geöffnet werden (mit Hash-Algorithmus »%s«)." -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "Schlüsselfach %d ist ungültig, bitte wählen Sie ein Schlüsselfach zwischen 0 und %d." -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "Gerät »%s« kann nicht ausgelöscht werden." @@ -1003,11 +1009,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "Der Hash-Algorithmus »%s« für PBKDF2 wird nicht unterstützt, überspringe diesen Teil." -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1010 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059 msgid "Required kernel crypto interface not available." msgstr "Die benötigte Crypto-Kernel-Schnittstelle ist nicht verfügbar." -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1012 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Stellen Sie sicher, dass das Kernelmodul »algif_skcipher« geladen ist." @@ -1020,159 +1026,173 @@ msgid "Kernel does not support activation for this TCRYPT legacy mode." msgstr "Der Kernel unterstützt die Aktivierung für diesen TCRYPT-Legacymodus nicht." -#: lib/tcrypt/tcrypt.c:793 +#: lib/tcrypt/tcrypt.c:790 #, c-format msgid "Activating TCRYPT system encryption for partition %s." msgstr "TCRYPT-Systemverschlüsselung für Partition »%s« wird aktiviert." -#: lib/tcrypt/tcrypt.c:871 +#: lib/tcrypt/tcrypt.c:868 msgid "Kernel does not support TCRYPT compatible mapping." msgstr "Kernel unterstützt TCRYPT-kompatibles Mapping nicht." -#: lib/tcrypt/tcrypt.c:1093 +#: lib/tcrypt/tcrypt.c:1090 msgid "This function is not supported without TCRYPT header load." msgstr "Diese Funktionalität braucht einen geladenen TCRYPT-Header." -#: 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 "Unerwartete Art »%u« des Metadaten-Eintrags beim Parsen des unterstützten Volume Master Keys gefunden." -#: lib/bitlk/bitlk.c:380 +#: lib/bitlk/bitlk.c:397 msgid "Invalid string found when parsing Volume Master Key." msgstr "Ungültige Zeichenkette beim Parsen des Volume Master Key gefunden." -#: lib/bitlk/bitlk.c:385 +#: lib/bitlk/bitlk.c:402 #, c-format msgid "Unexpected string ('%s') found when parsing supported Volume Master Key." msgstr "Unerwartete Zeichenkette »%s« beim Parsen des Volume Master Key gefunden." -#: 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 "Unerwarteter Metadaten-Eintrag %u beim Einlesen des unterstützten Volume Master Key gefunden." -#: lib/bitlk/bitlk.c:478 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "Fehler beim Lesen der BITLK-Signatur von »%s«." -#: lib/bitlk/bitlk.c:484 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Ungültige oder unbekannte Signatur für BITLK-Gerät." + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "BITLK Version 1 wird derzeit nicht unterstützt." -#: lib/bitlk/bitlk.c:490 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "Ungültige oder unbekannte Bootsignatur für BITLK-Gerät." -#: lib/bitlk/bitlk.c:502 -msgid "Invalid or unknown signature for BITLK device." -msgstr "Ungültige oder unbekannte Signatur für BITLK-Gerät." - -#: lib/bitlk/bitlk.c:509 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "Nicht unterstützte Sektorengröße %." -#: lib/bitlk/bitlk.c:517 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "Fehler beim Lesen des BITLK-Headers von »%s«." -#: lib/bitlk/bitlk.c:542 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "Fehler beim Schreiben der BITLK-FVE-Metadaten von »%s«." -#: lib/bitlk/bitlk.c:593 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "Unbekannte oder nicht unterstützte Verschlüsselungsart." -#: lib/bitlk/bitlk.c:626 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "Fehler beim Lesen der BITLK-Metadaten von »%s«." -#: lib/bitlk/bitlk.c:920 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "Unerwartete Art »%u« des Metadaten-Eintrags beim Parsen des externen Schlüssels gefunden." + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "Unerwarteter Metadaten-Eintrag »%u« beim Einlesen des externen Schlüssels gefunden." + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "Unerwartete Art »%u« des Metadaten-Eintrags beim Einlesen des Startschlüssels gefunden." + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "Diese Operation wird nicht unterstützt." -#: lib/bitlk/bitlk.c:928 -msgid "Wrong key size." -msgstr "Falsche Schlüsselgröße." +#: lib/bitlk/bitlk.c:1079 +msgid "Unexpected key data size." +msgstr "Unerwartete Größe des Datenschlüssels." -#: lib/bitlk/bitlk.c:980 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "Dieses BITLK-Gerät ist in einem nicht unterstützten Zustand und kann daher nicht aktiviert werden." -#: lib/bitlk/bitlk.c:986 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "BITLK-Geräte der Art »%s« können nicht aktiviert werden." -#: lib/bitlk/bitlk.c:1068 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "Aktivieren eines teilweise entschlüsselten BITLK-Geräts wird nicht unterstützt." -#: lib/bitlk/bitlk.c:1204 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "Gerät kann nicht aktiviert werden, dem Kernelmodul dm-crypt fehlt die Unterstützung für BITLK-IV." -#: lib/bitlk/bitlk.c:1208 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "Gerät kann nicht aktiviert werden, da dem Kernelmodul dm-crypt die Unterstützung für BITLK-Elephant-Verschleierer fehlt." -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "Verity-Gerät »%s« benutzt keinen Header auf dem Datenträger." -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "Gerät »%s« ist kein gültiges VERITY-Gerät." -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "Nicht unterstützte VERITY-Version %d." -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "VERITY-Header verfälscht." -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "Falsches VERITY-UUID-Format über Gerät »%s« angegeben." -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "Fehler beim Aktualisieren des VERITY-Headers auf Gerät »%s«." -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "Verifikation der Stammhash-Signatur wird nicht unterstützt." -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "Fehler können mit einem FEC-Gerät nicht repariert werden." -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "%u reparierbare Fehler mit FEC-Gerät gefunden." -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "Kernel unterstützt dm-verity-Zuordnung nicht." -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "Kernel unterstützt Signatur-Option für dm-verity nicht." -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "Verity-Gerät hat eine Verfälschung nach der Aktivierung festgestellt." @@ -1181,41 +1201,37 @@ msgid "Spare area is not zeroed at position %." msgstr "Zusätzlicher Platz an Position % ist nicht ausgenullt." -#: 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 msgid "Device offset overflow." msgstr "Überlauf beim Geräte-Offset." -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "Fehler beim Verifizieren an Position %." -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "Ungültige Größenparameter für Verity-Gerät." - -#: lib/verity/verity_hash.c:296 +#: lib/verity/verity_hash.c:273 msgid "Hash area overflow." msgstr "Überlauf des Hashbereichs." -#: lib/verity/verity_hash.c:373 +#: lib/verity/verity_hash.c:346 msgid "Verification of data area failed." msgstr "Fehler beim Verifizieren des Datenbereichs." -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "Fehler beim Verifizieren des Root-Hashes." -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "E/A-Fehler beim Anlegen des Hash-Bereiches." -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "Fehler beim Anlegen des Hash-Bereiches." -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "WARNUNG: Kernel kann das Gerät nicht aktivieren, wenn die Datenblockgröße die Seitengröße (%u) übersteigt." @@ -1224,53 +1240,61 @@ msgid "Failed to allocate RS context." msgstr "Fehler beim Reservieren des RS-Kontexts." -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "Fehler beim Reservieren des Puffers." -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Fehler beim Lesen des RS-Blocks %, Byte %d." -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "Fehler beim Lesen der Parität für RS-Block %." -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "Fehler beim Reparieren der Parität für RS-Block %." -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "Fehler beim Schreiben der Parität für RS-Block %." -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "Blockgrößen müssen für FEC zusammen passen." -#: lib/verity/verity_fec.c:229 +#: lib/verity/verity_fec.c:233 msgid "Invalid number of parity bytes." msgstr "Ungültige Anzahl von Paritätsbytes." -#: lib/verity/verity_fec.c:265 +#: lib/verity/verity_fec.c:238 +msgid "Invalid FEC segment length." +msgstr "Ungültige FEC-Segmentlänge." + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "Fehler beim Ermitteln der Größe von Gerät »%s«." -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355 msgid "Kernel does not support dm-integrity mapping." msgstr "Kernel unterstützt dm-integrity-Zuordnung nicht." -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "Kernel unterstützt feste Ausrichtung der Metadaten für dm-integrity nicht." -#: 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 "Der Kernel weigert sich, die unsichere Neuberechnungs-Option zu aktivieren. Um dies zu übersteuern, können Sie die veralteten Aktivierungsoptionen nutzen." + +#: lib/luks2/luks2_disk_metadata.c:383 lib/luks2/luks2_json_metadata.c:967 +#: lib/luks2/luks2_json_metadata.c:1252 #, c-format msgid "Failed to acquire write lock on device %s." msgstr "Fehler beim exklusiven Schreibzugriff auf Gerät »%s«." @@ -1291,45 +1315,45 @@ msgid "Requested data offset is too small." msgstr "Verlangter Daten-Offset ist zu klein." -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "WARNING: Der Schlüsselfach-Bereich (% Bytes) ist sehr klein, die LUKS2-Schlüsselfachanzahl ist sehr begrenzt.\n" -#: 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:954 lib/luks2/luks2_json_metadata.c:1082 +#: lib/luks2/luks2_json_metadata.c:1158 lib/luks2/luks2_keyslot_luks2.c:92 #: lib/luks2/luks2_keyslot_luks2.c:114 #, c-format msgid "Failed to acquire read lock on device %s." msgstr "Fehler beim Zugriff auf die Lesesperre für das Gerät »%s«." -#: lib/luks2/luks2_json_metadata.c:1167 +#: lib/luks2/luks2_json_metadata.c:1175 #, c-format msgid "Forbidden LUKS2 requirements detected in backup %s." msgstr "Verbotene LUKS2-Anforderungen in Backup »%s« entdeckt." -#: lib/luks2/luks2_json_metadata.c:1208 +#: lib/luks2/luks2_json_metadata.c:1216 msgid "Data offset differ on device and backup, restore failed." msgstr "Unterschiedliche Datenoffsets auf Gerät und Backup. Wiederherstellung fehlgeschlagen." -#: lib/luks2/luks2_json_metadata.c:1214 +#: lib/luks2/luks2_json_metadata.c:1222 msgid "Binary header with keyslot areas size differ on device and backup, restore failed." msgstr "Unterschiedliche Größe der Binärheader mit Schlüsselfach-Bereichen zwischen Gerät und Backup. Wiederherstellung fehlgeschlagen." -#: lib/luks2/luks2_json_metadata.c:1221 +#: lib/luks2/luks2_json_metadata.c:1229 #, c-format msgid "Device %s %s%s%s%s" msgstr "Gerät »%s« %s%s%s%s" -#: lib/luks2/luks2_json_metadata.c:1222 +#: lib/luks2/luks2_json_metadata.c:1230 msgid "does not contain LUKS2 header. Replacing header can destroy data on that device." msgstr "enthält keinen LUKS2-Header. Das Ersetzen des Headers kann Daten auf dem Gerät zerstören." -#: lib/luks2/luks2_json_metadata.c:1223 +#: lib/luks2/luks2_json_metadata.c:1231 msgid "already contains LUKS2 header. Replacing header will destroy existing keyslots." msgstr "enthält bereits einen LUKS2-Header. Das Ersetzen des Headers wird bestehende Schlüsselfächer zerstören." -#: lib/luks2/luks2_json_metadata.c:1225 +#: lib/luks2/luks2_json_metadata.c:1233 msgid "" "\n" "WARNING: unknown LUKS2 requirements detected in real device header!\n" @@ -1339,7 +1363,7 @@ "WARNUNG: Unbekannte LUKS2-Anforderungen im echten Geräteheader entdeckt!\n" "Das Ersetzen des Headers mit dem Backup kann zu Datenverlust auf dem Gerät führen!" -#: lib/luks2/luks2_json_metadata.c:1227 +#: lib/luks2/luks2_json_metadata.c:1235 msgid "" "\n" "WARNING: Unfinished offline reencryption detected on the device!\n" @@ -1349,50 +1373,50 @@ "WARNUNG: Unvollendete Offline-Wiederverschlüsselung auf dem Gerät entdeckt!\n" "Das Ersetzen des Headers mit dem Backup kann zu Datenverlust auf dem Gerät führen." -#: lib/luks2/luks2_json_metadata.c:1323 +#: lib/luks2/luks2_json_metadata.c:1333 #, c-format msgid "Ignored unknown flag %s." msgstr "Unbekannter Schalter »%s« wird ignoriert." -#: lib/luks2/luks2_json_metadata.c:2010 lib/luks2/luks2_reencrypt.c:1746 +#: lib/luks2/luks2_json_metadata.c:2020 lib/luks2/luks2_reencrypt.c:1746 #, c-format msgid "Missing key for dm-crypt segment %u" msgstr "Fehlender Schlüssel für dm-crypt-Segment %u" -#: lib/luks2/luks2_json_metadata.c:2022 lib/luks2/luks2_reencrypt.c:1764 +#: lib/luks2/luks2_json_metadata.c:2032 lib/luks2/luks2_reencrypt.c:1764 msgid "Failed to set dm-crypt segment." msgstr "Fehler beim Festlegen des »dm-crypt«-Segments." -#: lib/luks2/luks2_json_metadata.c:2028 lib/luks2/luks2_reencrypt.c:1770 +#: lib/luks2/luks2_json_metadata.c:2038 lib/luks2/luks2_reencrypt.c:1770 msgid "Failed to set dm-linear segment." msgstr "Fehler beim Festlegen des »dm-linear«-Segments." -#: lib/luks2/luks2_json_metadata.c:2155 +#: lib/luks2/luks2_json_metadata.c:2165 msgid "Unsupported device integrity configuration." msgstr "Nicht unterstützte Konfiguration für Geräteintegrität." -#: lib/luks2/luks2_json_metadata.c:2241 +#: lib/luks2/luks2_json_metadata.c:2251 msgid "Reencryption in-progress. Cannot deactivate device." msgstr "Wiederverschlüsselung läuft gerade. Das Gerät kann nicht deaktiviert werden." -#: lib/luks2/luks2_json_metadata.c:2252 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3206 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "Das stillgelegte Gerät »%s« mit dm-error-Ziel konnte nicht in den Fehlerzustand gesetzt werden." -#: lib/luks2/luks2_json_metadata.c:2332 +#: lib/luks2/luks2_json_metadata.c:2342 msgid "Failed to read LUKS2 requirements." msgstr "Fehler beim Lesen der LUKS2-Anforderungen." -#: lib/luks2/luks2_json_metadata.c:2339 +#: lib/luks2/luks2_json_metadata.c:2349 msgid "Unmet LUKS2 requirements detected." msgstr "Unerfüllte LUKS2-Anforderungen entdeckt." -#: lib/luks2/luks2_json_metadata.c:2347 +#: lib/luks2/luks2_json_metadata.c:2357 msgid "Operation incompatible with device marked for legacy reencryption. Aborting." msgstr "Diese Operation kann nicht mit einem Gerät durchgeführt werden, das für Altlasten-Wiederverschlüsselung markiert ist. Wird abgebrochen." -#: lib/luks2/luks2_json_metadata.c:2349 +#: lib/luks2/luks2_json_metadata.c:2359 msgid "Operation incompatible with device marked for LUKS2 reencryption. Aborting." msgstr "Diese Operation kann nicht mit einem Gerät durchgeführt werden, das für LUKS2-Wiederverschlüsselung markiert ist. Wird abgebrochen." @@ -1430,7 +1454,7 @@ msgid "Unable to move keyslot area. LUKS2 keyslots area too small." msgstr "Fehler beim Verschieben des Schlüsselfach-Bereichs. Bereich für die LUKS2-Schlüsselfächer ist zu klein." -#: 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 msgid "Unable to move keyslot area." msgstr "Fehler beim Verschieben des Schlüsselfach-Bereichs." @@ -1484,7 +1508,7 @@ #: 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:3046 msgid "Failed to initialize old segment storage wrapper." msgstr "Fehler beim Initialisieren der Umverpackung für den Speicher alter Segmente." @@ -1496,7 +1520,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "Fehler beim Lesen der Prüfsummen für die aktuelle Hotzone." -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3054 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "Fehler beim Lesen des Hotzone-Bereichs, der bei % beginnt." @@ -1539,210 +1563,210 @@ msgid "Failed to set new keyslots area size." msgstr "Fehler beim Festlegen der neuen Bereichsgröße für Schlüsselfächer." -#: lib/luks2/luks2_reencrypt.c:2318 +#: lib/luks2/luks2_reencrypt.c:2320 #, c-format msgid "Data shift is not aligned to requested encryption sector size (% bytes)." msgstr "Datenverschiebung ist nicht an der angeforderten Verschlüsselungs-Sektorgröße (% Bytes) ausgerichtet." -#: lib/luks2/luks2_reencrypt.c:2339 +#: lib/luks2/luks2_reencrypt.c:2341 #, c-format msgid "Data device is not aligned to requested encryption sector size (% bytes)." msgstr "Datengerät ist nicht an der angeforderten Verschlüsselungs-Sektorgröße (% Bytes) ausgerichtet." -#: lib/luks2/luks2_reencrypt.c:2360 +#: lib/luks2/luks2_reencrypt.c:2362 #, c-format msgid "Data shift (% sectors) is less than future data offset (% sectors)." msgstr "Datenverschiebung (% Sektoren) ist weniger als der zukünftige Datenoffset (% Sektoren)." -#: lib/luks2/luks2_reencrypt.c:2366 lib/luks2/luks2_reencrypt.c:2779 -#: lib/luks2/luks2_reencrypt.c:2800 +#: lib/luks2/luks2_reencrypt.c:2368 lib/luks2/luks2_reencrypt.c:2795 +#: lib/luks2/luks2_reencrypt.c:2816 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "Fehler beim exklusiven Öffnen von »%s« (wird bereits anderweitig benutzt)." -#: lib/luks2/luks2_reencrypt.c:2534 +#: lib/luks2/luks2_reencrypt.c:2536 msgid "Device not marked for LUKS2 reencryption." msgstr "Das Gerät ist nicht für LUKS2-Wiederverschlüsselung markiert." -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2542 lib/luks2/luks2_reencrypt.c:3311 msgid "Failed to load LUKS2 reencryption context." msgstr "Fehler beim Laden des LUKS2-Wiederverschlüsselungs-Kontextes." -#: lib/luks2/luks2_reencrypt.c:2619 +#: lib/luks2/luks2_reencrypt.c:2621 msgid "Failed to get reencryption state." msgstr "Fehler beim Einlesen des Wiederverschlüsselungs-Zustands." -#: lib/luks2/luks2_reencrypt.c:2623 +#: lib/luks2/luks2_reencrypt.c:2625 msgid "Device is not in reencryption." msgstr "Das Gerät befindet sich nicht in der Wiederverschlüsselung." -#: lib/luks2/luks2_reencrypt.c:2630 +#: lib/luks2/luks2_reencrypt.c:2632 msgid "Reencryption process is already running." msgstr "Der Wiederverschlüsselungs-Vorgang läuft bereits." -#: lib/luks2/luks2_reencrypt.c:2632 +#: lib/luks2/luks2_reencrypt.c:2634 msgid "Failed to acquire reencryption lock." msgstr "Fehler beim Zugriff auf die Schreibsperre für die Wiederverschlüsselung." -#: lib/luks2/luks2_reencrypt.c:2650 +#: lib/luks2/luks2_reencrypt.c:2652 msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "Wiederverschlüsselung kann nicht fortgesetzt werden. Führen Sie zuerst die Wiederverschlüsselungs-Wiederherstellung durch." -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2766 msgid "Active device size and requested reencryption size don't match." msgstr "Aktive Gerätegröße und angeforderte Wiederverschlüsselungsgröße passen nicht zusammen." -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2780 msgid "Illegal device size requested in reencryption parameters." msgstr "Ungültige Gerätegröße wurde in den Wiederverschlüsselungsparametern angefordert." -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "Wiederverschlüsselung läuft bereits. Wiederherstellung ist nicht möglich." -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2922 msgid "LUKS2 reencryption already initialized in metadata." msgstr "LUKS2-Wiederverschlüsselung ist in den Metadaten bereits initialisiert." -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2929 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "LUKS2-Wiederverschlüsselung konnte in den Metadaten nicht initialisiert werden." -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3020 msgid "Failed to set device segments for next reencryption hotzone." msgstr "Fehler beim Festlegen der Gerätesegmente für die nächste Wiederverschlüsselungs-Hotzone." -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3062 msgid "Failed to write reencryption resilience metadata." msgstr "Fehler beim Schreiben der Metadaten für robuste Wiederverschlüsselung." -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3069 msgid "Decryption failed." msgstr "Fehler beim Entschlüsseln." -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3074 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "Fehler beim Schreiben des Hotzone-Bereichs, der bei % beginnt." -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3079 msgid "Failed to sync data." msgstr "Fehler beim Synchronisieren von Daten." -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3087 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "Fehler beim Aktualisieren der Metadaten, nachdem die aktuelle Wiederverschlüsselungs-Hotzone beendet wurde." -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3154 msgid "Failed to write LUKS2 metadata." msgstr "Fehler beim Schreiben der LUKS2-Metadaten." -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3177 msgid "Failed to wipe backup segment data." msgstr "Fehler beim gründlichen Löschen der Backupsegmentdaten." -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3190 msgid "Failed to disable reencryption requirement flag." msgstr "Fehler beim Deaktivieren der Wiederverschlüsselungsanforderung." -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3198 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "Schwerwiegender Fehler beim Wiederverschlüsseln des Blocks bei %, % Sektoren lang." -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3207 msgid "Do not resume the device unless replaced with error target manually." msgstr "Das Gerät nicht fortsetzen, außer es wird manuell durch das Fehlerziel ersetzt." -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3256 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "Wiederverschlüsselung kann nicht fortgesetzt werden. Unerwarteter Zustand der Wiederverschlüsselung." -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3262 msgid "Missing or invalid reencrypt context." msgstr "Fehlender oder ungültiger Wiederverschlüsselungs-Kontext." -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3269 msgid "Failed to initialize reencryption device stack." msgstr "Fehler beim Initialisieren des Gerätestapels für Wiederverschlüsselung." -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3288 lib/luks2/luks2_reencrypt.c:3324 msgid "Failed to update reencryption context." msgstr "Fehler beim Aktualisieren des Wiederverschlüsselungskontexts." -#: lib/luks2/luks2_token.c:262 +#: lib/luks2/luks2_token.c:263 msgid "No free token slot." msgstr "Kein freies Fach für Token." # upstream: period missing -#: lib/luks2/luks2_token.c:269 +#: lib/luks2/luks2_token.c:270 #, c-format msgid "Failed to create builtin token %s." msgstr "Fehler beim Erzeugen des eingebauten Tokens »%s«." -#: src/cryptsetup.c:164 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "Passphrase-Verifikation ist nur auf Terminal-Eingaben möglich." -#: src/cryptsetup.c:221 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Verschlüsselungsparameter für Schlüsselfach wird nur für LUKS2-Geräte unterstützt." -#: 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:1339 +#: src/cryptsetup.c:3245 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "Kein bekanntes Verschlüsselungsmuster entdeckt." -#: src/cryptsetup.c:259 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "WARNUNG: Der Parameter --hash wird im Plain-Modus ignoriert, wenn eine Schlüsseldatei angegeben ist.\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 "WARNUNG: Die Option --keyfile-size wird ignoriert, da die Lesegröße die gleiche ist wie die Verschlüsselungsschlüsselgröße ist.\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 "Gerätesignaturen auf »%s« erkannt. Wenn Sie fortfahren, könnte das bestehende Daten beschädigen." -#: 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:1145 src/cryptsetup.c:1197 +#: src/cryptsetup.c:1316 src/cryptsetup.c:1389 src/cryptsetup.c:2036 +#: src/cryptsetup.c:2762 src/cryptsetup.c:2886 src/integritysetup.c:242 msgid "Operation aborted.\n" msgstr "Vorgang abgebrochen.\n" -#: src/cryptsetup.c:381 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "Die Option »--key-file« muss angegeben werden." -#: src/cryptsetup.c:434 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "VeraCrypt-PIM eingeben: " -#: src/cryptsetup.c:443 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "Ungültiger PIM-Wert: Formatfehler." -#: src/cryptsetup.c:446 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "Ungültiger PIM-Wert: 0." -#: src/cryptsetup.c:449 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "Ungültiger PIM-Wert: außerhalb des gültigen Bereichs." -#: src/cryptsetup.c:472 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "Kein Geräte-Header mit dieser Passphrase gefunden." -#: src/cryptsetup.c:541 +#: src/cryptsetup.c:582 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "Gerät »%s« ist kein gültiges BITLK-Gerät." -#: 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" @@ -1754,56 +1778,56 @@ "daher ausschließlich an einem sicheren Ort und verschlüsselt\n" "aufbewahrt werden." -#: src/cryptsetup.c:673 +#: src/cryptsetup.c:714 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "Gerät »%s« ist noch aktiv und zum verzögerten Entfernen eingeplant.\n" -#: 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 "Um die Größe von aktiven Geräten zu öndern, muss der Laufwerksschlüssel im Schlüsselbund sein, aber die Option --disable-keyring wurde angegeben." -#: src/cryptsetup.c:838 +#: src/cryptsetup.c:885 msgid "Benchmark interrupted." msgstr "Benchmark unterbrochen." -#: src/cryptsetup.c:859 +#: src/cryptsetup.c:906 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s (nicht zutreffend)\n" -#: src/cryptsetup.c:861 +#: src/cryptsetup.c:908 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u Iterationen pro Sekunde für %zu-Bit-Schlüssel\n" -#: src/cryptsetup.c:875 +#: src/cryptsetup.c:922 #, c-format msgid "%-10s N/A\n" msgstr "%-10s (nicht zutreffend)\n" -#: 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 "%-10s %4u Iterationen, %5u Speicher, %1u parallele Threads (CPUs) für %zu-Bit-Schlüssel (Zieldauer %u Millisekunden)\n" -#: src/cryptsetup.c:901 +#: src/cryptsetup.c:948 msgid "Result of benchmark is not reliable." msgstr "Das Ergebnis des Benchmarks ist nicht zuverlässig." -#: src/cryptsetup.c:951 +#: src/cryptsetup.c:998 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Die Tests sind nur annähernd genau, da sie nicht auf den Datenträger zugreifen.\n" # upstream: the following line should also be translated. This is because the long word "Schlüssel" for "Key" will break the layout, as well as "Verschlüsselung" for "Encryption". # To help the translators, you should provide an example for what goes into the %x placeholders, since I had to make an educated guess that the second %s would be exactly 4 characters long. This is an unnecessary burden for the translators. #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:971 +#: src/cryptsetup.c:1018 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*s Algorithmus | Schlüssel | Verschlüsselung | Entschlüsselung\n" -#: src/cryptsetup.c:975 +#: src/cryptsetup.c:1022 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "Verschlüsselung »%s« (mit Schlüsselgröße %i Bits) ist nicht verfügbar." @@ -1811,15 +1835,15 @@ # upstream: the following line should also be translated. This is because the long word "Schlüssel" for "Key" will break the layout, as well as "Verschlüsselung" for "Encryption". # To help the translators, you should provide an example for what goes into the %x placeholders, since I had to make an educated guess that the second %s would be exactly 4 characters long. This is an unnecessary burden for the translators. #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:994 +#: src/cryptsetup.c:1041 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "# Algorithmus | Schlüssel | Verschlüsselung | Entschlüsselung\n" -#: src/cryptsetup.c:1003 +#: src/cryptsetup.c:1052 msgid "N/A" msgstr "N/A" -#: src/cryptsetup.c:1083 +#: src/cryptsetup.c:1138 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1827,19 +1851,19 @@ "Es scheint, dass das Gerät keine Wiederherstellung der Wiederverschlüsselung braucht.\n" "Trotzdem fortsetzen?" -#: src/cryptsetup.c:1089 +#: src/cryptsetup.c:1144 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "Wirklich mit der Wiederherstellung der LUKS2-Wiederverschlüsselung fortfahren?" -#: src/cryptsetup.c:1098 +#: src/cryptsetup.c:1153 msgid "Enter passphrase for reencryption recovery: " msgstr "Geben Sie die Passphrase für die Wiederherstellung der Wiederverschlüsselung ein: " -#: src/cryptsetup.c:1141 +#: src/cryptsetup.c:1196 msgid "Really try to repair LUKS device header?" msgstr "Wirklich versuchen, den LUKS-Geräteheader wiederherzustellen?" -#: src/cryptsetup.c:1160 src/integritysetup.c:146 +#: src/cryptsetup.c:1215 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" @@ -1848,104 +1872,108 @@ "Sie können diesen Vorgang mit Strg+C unterbrechen (der nicht gesäuberte Bereich des Geräts wird dann ungültige Prüfsummen haben).\n" # upstream: it is boring that I have to translate the newline at the end of each of these messages. Translating strings without newlines is much easier and faster. Since it is redundant anyway (all calls to log_err have a trailing newline), this newline should be written implicitly. -#: src/cryptsetup.c:1182 src/integritysetup.c:168 +#: src/cryptsetup.c:1237 src/integritysetup.c:179 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "Fehler beim Deaktivieren des temporären Geräts »%s«." -#: src/cryptsetup.c:1231 +#: src/cryptsetup.c:1301 msgid "Integrity option can be used only for LUKS2 format." msgstr "Die Integritätsoption kann nur für das LUKS2-Format verwendet werden." -#: src/cryptsetup.c:1236 src/cryptsetup.c:1296 +#: src/cryptsetup.c:1306 src/cryptsetup.c:1366 msgid "Unsupported LUKS2 metadata size options." msgstr "Nicht unterstützte Optionen für Größe der LUKS-Metadaten." -#: src/cryptsetup.c:1253 +#: src/cryptsetup.c:1315 +msgid "Header file does not exist, do you want to create it?" +msgstr "Die Headerdatei existiert nicht, soll sie angelegt werden?" + +#: src/cryptsetup.c:1323 #, c-format msgid "Cannot create header file %s." msgstr "Fehler beim Anlegen der Headerdatei »%s«." -#: 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:1346 src/integritysetup.c:205 src/integritysetup.c:213 +#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303 +#: src/integritysetup.c:313 msgid "No known integrity specification pattern detected." msgstr "Kein bekanntes Integritätsspezifikationsmuster entdeckt." -#: src/cryptsetup.c:1289 +#: src/cryptsetup.c:1359 #, c-format msgid "Cannot use %s as on-disk header." msgstr "Das Gerät »%s« kann nicht als Datenträger-Header benutzt werden." -#: src/cryptsetup.c:1313 src/integritysetup.c:227 +#: src/cryptsetup.c:1383 src/integritysetup.c:236 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "Hiermit werden die Daten auf »%s« unwiderruflich überschrieben." -#: 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:1416 src/cryptsetup.c:1750 src/cryptsetup.c:1817 +#: src/cryptsetup.c:1919 src/cryptsetup.c:1985 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "Fehler beim Festlegen der PBKDF-Parameter." -#: src/cryptsetup.c:1439 +#: src/cryptsetup.c:1501 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "Verringerter Datenoffset ist nur für separaten LUKS-Header erlaubt." -#: src/cryptsetup.c:1450 src/cryptsetup.c:1761 +#: src/cryptsetup.c:1512 src/cryptsetup.c:1823 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "Die Größe des Laufwerksschlüssels erfordert Schlüsselfächer, bitte nutzen Sie dazu die Option »--key-size«." -#: src/cryptsetup.c:1488 +#: src/cryptsetup.c:1550 msgid "Device activated but cannot make flags persistent." msgstr "Gerät aktiviert, aber die Schalter können nicht dauerhaft gespeichert werden." -#: src/cryptsetup.c:1569 src/cryptsetup.c:1639 +#: src/cryptsetup.c:1631 src/cryptsetup.c:1701 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "Schlüsselfach %d zum Löschen ausgewählt." -#: src/cryptsetup.c:1581 src/cryptsetup.c:1642 +#: src/cryptsetup.c:1643 src/cryptsetup.c:1704 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "Dies ist das letzte Schlüsselfach. Wenn Sie diesen Schlüssel löschen, wird das Gerät unbrauchbar." -#: src/cryptsetup.c:1582 +#: src/cryptsetup.c:1644 msgid "Enter any remaining passphrase: " msgstr "Geben Sie irgendeine verbleibende Passphrase ein: " -#: src/cryptsetup.c:1583 src/cryptsetup.c:1644 +#: src/cryptsetup.c:1645 src/cryptsetup.c:1706 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Vorgang abgebrochen, das Schlüsselfach wurde NICHT gesäubert.\n" -#: src/cryptsetup.c:1621 +#: src/cryptsetup.c:1683 msgid "Enter passphrase to be deleted: " msgstr "Geben Sie die zu löschende Passphrase ein: " -#: src/cryptsetup.c:1702 src/cryptsetup.c:1776 src/cryptsetup.c:1810 +#: src/cryptsetup.c:1764 src/cryptsetup.c:1838 src/cryptsetup.c:1872 msgid "Enter new passphrase for key slot: " msgstr "Geben Sie die neue Passphrase für das Schlüsselfach ein: " -#: src/cryptsetup.c:1793 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1855 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "Geben Sie irgendeine bestehende Passphrase ein: " -#: src/cryptsetup.c:1861 +#: src/cryptsetup.c:1923 msgid "Enter passphrase to be changed: " msgstr "Geben Sie die zu ändernde Passphrase ein: " -#: src/cryptsetup.c:1877 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1939 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "Geben Sie die neue Passphrase ein: " -#: src/cryptsetup.c:1927 +#: src/cryptsetup.c:1989 msgid "Enter passphrase for keyslot to be converted: " msgstr "Geben Sie die Passphrase für das umzuwandelnde Schlüsselfach ein: " -#: src/cryptsetup.c:1951 +#: src/cryptsetup.c:2013 msgid "Only one device argument for isLuks operation is supported." msgstr "Die Operation »isLuks« unterstützt nur genau ein Geräte-Argument." -#: src/cryptsetup.c:2001 +#: src/cryptsetup.c:2063 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -1957,12 +1985,12 @@ "daher ausschließlich an einem sicheren Ort und verschlüsselt\n" "aufbewahrt werden." -#: src/cryptsetup.c:2066 +#: src/cryptsetup.c:2128 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "Schlüsselfach %d enthält keinen unverbundenen Schlüssel." -#: src/cryptsetup.c:2072 +#: src/cryptsetup.c:2134 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -1971,30 +1999,40 @@ "Dieser Dump sollte daher ausschließlich an einem sicheren Ort und\n" "verschlüsselt aufbewahrt werden." -#: src/cryptsetup.c:2207 src/cryptsetup.c:2228 +#: src/cryptsetup.c:2223 src/cryptsetup.c:2252 +#, c-format +msgid "%s is not active %s device name." +msgstr "%s ist kein aktives %s-Gerät." + +#: src/cryptsetup.c:2247 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "%s ist kein aktives LUKS-Gerät, oder der Header fehlt." + +#: src/cryptsetup.c:2285 src/cryptsetup.c:2306 msgid "Option --header-backup-file is required." msgstr "Option »--header-backup-file« muss angegeben werden." -#: src/cryptsetup.c:2258 +#: src/cryptsetup.c:2336 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s ist kein von cryptsetup verwaltetes Gerät." -#: src/cryptsetup.c:2269 +#: src/cryptsetup.c:2347 #, c-format msgid "Refresh is not supported for device type %s" msgstr "Die Geräteart »%s« kann nicht aufgefrischt werden" -#: src/cryptsetup.c:2311 +#: src/cryptsetup.c:2389 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Unbekannte Art »%s« des Metadaten-Geräts." -#: src/cryptsetup.c:2314 +#: src/cryptsetup.c:2392 msgid "Command requires device and mapped name as arguments." msgstr "Dieser Befehl benötigt den Gerätenamen und den zugeordneten Namen als Argumente." -#: src/cryptsetup.c:2336 +#: src/cryptsetup.c:2414 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -2003,95 +2041,95 @@ "Diese Operation wird alle Schlüsselfächer auf Gerät »%s« löschen.\n" "Dadurch wird das Gerät unbrauchbar." -#: src/cryptsetup.c:2343 +#: src/cryptsetup.c:2421 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Vorgang abgebrochen, die Schlüsselfächer wurden NICHT gesäubert.\n" -#: src/cryptsetup.c:2380 +#: src/cryptsetup.c:2460 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Invalid LUKS type, only luks1 and luks2 are supported." -#: src/cryptsetup.c:2398 +#: src/cryptsetup.c:2478 #, c-format msgid "Device is already %s type." msgstr "Das Gerät hat bereits den Typ »%s«." -#: src/cryptsetup.c:2403 +#: src/cryptsetup.c:2483 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Diese Operation wird für »%s« ins Format »%s« umwandeln.\n" -#: src/cryptsetup.c:2409 +#: src/cryptsetup.c:2489 msgid "Operation aborted, device was NOT converted.\n" msgstr "Vorgang abgebrochen, das Gerät wurde NICHT konvertiert.\n" -#: src/cryptsetup.c:2449 +#: src/cryptsetup.c:2529 msgid "Option --priority, --label or --subsystem is missing." msgstr "Die Option --priority, --label oder --subsystem fehlt." -#: src/cryptsetup.c:2483 src/cryptsetup.c:2516 src/cryptsetup.c:2539 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2596 src/cryptsetup.c:2619 #, c-format msgid "Token %d is invalid." msgstr "Token %d ist ungültig." -#: src/cryptsetup.c:2486 src/cryptsetup.c:2542 +#: src/cryptsetup.c:2566 src/cryptsetup.c:2622 #, c-format msgid "Token %d in use." msgstr "Token %d ist in Benutzung." -#: src/cryptsetup.c:2493 +#: src/cryptsetup.c:2573 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "Fehler beim Hinzufügen des LUKS2-Schlüsselring-Tokens %d." -#: src/cryptsetup.c:2502 src/cryptsetup.c:2564 +#: src/cryptsetup.c:2582 src/cryptsetup.c:2644 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "Token %d kann nicht dem Schlüsselfach %d zugeordnet werden." -#: src/cryptsetup.c:2519 +#: src/cryptsetup.c:2599 #, c-format msgid "Token %d is not in use." msgstr "Token %d wird gerade nicht verwendet." -#: src/cryptsetup.c:2554 +#: src/cryptsetup.c:2634 msgid "Failed to import token from file." msgstr "Token konnte nicht aus der Datei importiert werden." -#: src/cryptsetup.c:2579 +#: src/cryptsetup.c:2659 #, c-format msgid "Failed to get token %d for export." msgstr "Auf Token %d kann nicht für den Export zugegriffen werden." -#: src/cryptsetup.c:2594 +#: src/cryptsetup.c:2674 msgid "--key-description parameter is mandatory for token add action." msgstr "Der Parameter --key-description ist Pflicht für die Aktion »token add«." -#: src/cryptsetup.c:2600 src/cryptsetup.c:2608 +#: src/cryptsetup.c:2680 src/cryptsetup.c:2688 msgid "Action requires specific token. Use --token-id parameter." msgstr "Die Aktion erfordert ein bestimmtes Token. Verwenden Sie den Parameter --token-id." -#: src/cryptsetup.c:2613 +#: src/cryptsetup.c:2693 #, c-format msgid "Invalid token operation %s." msgstr "Ungültige Token-Operation »%s«." -#: src/cryptsetup.c:2668 +#: src/cryptsetup.c:2748 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "Automatisch erkanntes aktives dm-Gerät »%s« für Datengerät »%s«.\n" -#: src/cryptsetup.c:2672 +#: src/cryptsetup.c:2752 #, c-format msgid "Device %s is not a block device.\n" msgstr "Gerät »%s« ist kein Blockgerät.\n" -#: src/cryptsetup.c:2674 +#: src/cryptsetup.c:2754 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "Fehler bei der automatischen Erkennung von Gerät »%s«." -#: src/cryptsetup.c:2676 +#: src/cryptsetup.c:2756 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2104,233 +2142,242 @@ "Es kann zu Datenverlust kommen, wenn das Gerät gerade aktiviert ist.\n" "Um die Wiederverschlüsselung im Online-Modus durchzuführen, verwenden Sie stattdessen den Parameter --active-name.\n" -#: src/cryptsetup.c:2756 +#: src/cryptsetup.c:2836 msgid "Invalid LUKS device type." msgstr "Ungültige LUKS-Geräteart." -#: src/cryptsetup.c:2761 +#: src/cryptsetup.c:2841 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." msgstr "Verschlüsselung ohne separaten Kopfbereich (--header) ist nur möglich, wenn die Größe des Hauptgeräts reduziert wird (--reduce-device-size)." -#: src/cryptsetup.c:2766 +#: src/cryptsetup.c:2846 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "Der angeforderte Datenoffset darf maximal die Hälfte des Parameters --reduce-device-size betragen." -#: src/cryptsetup.c:2775 +#: src/cryptsetup.c:2855 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "Der Wert von --reduce-device-size wird auf das Doppelte von --offset % (in Sektoren) angepasst.\n" -#: src/cryptsetup.c:2779 +#: src/cryptsetup.c:2859 msgid "Encryption is supported only for LUKS2 format." msgstr "Verschlüsselung wird nur für das LUKS2-Format unterstützt." -#: src/cryptsetup.c:2801 +#: src/cryptsetup.c:2882 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "LUKS-Gerät auf »%s« erkannt. Möchten Sie dieses LUKS-Gerät erneut verschlüsseln?" -#: src/cryptsetup.c:2816 +#: src/cryptsetup.c:2900 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "Temporäre Headerdatei »%s« existiert bereits. Wird abgebrochen." -#: src/cryptsetup.c:2818 src/cryptsetup.c:2825 +#: src/cryptsetup.c:2902 src/cryptsetup.c:2909 #, c-format msgid "Cannot create temporary header file %s." msgstr "Fehler beim Anlegen der temporären Headerdatei »%s«." -#: src/cryptsetup.c:2889 +#: src/cryptsetup.c:2976 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "%s/%s ist jetzt aktiv und bereit für die Onlineverschlüsselung.\n" -#: src/cryptsetup.c:3053 src/cryptsetup.c:3059 +#: src/cryptsetup.c:3013 +msgid "LUKS2 decryption is supported with detached header device only." +msgstr "LUKS2-Entschlüsselung wird nur mit losgelöstem Headergerät unterstützt." + +#: src/cryptsetup.c:3146 src/cryptsetup.c:3152 msgid "Not enough free keyslots for reencryption." msgstr "Nicht genügend freie Schlüsselfächer für Wiederverschlüsselung." -#: src/cryptsetup.c:3079 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3172 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "Schlüsseldatei kann nur mit --key-slot oder mit genau einem aktiven Schlüsselfach benutzt werden." -#: src/cryptsetup.c:3088 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3181 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "Geben Sie die Passphrase für Schlüsselfach %d ein: " -#: src/cryptsetup.c:3096 +#: src/cryptsetup.c:3190 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "Geben Sie die Passphrase für Schlüsselfach %u ein: " -#: src/cryptsetup.c:3263 +#: src/cryptsetup.c:3236 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "Der Verschlüsselungsalgorithmus wird auf %s geändert.\n" + +#: src/cryptsetup.c:3369 msgid "Command requires device as argument." msgstr "Dieser Befehl benötigt den Gerätenamen als Argument." -#: src/cryptsetup.c:3285 +#: src/cryptsetup.c:3391 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "Derzeit wird nur das LUKS2-Format unterstützt. Bitte verwenden Sie das Werkzeug cryptsetup-reencrypt für LUKS1." -#: src/cryptsetup.c:3297 +#: src/cryptsetup.c:3403 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "Veraltete Offline-Wiederverschlüsselung wird gerade durchgeführt. Verwenden Sie das Hilfsprogramm cryptsetup-reencrypt." -#: src/cryptsetup.c:3307 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3413 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "Wiederverschlüsselung von Geräten mit Integritätsprofil wird nicht unterstützt." -#: src/cryptsetup.c:3315 +#: src/cryptsetup.c:3421 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "Die LUKS2-Wiederverschlüsselung wurde bereits begonnen. Die Operation wird abgebrochen." -#: src/cryptsetup.c:3319 +#: src/cryptsetup.c:3425 msgid "LUKS2 device is not in reencryption." msgstr "LUKS2-Gerät wird derzeit nicht wiederverschlüsselt." -#: src/cryptsetup.c:3346 +#: src/cryptsetup.c:3452 msgid " [--type ] []" msgstr " [--type ] []" -#: src/cryptsetup.c:3346 src/veritysetup.c:394 src/integritysetup.c:480 +#: src/cryptsetup.c:3452 src/veritysetup.c:408 src/integritysetup.c:493 msgid "open device as " msgstr "Gerät als öffnen" -#: 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:3453 src/cryptsetup.c:3454 src/cryptsetup.c:3455 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494 +#: src/integritysetup.c:495 msgid "" msgstr "" -#: src/cryptsetup.c:3347 src/veritysetup.c:395 src/integritysetup.c:481 +#: src/cryptsetup.c:3453 src/veritysetup.c:409 src/integritysetup.c:494 msgid "close device (remove mapping)" msgstr "Gerät schließen (Zuordnung entfernen)" -#: src/cryptsetup.c:3348 +#: src/cryptsetup.c:3454 msgid "resize active device" msgstr "Größe des aktiven Geräts ändern" -#: src/cryptsetup.c:3349 +#: src/cryptsetup.c:3455 msgid "show device status" msgstr "Gerätestatus anzeigen" -#: src/cryptsetup.c:3350 +#: src/cryptsetup.c:3456 msgid "[--cipher ]" msgstr "[--cipher ]" -#: src/cryptsetup.c:3350 +#: src/cryptsetup.c:3456 msgid "benchmark cipher" msgstr "Verschlüsselungsalgorithmus benchmarken" -#: 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:3457 src/cryptsetup.c:3458 src/cryptsetup.c:3459 +#: src/cryptsetup.c:3460 src/cryptsetup.c:3461 src/cryptsetup.c:3468 +#: src/cryptsetup.c:3469 src/cryptsetup.c:3470 src/cryptsetup.c:3471 +#: src/cryptsetup.c:3472 src/cryptsetup.c:3473 src/cryptsetup.c:3474 +#: src/cryptsetup.c:3475 src/cryptsetup.c:3476 msgid "" msgstr "" -#: src/cryptsetup.c:3351 +#: src/cryptsetup.c:3457 msgid "try to repair on-disk metadata" msgstr "Versuchen, die Metadaten auf dem Datenträger zu reparieren" -#: src/cryptsetup.c:3352 +#: src/cryptsetup.c:3458 msgid "reencrypt LUKS2 device" msgstr "LUKS2-Gerät wiederverschlüsseln" -#: src/cryptsetup.c:3353 +#: src/cryptsetup.c:3459 msgid "erase all keyslots (remove encryption key)" msgstr "Alle Schlüsselfächer löschen (Verschlüsselungsschlüssel entfernen)" -#: src/cryptsetup.c:3354 +#: src/cryptsetup.c:3460 msgid "convert LUKS from/to LUKS2 format" msgstr "Zwischen den Formaten LUKS und LUKS2 umwandeln" -#: src/cryptsetup.c:3355 +#: src/cryptsetup.c:3461 msgid "set permanent configuration options for LUKS2" msgstr "Permanente Konfigurationsoptionen für LUKS2 festlegen" -#: src/cryptsetup.c:3356 src/cryptsetup.c:3357 +#: src/cryptsetup.c:3462 src/cryptsetup.c:3463 msgid " []" msgstr " []" -#: src/cryptsetup.c:3356 +#: src/cryptsetup.c:3462 msgid "formats a LUKS device" msgstr "Ein LUKS-Gerät formatieren" -#: src/cryptsetup.c:3357 +#: src/cryptsetup.c:3463 msgid "add key to LUKS device" msgstr "Schlüssel zu LUKS-Gerät hinzufügen" -#: src/cryptsetup.c:3358 src/cryptsetup.c:3359 src/cryptsetup.c:3360 +#: src/cryptsetup.c:3464 src/cryptsetup.c:3465 src/cryptsetup.c:3466 msgid " []" msgstr " []" -#: src/cryptsetup.c:3358 +#: src/cryptsetup.c:3464 msgid "removes supplied key or key file from LUKS device" msgstr "Entfernt bereitgestellten Schlüssel oder Schlüsseldatei vom LUKS-Gerät" -#: src/cryptsetup.c:3359 +#: src/cryptsetup.c:3465 msgid "changes supplied key or key file of LUKS device" msgstr "Ändert den angegebenen Schlüssel oder die Schlüsseldatei des LUKS-Geräts" -#: src/cryptsetup.c:3360 +#: src/cryptsetup.c:3466 msgid "converts a key to new pbkdf parameters" msgstr "Wandelt einen Schlüssel in neue PBKDF-Parameter um" -#: src/cryptsetup.c:3361 +#: src/cryptsetup.c:3467 msgid " " msgstr " " -#: src/cryptsetup.c:3361 +#: src/cryptsetup.c:3467 msgid "wipes key with number from LUKS device" msgstr "Löscht Schlüssel mit Nummer vom LUKS-Gerät" -#: src/cryptsetup.c:3362 +#: src/cryptsetup.c:3468 msgid "print UUID of LUKS device" msgstr "UUID des LUKS-Geräts ausgeben" -#: src/cryptsetup.c:3363 +#: src/cryptsetup.c:3469 msgid "tests for LUKS partition header" msgstr "Testet auf Header einer LUKS-Partition" -#: src/cryptsetup.c:3364 +#: src/cryptsetup.c:3470 msgid "dump LUKS partition information" msgstr "LUKS-Partitionsinformationen ausgeben" -#: src/cryptsetup.c:3365 +#: src/cryptsetup.c:3471 msgid "dump TCRYPT device information" msgstr "TCRYPT-Geräteinformationen ausgeben" -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3472 msgid "dump BITLK device information" msgstr "BITLK-Geräteinformationen ausgeben" -#: src/cryptsetup.c:3367 +#: src/cryptsetup.c:3473 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "LUKS-Gerät in Ruhezustand versetzen und alle Schlüssel auslöschen (alle IOs werden eingefroren)" -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3474 msgid "Resume suspended LUKS device" msgstr "LUKS-Gerät aus dem Ruhezustand aufwecken" -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3475 msgid "Backup LUKS device header and keyslots" msgstr "Header und Schlüsselfächer eines LUKS-Geräts sichern" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3476 msgid "Restore LUKS device header and keyslots" msgstr "Header und Schlüsselfächer eines LUKS-Geräts wiederherstellen" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3477 msgid " " msgstr " " -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3477 msgid "Manipulate LUKS2 tokens" msgstr "LUKS2-Token manipulieren" -#: src/cryptsetup.c:3389 src/veritysetup.c:412 src/integritysetup.c:498 +#: src/cryptsetup.c:3495 src/veritysetup.c:426 src/integritysetup.c:511 msgid "" "\n" " is one of:\n" @@ -2338,7 +2385,7 @@ "\n" " ist eine von:\n" -#: src/cryptsetup.c:3395 +#: src/cryptsetup.c:3501 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2350,7 +2397,7 @@ "\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3399 +#: src/cryptsetup.c:3505 #, c-format msgid "" "\n" @@ -2365,7 +2412,7 @@ " ist die Nummer des zu verändernden LUKS-Schlüsselfachs\n" " optionale Schlüsseldatei für den neuen Schlüssel der »luksAddKey«-Aktion\n" -#: src/cryptsetup.c:3406 +#: src/cryptsetup.c:3512 #, c-format msgid "" "\n" @@ -2374,7 +2421,7 @@ "\n" "Vorgegebenes festeingebautes Metadatenformat ist %s (für luksFormat-Aktion).\n" -#: src/cryptsetup.c:3411 +#: src/cryptsetup.c:3517 #, c-format msgid "" "\n" @@ -2391,7 +2438,7 @@ "Vorgabe-PBKDF für LUKS2: %s\n" "\tIterationszeit: %d, benötigter Speicher: %d kB, parallele Threads: %d\n" -#: src/cryptsetup.c:3422 +#: src/cryptsetup.c:3528 #, c-format msgid "" "\n" @@ -2406,444 +2453,452 @@ "\tplain: %s, Schlüssel: %d Bits, Passphrase-Hashen: %s\n" "\tLUKS: %s, Schlüssel: %d Bits, LUKS-Header-Hashen: %s, Zufallszahlengenerator: %s\n" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3537 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: Standard-Schlüsselgröße mit XTS-Modus (zwei interne Schlüssel) wird verdoppelt.\n" -#: src/cryptsetup.c:3447 src/veritysetup.c:569 src/integritysetup.c:642 +#: src/cryptsetup.c:3555 src/veritysetup.c:587 src/integritysetup.c:665 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: Benötigt %s als Argumente" -#: src/cryptsetup.c:3480 src/veritysetup.c:457 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3587 src/veritysetup.c:472 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "Diese Hilfe anzeigen" -#: src/cryptsetup.c:3481 src/veritysetup.c:458 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3588 src/veritysetup.c:473 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "Kurze Aufrufsyntax anzeigen" -#: src/cryptsetup.c:3482 src/veritysetup.c:459 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3589 src/veritysetup.c:474 src/integritysetup.c:555 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "Paketversion ausgeben" -#: src/cryptsetup.c:3486 src/veritysetup.c:463 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3593 src/veritysetup.c:478 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "Hilfe-Optionen:" -#: src/cryptsetup.c:3487 src/veritysetup.c:464 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3594 src/veritysetup.c:479 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "Zeigt detailliertere Fehlermeldungen an" -#: src/cryptsetup.c:3488 src/veritysetup.c:465 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3595 src/veritysetup.c:480 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "Zeigt Debugging-Meldungen an" -#: src/cryptsetup.c:3489 +#: src/cryptsetup.c:3596 msgid "Show debug messages including JSON metadata" msgstr "Debugging-Meldungen anzeigen, inclusive JSON-Metadaten" -#: src/cryptsetup.c:3490 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3597 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "Der Algorithmus zum Verschlüsseln des Datenträgers (siehe /proc/crypto)" -#: src/cryptsetup.c:3491 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3598 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "Das Hashverfahren, um den Verschlüsselungsschlüssel aus der Passphrase zu erzeugen" -#: src/cryptsetup.c:3492 +#: src/cryptsetup.c:3599 msgid "Verifies the passphrase by asking for it twice" msgstr "Verifiziert die Passphrase durch doppeltes Nachfragen" -#: src/cryptsetup.c:3493 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3600 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "Schlüssel aus einer Datei lesen" -#: src/cryptsetup.c:3494 +#: src/cryptsetup.c:3601 msgid "Read the volume (master) key from file." msgstr "Laufwerks-(Master-)Schlüssel aus Datei lesen." -#: src/cryptsetup.c:3495 +#: src/cryptsetup.c:3602 msgid "Dump volume (master) key instead of keyslots info" msgstr "Laufwerks-(Master-)schlüssel anstelle der Schlüsselfach-Informationen wegschreiben" -#: src/cryptsetup.c:3496 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "Die Größe des Verschlüsselungsschlüssels" -#: 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:3603 src/cryptsetup.c:3666 src/integritysetup.c:579 +#: src/integritysetup.c:583 src/integritysetup.c:587 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "BITS" -#: src/cryptsetup.c:3497 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3604 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "Begrenzt das Lesen aus der Schlüsseldatei" -#: 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:3604 src/cryptsetup.c:3605 src/cryptsetup.c:3606 +#: src/cryptsetup.c:3607 src/cryptsetup.c:3610 src/cryptsetup.c:3663 +#: src/cryptsetup.c:3664 src/cryptsetup.c:3672 src/cryptsetup.c:3673 +#: 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 "Bytes" -#: src/cryptsetup.c:3498 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3605 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "Anzahl der Bytes, die in der Schlüsseldatei übersprungen werden" -#: src/cryptsetup.c:3499 +#: src/cryptsetup.c:3606 msgid "Limits the read from newly added keyfile" msgstr "Begrenzt das Lesen aus der neu erzeugten Schlüsseldatei" -#: src/cryptsetup.c:3500 +#: src/cryptsetup.c:3607 msgid "Number of bytes to skip in newly added keyfile" msgstr "Anzahl der Bytes, die in der neu erzeugten Schlüsseldatei übersprungen werden" -#: src/cryptsetup.c:3501 +#: src/cryptsetup.c:3608 msgid "Slot number for new key (default is first free)" msgstr "Fachnummer für den neuen Schlüssel (im Zweifel das nächste freie)" -#: src/cryptsetup.c:3502 +#: src/cryptsetup.c:3609 msgid "The size of the device" msgstr "Die Größe des Geräts" -#: 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:3609 src/cryptsetup.c:3611 src/cryptsetup.c:3612 +#: src/cryptsetup.c:3618 src/integritysetup.c:569 src/integritysetup.c:576 msgid "SECTORS" msgstr "SEKTOREN" -#: src/cryptsetup.c:3503 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3610 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "Nur die angegebene Gerätegröße benutzen (Rest des Gerätes ignorieren). GEFÄHRLICH!" -#: src/cryptsetup.c:3504 +#: src/cryptsetup.c:3611 msgid "The start offset in the backend device" msgstr "Der Startoffset im Backend-Gerät" -#: src/cryptsetup.c:3505 +#: src/cryptsetup.c:3612 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Wieviele Sektoren der verschlüsselten Daten am Anfang übersprungen werden sollen" -#: src/cryptsetup.c:3506 +#: src/cryptsetup.c:3613 msgid "Create a readonly mapping" msgstr "Eine schreibgeschützte Zuordnung erzeugen" -#: src/cryptsetup.c:3507 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3614 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "Nicht nach Bestätigung fragen" # XXX -#: src/cryptsetup.c:3508 +#: src/cryptsetup.c:3615 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Frist für interaktive Eingabe der Passphrase (in Sekunden)" -#: src/cryptsetup.c:3508 src/cryptsetup.c:3509 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3615 src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "sek" -#: src/cryptsetup.c:3509 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "Aktualisierungsintervall für Fortschrittszeile (in Sekunden)" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3617 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "Wie oft die Eingabe der Passphrase wiederholt werden kann" -#: src/cryptsetup.c:3511 +#: src/cryptsetup.c:3618 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Nutzdaten an Grenzen von Sektoren ausrichten - für luksFormat" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3619 msgid "File with LUKS header and keyslots backup" msgstr "Datei mit dem Backup der LUKS-Header und den Schlüsselfächern" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3620 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "/dev/random zum Generieren des Laufwerksschlüssels benutzen" -#: src/cryptsetup.c:3514 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3621 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "/dev/urandom zum Generieren des Laufwerksschlüssels benutzen" -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3622 msgid "Share device with another non-overlapping crypt segment" msgstr "Gerät mit einem anderen nicht-überlappenden Kryptosegment teilen" -#: src/cryptsetup.c:3516 src/veritysetup.c:477 +#: src/cryptsetup.c:3623 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "UUID für das zu verwendende Gerät" -#: src/cryptsetup.c:3517 src/integritysetup.c:579 +#: src/cryptsetup.c:3624 src/integritysetup.c:599 msgid "Allow discards (aka TRIM) requests for device" msgstr "Auswurf-Anfragen (»TRIM«-Befehl) für das Gerät zulassen" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3625 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "Gerät oder Datei mit separatem LUKS-Header" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3626 msgid "Do not activate device, just check passphrase" msgstr "Gerät nicht aktivieren, nur Passphrase überprüfen" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3627 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Versteckten Header benutzen (verstecktes TCRYPT-Gerät)" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3628 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "Das Gerät ist das System-TCRYPT-Laufwerk (mit Bootlader)" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3629 msgid "Use backup (secondary) TCRYPT header" msgstr "Backup-(Zweit-)-TCRYPT-Header benutzen" -#: src/cryptsetup.c:3523 +#: src/cryptsetup.c:3630 msgid "Scan also for VeraCrypt compatible device" msgstr "Auch nach VeryCrypt-kompatiblen Geräten suchen" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3631 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Persönlicher Interations-Multiplizierer (PIM) für VeryCrypt-kompatibles Gerät" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3632 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Bei VeraCrypt-kompatiblem Gerät nach persönlichem Iterations-Multiplizierer (PIM) fragen" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3633 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "Art der Geräte-Metadaten: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3527 +#: src/cryptsetup.c:3634 msgid "Disable password quality check (if enabled)" msgstr "Passwort-Qualitätsprüfung deaktivieren (wenn sie aktiviert ist)" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3635 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Kompatibilitäts-Performance-Option »same_cpu_crypt« für dm-crypt benutzen" -#: src/cryptsetup.c:3529 +#: src/cryptsetup.c:3636 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Kompatibilitäts-Performance-Option »submit_from_crypt_cpus« für dm-crypt benutzen" -#: src/cryptsetup.c:3530 +#: src/cryptsetup.c:3637 +msgid "Bypass dm-crypt workqueue and process read requests synchronously" +msgstr "Arbeitswarteschlangen von dm-crypt umgehen und Leseanfragen synchron abarbeiten" + +#: src/cryptsetup.c:3638 +msgid "Bypass dm-crypt workqueue and process write requests synchronously" +msgstr "Arbeitswarteschlangen von dm-crypt umgehen und Schreibanfragen synchron abarbeiten" + +#: src/cryptsetup.c:3639 msgid "Device removal is deferred until the last user closes it" msgstr "Das Entfernen des Geräts wird aufgeschoben, bis der letzte Benutzer es schließt" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3640 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "Globale Sperre verwenden, um speicherintensive PBKDF zu serialisieren (um Speicherprobleme zu umgehen)" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3641 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "PBKDF-Iterationszeit for LUKS (in ms)" -#: src/cryptsetup.c:3532 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3641 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "msek" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3642 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "PBKDF-Algorithmus (für LUKS2): argon2i, argon2id, pbkdf2" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "PBKDF-Speicherkostengrenze" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "Kilobytes" -#: src/cryptsetup.c:3535 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "PBKDF-Parallelitätskosten" -#: src/cryptsetup.c:3535 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "Threads" -#: src/cryptsetup.c:3536 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3645 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "PBKDF-Iterationskosten (erzwungen, deaktiviert Benchmark)" -#: src/cryptsetup.c:3537 +#: src/cryptsetup.c:3646 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Schlüsselfach-Priorität: ignore (ignorieren), normal, prefer (bevorzugen)" -#: src/cryptsetup.c:3538 +#: src/cryptsetup.c:3647 msgid "Disable locking of on-disk metadata" msgstr "Dateisperrung von Metadaten auf der Platte deaktivieren" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3648 msgid "Disable loading volume keys via kernel keyring" msgstr "Deaktivieren, dass Laufwerksschlüssel über den Kernel-Schlüsselbund geladen werden" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3649 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Datenintegritätsalgorithmus (nur LUKS2)" -#: src/cryptsetup.c:3541 src/integritysetup.c:573 +#: src/cryptsetup.c:3650 src/integritysetup.c:590 msgid "Disable journal for integrity device" msgstr "Aufzeichnung für Integritätsgerät deaktivieren" -#: src/cryptsetup.c:3542 src/integritysetup.c:547 +#: src/cryptsetup.c:3651 src/integritysetup.c:564 msgid "Do not wipe device after format" msgstr "Gerät nach dem Formatieren nicht säubern" -#: src/cryptsetup.c:3543 src/integritysetup.c:577 +#: src/cryptsetup.c:3652 src/integritysetup.c:594 msgid "Use inefficient legacy padding (old kernels)" msgstr "Ineffizientes Altlasten-Padding verwenden (für alte Kernel)" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3653 msgid "Do not ask for passphrase if activation by token fails" msgstr "Nicht nach einer Passphrase fragen, wenn die Aktivierung durch Token fehlschlägt" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3654 msgid "Token number (default: any)" msgstr "Token-Nummer (Vorgabe: eine beliebige)" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3655 msgid "Key description" msgstr "Schlüsselbeschreibung" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3656 msgid "Encryption sector size (default: 512 bytes)" msgstr "Verschlüsselungs-Sektorgröße (Vorgabe: 512 Bytes)" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3657 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "IV verwenden (in Sektorgröße gezählt statt in Einheiten von 512 Bytes)" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3658 msgid "Set activation flags persistent for device" msgstr "Aktivierungsschalter für Gerät permanent festlegen" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3659 msgid "Set label for the LUKS2 device" msgstr "Beschriftung für das LUKS2-Gerät festlegen" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3660 msgid "Set subsystem label for the LUKS2 device" msgstr "Teilsystem-Beschriftung für das LUKS2-Gerät festlegen" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3661 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "Unbeschränktes LUKS2-Schlüsselfach (ohne zugeordnetem Datensegment) anlegen oder wegschreiben" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3662 msgid "Read or write the json from or to a file" msgstr "JSON aus einer Datei lesen oder in eine Datei schreiben" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3663 msgid "LUKS2 header metadata area size" msgstr "Größe des Bereichs für LUKS2-Header-Metadaten" -#: src/cryptsetup.c:3555 +#: src/cryptsetup.c:3664 msgid "LUKS2 header keyslots area size" msgstr "Größe des Bereichs für Schlüsselfächer im LUKS2-Header" -#: src/cryptsetup.c:3556 +#: src/cryptsetup.c:3665 msgid "Refresh (reactivate) device with new parameters" msgstr "Gerät mit neuen Parametern auffrischen (reaktivieren)" -#: src/cryptsetup.c:3557 +#: src/cryptsetup.c:3666 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "LUKS2-Schlüsselfach: Die Größe des Verschlüsselungsschlüssels" -#: src/cryptsetup.c:3558 +#: src/cryptsetup.c:3667 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "LUKS2-Keyslot: Der Algorithmus, der für die Keyslot-Verschlüsselung verwendet wird" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3668 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "LUKS2-Gerät verschlüsseln (direkt am Ort)." -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3669 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "LUKS2-Gerät entschlüsseln (Verschlüsselung entfernen)." -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3670 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "LUKS2-Wiederverschlüsselung nur in Metadaten beginnen." -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3671 msgid "Resume initialized LUKS2 reencryption only." msgstr "Nur eine begonnene LUKS2-Wiederverschlüsselung fortsetzen." -#: src/cryptsetup.c:3563 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3672 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "Größe des Datengeräts reduzieren (Datenoffset verschieben). GEFÄHRLICH!" -#: src/cryptsetup.c:3564 +#: src/cryptsetup.c:3673 msgid "Maximal reencryption hotzone size." msgstr "Maximalgröße der Wiederverschlüsselungs-Hotzone." -#: src/cryptsetup.c:3565 +#: src/cryptsetup.c:3674 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "Widerstandsfähigkeit der Hotzone für die Wiederverschlüsselung (checksum,journal,none)" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3675 msgid "Reencryption hotzone checksums hash" msgstr "Hash für Prüfsummen der Wiederverschlüsselungs-Hotzone" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3676 msgid "Override device autodetection of dm device to be reencrypted" msgstr "Automatische Geräteerkennung der dm-Geräte für die Wiederverschlüsselung übersteuern" -#: src/cryptsetup.c:3583 src/veritysetup.c:499 src/integritysetup.c:595 +#: src/cryptsetup.c:3692 src/veritysetup.c:515 src/integritysetup.c:615 msgid "[OPTION...] " msgstr "[OPTION...] " -#: src/cryptsetup.c:3634 src/veritysetup.c:533 src/integritysetup.c:606 +#: src/cryptsetup.c:3747 src/veritysetup.c:551 src/integritysetup.c:626 msgid "Argument missing." msgstr "Argument fehlt." -#: src/cryptsetup.c:3703 src/veritysetup.c:564 src/integritysetup.c:637 +#: src/cryptsetup.c:3817 src/veritysetup.c:582 src/integritysetup.c:660 msgid "Unknown action." msgstr "Unbekannte Aktion." -#: src/cryptsetup.c:3713 +#: src/cryptsetup.c:3827 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "Die Optionen --refresh und --test-passphrase schließen sich gegenseitig aus." -#: src/cryptsetup.c:3718 +#: src/cryptsetup.c:3832 msgid "Option --deferred is allowed only for close command." msgstr "Die Option --deferred ist nur beim »close«-Befehl erlaubt." -#: src/cryptsetup.c:3723 +#: src/cryptsetup.c:3837 msgid "Option --shared is allowed only for open of plain device." msgstr "Die Option --shared ist nur beim beim »open«-Befehl eines Plain-Gerätes erlaubt." -#: src/cryptsetup.c:3728 src/integritysetup.c:654 +#: src/cryptsetup.c:3842 src/integritysetup.c:677 msgid "Option --allow-discards is allowed only for open operation." msgstr "Die Option --allow-discards ist nur beim »open«-Befehl erlaubt." -#: src/cryptsetup.c:3733 +#: src/cryptsetup.c:3847 msgid "Option --persistent is allowed only for open operation." msgstr "Die Option --persistent ist nur beim »open«-Befehl erlaubt." -#: src/cryptsetup.c:3738 +#: src/cryptsetup.c:3852 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "Die Option --serialize-memory-hard-pbkdf ist nur beim »open«-Befehl erlaubt." -#: src/cryptsetup.c:3743 +#: src/cryptsetup.c:3857 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "Die Option --persistent ist nicht mit --test-passphrase kombinierbar." -#: src/cryptsetup.c:3753 +#: src/cryptsetup.c:3867 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2852,255 +2907,259 @@ "»open« und »benchmark« erlaubt. Benutzen Sie stattdessen »--keyfile-size=(Bytes)«,\n" "um das Lesen aus der Schlüsseldatei zu begrenzen." -#: src/cryptsetup.c:3759 +#: src/cryptsetup.c:3873 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "Die Option --integrity ist nur für luksFormat (LUKS2) erlaubt." -#: src/cryptsetup.c:3764 +#: src/cryptsetup.c:3878 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "Die Option --integrity-no-wipe ist nur für die »format«-Aktion mit Integritätserweiterung erlaubt." -#: src/cryptsetup.c:3770 +#: src/cryptsetup.c:3884 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "Die Optionen --label und --subsystem sind nur für die Aktionen »luksFormat« und »config LUKS2« erlaubt." -#: src/cryptsetup.c:3776 +#: src/cryptsetup.c:3890 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "Die Option --test-passphrase ist nur beim Öffnen von LUKS, TCRYPT- und BITLK-Geräten erlaubt." -#: src/cryptsetup.c:3781 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3895 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "Schlüsselgröße muss ein Vielfaches von 8 Bit sein" -#: src/cryptsetup.c:3787 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3901 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "Schlüsselfach ist ungültig." -#: src/cryptsetup.c:3794 +#: src/cryptsetup.c:3908 msgid "Option --key-file takes precedence over specified key file argument." msgstr "Die Option --key-file wirkt stärker als das angegebene Schlüsseldatei-Argument." -#: src/cryptsetup.c:3801 src/veritysetup.c:576 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3915 src/veritysetup.c:594 src/integritysetup.c:686 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "Negative Zahl für die Option nicht erlaubt." -#: src/cryptsetup.c:3805 +#: src/cryptsetup.c:3919 msgid "Only one --key-file argument is allowed." msgstr "Die Option --key-file ist nur einmal erlaubt." -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3923 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "Nur eine der Optionen --use-[u]random ist erlaubt." -#: src/cryptsetup.c:3813 +#: src/cryptsetup.c:3927 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "Die Option --use-[u]random ist nur für luksFormat erlaubt." -#: src/cryptsetup.c:3817 +#: src/cryptsetup.c:3931 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "Die Option --uuid ist nur für luksFormat und luksUUID erlaubt." -#: src/cryptsetup.c:3821 +#: src/cryptsetup.c:3935 msgid "Option --align-payload is allowed only for luksFormat." msgstr "Die Option --align-payload ist nur für luksFormat erlaubt." -#: src/cryptsetup.c:3825 +#: src/cryptsetup.c:3939 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Die Optionen --luks2-metadata-size und --opt-luks2-keyslots-size sind nur für luksFormat mit LUKS2 erlaubt." -#: src/cryptsetup.c:3830 +#: src/cryptsetup.c:3944 msgid "Invalid LUKS2 metadata size specification." msgstr "Ungültige Angabe für die Größe der LUKS2-Metadaten." -#: src/cryptsetup.c:3834 +#: src/cryptsetup.c:3948 msgid "Invalid LUKS2 keyslots size specification." msgstr "Ungültige Angabe für die Größe der LUKS2-Schlüsselfächer." -#: src/cryptsetup.c:3838 +#: src/cryptsetup.c:3952 msgid "Options --align-payload and --offset cannot be combined." msgstr "Die Optionen --align-payload und --offset können nicht kombiniert werden." -#: src/cryptsetup.c:3844 +#: src/cryptsetup.c:3958 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "Die Option --skip ist nur beim Öffnen von plain- und loopaes-Geräten erlaubt." -#: src/cryptsetup.c:3851 +#: src/cryptsetup.c:3965 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "Die Option --offset ist nur beim Öffnen von plain- und loopaes-Geräten erlaubt, sowie für luksFormat und Geräte-Wiederverschlüsselung." -#: src/cryptsetup.c:3857 +#: src/cryptsetup.c:3971 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "Die Optionen --tcrypt-hidden, --tcrypt-system und --tcrypt-backup sind nur zusammen mit einem TCRYPT-Gerät erlaubt." -#: src/cryptsetup.c:3862 +#: src/cryptsetup.c:3976 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "Die Option --tcrypt-hidden kann nicht mit --allow-discards kombiniert werden." -#: src/cryptsetup.c:3867 +#: src/cryptsetup.c:3981 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "Die Option --veracrypt wird nur für TCRYPT-kompatible Geräte unterstützt." -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3987 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "Ungültiges Argument für Parameter --veracrypt-pim angegeben." -#: src/cryptsetup.c:3877 +#: src/cryptsetup.c:3991 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "Die Option --veracrypt-pim wird nur für VeraCrypt-kompatible Geräte unterstützt." -#: src/cryptsetup.c:3885 +#: src/cryptsetup.c:3999 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "Die Option --veracrypt-query-pim wird nur für VeraCrypt-kompatible Geräte unterstützt." -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:4003 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "Die Optionen --veracrypt-pim und --veracrypt-query-pim schließen sich gegenseitig aus." -#: src/cryptsetup.c:3896 +#: src/cryptsetup.c:4010 msgid "Option --priority can be only ignore/normal/prefer." msgstr "Die Option --priority kann nur »ignore/normal/prefer« sein." -#: src/cryptsetup.c:3901 src/cryptsetup.c:3939 +#: src/cryptsetup.c:4015 src/cryptsetup.c:4053 msgid "Keyslot specification is required." msgstr "Das Schlüsselfach muss angegeben werden." -#: src/cryptsetup.c:3906 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4020 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "Passwortbasierte Schlüsselableitungsfunktion (PBKDF) kann nur »pbkdf2« oder »argon2i/argon2id« sein." -#: src/cryptsetup.c:3911 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4025 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "Bei PBKDF darf nur entweder die Anzahl der Durchläufe oder die Zeitbegrenzung angegeben werden." -#: src/cryptsetup.c:3917 +#: src/cryptsetup.c:4031 msgid "Sector size option is not supported for this command." msgstr "Die Option Sektorgröße wird für diesen Befehl nicht unterstützt." -#: src/cryptsetup.c:3929 +#: src/cryptsetup.c:4043 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." msgstr "Die Option für große IV-Sektoren wird nur unterstützt, wenn das geöffnete Gerät Sektoren größer als 512 Bytes hat." -#: src/cryptsetup.c:3934 +#: src/cryptsetup.c:4048 msgid "Key size is required with --unbound option." msgstr "Die Option »--unbound« erfordert die Schlüsselgröße." -#: src/cryptsetup.c:3944 +#: src/cryptsetup.c:4058 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "Die Option »--unbound« kann nur zusammen mit den Aktionen »luksAddKey« und »luksDump« benutzt werden." -#: src/cryptsetup.c:3949 +#: src/cryptsetup.c:4063 msgid "Option --refresh may be used only with open action." msgstr "Die Option --refresh kann nur zusammen mit der Aktion »open« benutzt werden." -#: src/cryptsetup.c:3960 +#: src/cryptsetup.c:4074 msgid "Cannot disable metadata locking." msgstr "Fehler beim Deaktivieren der Metadaten-Dateisperre." -#: src/cryptsetup.c:3970 +#: src/cryptsetup.c:4085 msgid "Invalid max reencryption hotzone size specification." msgstr "Ungültige Angabe der Maximalgröße für die Wiederverschlüsselungs-Hotzone." -#: src/cryptsetup.c:3978 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4093 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "Ungültige Angabe der Gerätegröße." -#: src/cryptsetup.c:3981 +#: src/cryptsetup.c:4096 msgid "Maximum device reduce size is 1 GiB." msgstr "Die maximale Verkleinerungsgröße ist 1 GiB." -#: src/cryptsetup.c:3984 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4099 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "Die verkleinerte Größe muss ein Vielfaches von 512-Byte-Sektoren sein." -#: src/cryptsetup.c:3989 +#: src/cryptsetup.c:4104 msgid "Invalid data size specification." msgstr "Ungültige Angabe der Datengröße." -#: src/cryptsetup.c:3994 +#: src/cryptsetup.c:4109 msgid "Reduce size overflow." msgstr "Überlauf bei der Verringerungsgröße." -#: src/cryptsetup.c:3998 +#: src/cryptsetup.c:4113 msgid "LUKS2 decryption requires option --header." msgstr "LUKS2-Entschlüsselung erfordert die Option --header." -#: src/cryptsetup.c:4002 +#: src/cryptsetup.c:4117 msgid "Device size must be multiple of 512 bytes sector." msgstr "Die Gerätegröße muss ein Vielfaches von 512-Byte-Sektoren sein." -#: src/cryptsetup.c:4006 +#: src/cryptsetup.c:4121 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "Die Optionen --reduce-device-size und --data-size können nicht kombiniert werden." -#: src/cryptsetup.c:4010 +#: src/cryptsetup.c:4125 msgid "Options --device-size and --size cannot be combined." msgstr "Die Optionen --device-size und --size können nicht kombiniert werden." -#: src/veritysetup.c:66 +#: src/cryptsetup.c:4129 +msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." +msgstr "Die Optionen --keyslot-cipher und --keyslot-keysize können nur zusammen benutzt werden." + +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "Ungültiger Salt-String angegeben." -#: src/veritysetup.c:97 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "Fehler beim Schreiben des Hash-Abbilds »%s«." -#: src/veritysetup.c:107 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "Fehler beim Schreiben des FEC-Abbilds »%s«." -#: src/veritysetup.c:179 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "Ungültiger Root-Hash-String angegeben." -#: src/veritysetup.c:187 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "Ungültige Signaturdatei »%s«." -#: src/veritysetup.c:194 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "Fehler beim Einlesen der Signaturdatei »%s«." -#: src/veritysetup.c:392 +#: src/veritysetup.c:406 msgid " " msgstr " " -#: src/veritysetup.c:392 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:492 msgid "format device" msgstr "Gerät formatieren" -#: src/veritysetup.c:393 +#: src/veritysetup.c:407 msgid " " msgstr " " -#: src/veritysetup.c:393 +#: src/veritysetup.c:407 msgid "verify device" msgstr "Gerät verifizieren" -#: src/veritysetup.c:394 +#: src/veritysetup.c:408 msgid " " msgstr " " -#: src/veritysetup.c:396 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:495 msgid "show active device status" msgstr "Status der aktiven Geräte anzeigen" -#: src/veritysetup.c:397 +#: src/veritysetup.c:411 msgid "" msgstr "" -#: src/veritysetup.c:397 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:496 msgid "show on-disk information" msgstr "Auf dem Datenträger gespeicherte Informationen anzeigen" -#: src/veritysetup.c:416 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3115,7 +3174,7 @@ " ist das Gerät, das die Verifikationsdaten enthält\n" " ist der Hash des Rootknotens auf \n" -#: src/veritysetup.c:423 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3126,126 +3185,139 @@ "Einkompilierte Vorgabewerte für dm-verity:\n" "\tHash: %s, Datenblock (Bytes): %u, Hashblock (Bytes): %u, Salt-Größe: %u, Hashformat: %u\n" -#: src/veritysetup.c:466 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "Verity-Superblock nicht benutzen" -#: src/veritysetup.c:467 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Format-Art (1 - normal, 0 - originales Chrome-OS)" -#: src/veritysetup.c:467 +#: src/veritysetup.c:482 msgid "number" msgstr "Zahl" -#: src/veritysetup.c:468 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "Blockgröße auf dem Datengerät" -#: src/veritysetup.c:469 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "Blockgröße auf dem Hash-Gerät" -#: src/veritysetup.c:470 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "FEC-Paritätsbytes" -#: src/veritysetup.c:471 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "Die Anzahl der Blöcke in der Datendatei" -#: src/veritysetup.c:471 +#: src/veritysetup.c:486 msgid "blocks" msgstr "Blöcke" -#: src/veritysetup.c:472 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "Pfad zum Gerät mit Fehlerkorrekturdaten" -#: src/veritysetup.c:472 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:566 msgid "path" msgstr "Pfad" -#: src/veritysetup.c:473 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "Start-Offset auf dem Hash-Gerät" -#: src/veritysetup.c:474 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "Start-Offset auf dem FEC-Gerät" -#: src/veritysetup.c:475 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "Hash-Algorithmus" -#: src/veritysetup.c:475 +#: src/veritysetup.c:490 msgid "string" msgstr "Zeichenkette" -#: src/veritysetup.c:476 +#: src/veritysetup.c:491 msgid "Salt" msgstr "Salt" -#: src/veritysetup.c:476 +#: src/veritysetup.c:491 msgid "hex string" msgstr "Hex-Zeichenkette" -#: src/veritysetup.c:478 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "Pfad zur Signaturdatei des Stammhashes" -#: src/veritysetup.c:479 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "Kernel neustarten wenn Beschädigung festgestellt wird" -#: src/veritysetup.c:480 +#: src/veritysetup.c:495 +msgid "Panic kernel if corruption is detected" +msgstr "Kernel-Abbruch, wenn Beschädigung festgestellt wird" + +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "Beschädigung ignorieren, nur mitloggen" -#: src/veritysetup.c:481 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "Ausgenullte Blöcke nicht überprüfen" -#: src/veritysetup.c:482 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "Datenblock nur beim erstmaligen Lesen verifizieren" -#: src/veritysetup.c:582 +#: src/veritysetup.c:600 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "Die Optionen --ignore-corruption, --restart-on-corruption und --ignore-zero-blocks sind nur für die »open«-Aktion erlaubt." -#: src/veritysetup.c:587 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "Die Option --root-hash-signature kann nur zusammen mit der Aktion »open« benutzt werden." -#: src/veritysetup.c:592 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "Die Optionen --ignore-corruption und --restart-on-corruption können nicht zusammen benutzt werden." -#: 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 "Die Optionen --panic-on-corruption und --restart-on-corruption können nicht zusammen benutzt werden." + +#: src/integritysetup.c:85 +#, c-format +msgid "Invalid key size. Maximum is %u bytes." +msgstr "Ungültige Schlüsselgröße. Maximum ist %u Bytes." + +#: src/integritysetup.c:95 src/utils_password.c:339 #, c-format msgid "Cannot read keyfile %s." msgstr "Fehler beim Einlesen der Schlüsseldatei »%s«." -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:99 src/utils_password.c:344 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "Fehler beim Einlesen von %d Bytes aus der Schlüsseldatei »%s«." -#: src/integritysetup.c:254 +#: src/integritysetup.c:266 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Formatiert mit Etikettgröße %u und interner Integrität %s.\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:492 src/integritysetup.c:496 msgid "" msgstr "" -#: src/integritysetup.c:480 +#: src/integritysetup.c:493 msgid " " msgstr " " -#: src/integritysetup.c:502 +#: src/integritysetup.c:515 #, c-format msgid "" "\n" @@ -3256,403 +3328,409 @@ " ist das Gerät, das unter »%s« angelegt werden soll\n" " ist das Gerät, das die Daten mit Integritätsangaben enthält\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 "" "\n" "Einkompilierte Vorgabewerte für dm-integrity:\n" "\tPrüfalgorithmus: %s\n" +"\tMaximalgröße der Schlüsseldatei: %d kB\n" -#: src/integritysetup.c:549 +#: src/integritysetup.c:566 msgid "Path to data device (if separated)" msgstr "Pfad zum Datengerät (wenn getrennt)" -#: src/integritysetup.c:551 +#: src/integritysetup.c:568 msgid "Journal size" msgstr "Journalgröße" -#: src/integritysetup.c:552 +#: src/integritysetup.c:569 msgid "Interleave sectors" msgstr "Sektoren verschränken" -#: src/integritysetup.c:553 +#: src/integritysetup.c:570 msgid "Journal watermark" msgstr "Jornal-Wasserzeichen" -#: src/integritysetup.c:553 +#: src/integritysetup.c:570 msgid "percent" msgstr "Prozent" -#: src/integritysetup.c:554 +#: src/integritysetup.c:571 msgid "Journal commit time" msgstr "Journal-Commitzeit" -#: src/integritysetup.c:554 src/integritysetup.c:556 +#: src/integritysetup.c:571 src/integritysetup.c:573 msgid "ms" msgstr "ms" -#: src/integritysetup.c:555 +#: src/integritysetup.c:572 msgid "Number of 512-byte sectors per bit (bitmap mode)." msgstr "Anzahl der 512-Byte-Sektoren pro Bit (Bitmap-Modus)." -#: src/integritysetup.c:556 +#: src/integritysetup.c:573 msgid "Bitmap mode flush time" msgstr "Zeit für sicheres Speichern im Bitmap-Modus" -#: src/integritysetup.c:557 +#: src/integritysetup.c:574 msgid "Tag size (per-sector)" msgstr "Etikettgröße pro Sektor" -#: src/integritysetup.c:558 +#: src/integritysetup.c:575 msgid "Sector size" msgstr "Sektorengröße" -#: src/integritysetup.c:559 +#: src/integritysetup.c:576 msgid "Buffers size" msgstr "Puffergröße" -#: src/integritysetup.c:561 +#: src/integritysetup.c:578 msgid "Data integrity algorithm" msgstr "Datenintegritäts-Algorithmus" -#: src/integritysetup.c:562 +#: src/integritysetup.c:579 msgid "The size of the data integrity key" msgstr "Die Größe des Datenintegritätsschlüssels" -#: src/integritysetup.c:563 +#: src/integritysetup.c:580 msgid "Read the integrity key from a file" msgstr "Integritätsschlüssel aus einer Datei lesen" -#: src/integritysetup.c:565 +#: src/integritysetup.c:582 msgid "Journal integrity algorithm" msgstr "Integritätsalgorithmus für Journal" -#: src/integritysetup.c:566 +#: src/integritysetup.c:583 msgid "The size of the journal integrity key" msgstr "Die Größe des Integritätsschlüssels für das Journal" -#: src/integritysetup.c:567 +#: src/integritysetup.c:584 msgid "Read the journal integrity key from a file" msgstr "Integritätsschlüssel für das Journal aus einer Datei lesen" -#: src/integritysetup.c:569 +#: src/integritysetup.c:586 msgid "Journal encryption algorithm" msgstr "Algorithmus für Journalverschlüsselung" -#: src/integritysetup.c:570 +#: src/integritysetup.c:587 msgid "The size of the journal encryption key" msgstr "Die Größe des Journal-Verschlüsselungsschlüssels" -#: src/integritysetup.c:571 +#: src/integritysetup.c:588 msgid "Read the journal encryption key from a file" msgstr "Journal-Verschlüsselungsschlüssel aus einer Datei lesen" -#: src/integritysetup.c:574 +#: src/integritysetup.c:591 msgid "Recovery mode (no journal, no tag checking)" msgstr "Wiederherstellungsmodus (kein Journal, keine Etikettprüfung)" -#: src/integritysetup.c:575 +#: src/integritysetup.c:592 msgid "Use bitmap to track changes and disable journal for integrity device" msgstr "Bitmap verwenden, um Änderungen nachzuverfolgen und Journal für Integritätsgerät deaktivieren" -#: src/integritysetup.c:576 +#: src/integritysetup.c:593 msgid "Recalculate initial tags automatically." msgstr "Initiale Integritätsangaben automatisch neu berechnen." -#: src/integritysetup.c:649 +#: src/integritysetup.c:596 +msgid "Do not protect superblock with HMAC (old kernels)" +msgstr "Superblock nicht mit HMAC schützen (alte Kernel)" + +#: src/integritysetup.c:597 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "Neuberechnung von Laufwerken mit HMAC-Schlüsseln erlauben (alte Kernel)" + +#: src/integritysetup.c:672 msgid "Option --integrity-recalculate can be used only for open action." msgstr "Die Option --integrity-recalculate kann nur zusammen mit der Aktion »open« benutzt werden." -#: 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 "Die Optionen --journal-size, --interleave-sectors, --sector-size, --tag-size und --no-wipe können nur bei der Aktion »format« verwendet werden." -#: src/integritysetup.c:675 +#: src/integritysetup.c:698 msgid "Invalid journal size specification." msgstr "Ungültige Angabe der Journalgröße." -#: src/integritysetup.c:680 +#: src/integritysetup.c:703 msgid "Both key file and key size options must be specified." msgstr "Sowohl die Schlüsseldatei als auch die Schlüsselgröße müssen angegeben werden." -#: src/integritysetup.c:683 -msgid "Integrity algorithm must be specified if integrity key is used." -msgstr "Wenn ein Integritätsschlüssel verwendet wird, muss auch der Integritätsalgorithmus angegeben werden." - -#: src/integritysetup.c:688 +#: src/integritysetup.c:708 msgid "Both journal integrity key file and key size options must be specified." msgstr "Sowohl die Schlüsseldatei als auch die Schlüsselgröße müssen für die Journalintegrität angegeben werden." -#: src/integritysetup.c:691 +#: src/integritysetup.c:711 msgid "Journal integrity algorithm must be specified if journal integrity key is used." msgstr "Wenn ein Integritätsschlüssel für das Journal verwendet wird, muss auch der Integritätsalgorithmus angegeben werden." -#: src/integritysetup.c:696 +#: src/integritysetup.c:716 msgid "Both journal encryption key file and key size options must be specified." msgstr "Sowohl der Verschlüsselungsschlüssel als auch die Schlüsselgröße müssen für die Journalverschlüsselung angegeben werden." -#: src/integritysetup.c:699 +#: src/integritysetup.c:719 msgid "Journal encryption algorithm must be specified if journal encryption key is used." msgstr "Wenn ein Verschlüsselungsschlüssel für das Journal verwendet wird, muss auch der Verschlüsselungsalgorithmus angegeben werden." -#: src/integritysetup.c:703 +#: src/integritysetup.c:723 msgid "Recovery and bitmap mode options are mutually exclusive." msgstr "Die Modi Wiederherstellung und Bitmap schließen sich gegenseitig aus." -#: src/integritysetup.c:707 +#: src/integritysetup.c:727 msgid "Journal options cannot be used in bitmap mode." msgstr "Die Journal-Optionen können nicht im Bitmap-Modus verwendet werden." -#: src/integritysetup.c:711 +#: src/integritysetup.c:731 msgid "Bitmap options can be used only in bitmap mode." msgstr "Die Bitmapoptionen können nur im Bitmapmodus verwendet werden." -#: src/cryptsetup_reencrypt.c:172 +#: src/cryptsetup_reencrypt.c:190 msgid "Reencryption already in-progress." msgstr "Wiederverschlüsselung läuft bereits." -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "Gerät »%s« kann nicht exklusiv geöffnet werden, da es bereits benutzt wird." -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "Belegen des ausgerichteten Speichers fehlgeschlagen." -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "Fehler beim Lesen von Gerät »%s«." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "LUKS1-Gerät »%s« wird als unbenutzbar markiert." -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "LUKS2-Offline-Wiederverschlüsselungs-Kennzeichen wird auf Gerät »%s« festgelegt." -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "Fehler beim Schreiben auf Gerät »%s«." -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "Fehler beim Speichern der Wiederverschlüsselungs-Logdatei." -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "Fehler beim Einlesen der Wiederverschlüsselungs-Logdatei." -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "Logdatei »%s« existiert, Wiederverschlüsselung wird fortgesetzt.\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "Temporäres Gerät mit dem alten LUKS-Header wird aktiviert." -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "Temporäres Gerät mit dem neuen LUKS-Header wird aktiviert." -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "Fehler beim Aktivieren der temporären Geräte." -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "Fehler beim Festlegen des Daten-Offsets." -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "Fehler beim Festlegen der Metadatengröße." -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "Neuer LUKS-Header für Gerät »%s« angelegt." -#: 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 "Diese Version von cryptsetup-reencrypt kann internen Tokentyp %s nicht verarbeiten." -#: src/cryptsetup_reencrypt.c:655 +#: src/cryptsetup_reencrypt.c:673 msgid "Failed to read activation flags from backup header." msgstr "Fehler beim Lesen der Aktivierungsschalter aus dem Backup-Header." -#: src/cryptsetup_reencrypt.c:659 +#: src/cryptsetup_reencrypt.c:677 msgid "Failed to write activation flags to new header." msgstr "Fehler beim Schreiben der Aktivierungsschalter in den neuen Header." -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "Fehler beim Lesen der Anforderungen aus dem Backup-Header." -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "%s-Backup-Header von Gerät »%s« angelegt." -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "Fehler beim Anlegen des LUKS-Backup-Headers." -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "Fehler beim Wiederherstellen des %s-Headers auf Gerät »%s«." -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "%s-Header auf Gerät »%s« wiederhergestellt." -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "Fehler beim Öffnen des temporären LUKS-Geräts." -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "Fehler beim Ermitteln der Gerätegröße." -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "E/A-Fehler während der Wiederverschlüsselung." -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "Die angegebene UUID ist ungültig." -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "Fehler beim Öffnen der Wiederverschlüsselungs-Logdatei." -#: 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 "Derzeit ist keine Entschlüsselung im Gange, die angegebene UUID kann nur benutzt werden, um einen unterbrochenen Entschlüsselungsvorgang fortzusetzen." -#: src/cryptsetup_reencrypt.c:1504 +#: src/cryptsetup_reencrypt.c:1522 #, c-format msgid "Changed pbkdf parameters in keyslot %i." msgstr "PBKDF-Parameter in Schlüsselfach %i wurden geändert." -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "Wiederverschlüsselungs-Blockgröße" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "MiB" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "Schlüssel nicht ändern, Datenbereich nicht neu verschlüsseln" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "Laufwerks-(Master-)Schlüssel aus Datei lesen" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "PBKDF2 Iterationszeit for LUKS (in ms)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "Beim Zugriff auf die Geräte direct-io benutzen" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "Nach jedem Block fsync aufrufen" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "Logdatei nach jedem Block aktualisieren" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "Nur dieses Schlüsselfach benutzen (alle anderen werden deaktiviert)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "Neuen Header auf unverschlüsseltem Gerät anlegen" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "Gerät dauerhaft entschlüsseln (Verschlüsselung entfernen)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "Die UUID, um das Entschlüsseln fortzusetzen" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Art der LUKS-Metadaten: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[OPTION...] " -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "Wiederverschlüsselung ändert: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "Laufwerksschlüssel" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr ", Hash auf " -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr ", Verschlüsselung auf " -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "Argument muss angegeben werden." -#: 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 "Für die Wiederverschlüsselungs-Blockgröße sind nur Werte zwischen 1 MiB und 64 MiB erlaubt." -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "Die maximale Verkleinerungsgröße ist 64 MiB." -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "Die Option »--new« muss zusammen mit »--reduce-device-size« oder »--header« benutzt werden." -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "Die Option »--keep-new« kann nur zusammen mit »--hash«, »--iter-time« oder »--pbkdf-force-iterations« benutzt werden." -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "Die Option »--new« kann nicht zusammen mit »--decrypt« benutzt werden." -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "Die Option --decrypt verträgt sich nicht mit den angegebenen Parametern." -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "Die Option »--uuid« kann nur zusammen mit »--decrypt« benutzt werden." -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Ungültiger LUKS-Typ. Verwenden Sie einen von diesen: luks, luks1, luks2." @@ -3693,32 +3771,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "Fehler %i beim Ausführen eines Befehls »%s«.\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "Schlüsselfach %i erstellt." -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "Schlüsselfach %i entsperrt." -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "Schlüsselfach %i entfernt." -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "Token %i erstellt." -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "Token %i entfernt." -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3726,55 +3804,55 @@ "\n" "Gründlich löschen unterbrochen." -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "WARNUNG: Gerät %s enthält bereits eine '%s'-Partitionssignatur.\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "WARNUNG: Gerät %s enthält bereits eine '%s'-Superblock-Signatur.\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "Fehler beim Initialisieren der Gerätesignatursonden." -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "Gerät %s konnte nicht gefunden werden." -#: 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 "Gerät %s wird gerade benutzt. Das Formatieren ist gerade nicht möglich." -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "Datei %s konnte nicht im Lese-/Schreibmodus geöffnet werden." -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "Die bestehende Partitionssignatur »%s« (Offset: % Bytes) auf Gerät %s wird dadurch gelöscht." -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "Die bestehende Superblocksignatur »%s« (Offset: % Bytes) auf Gerät %s wird dadurch gelöscht." -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "Fehler beim Löschen der Gerätesignatur." -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "Gerät %s konnte nicht auf eine Signatur geprüft werden." -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3782,7 +3860,7 @@ "\n" "Wiederverschlüsselung unterbrochen." -#: src/utils_password.c:43 src/utils_password.c:75 +#: src/utils_password.c:43 src/utils_password.c:76 #, c-format msgid "Cannot check password quality: %s" msgstr "Fehler beim Prüfen der Passwortqualität: %s" @@ -3801,46 +3879,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "Passwort-Qualitätsüberprüfung fehlgeschlagen: Falsche Passphrase (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:228 src/utils_password.c:242 msgid "Error reading passphrase from terminal." msgstr "Fehler beim Lesen der Passphrase vom Terminal." -#: src/utils_password.c:206 +#: src/utils_password.c:240 msgid "Verify passphrase: " msgstr "Passphrase bestätigen: " -#: src/utils_password.c:213 +#: src/utils_password.c:247 msgid "Passphrases do not match." msgstr "Passphrasen stimmen nicht überein." -#: src/utils_password.c:250 +#: src/utils_password.c:284 msgid "Cannot use offset with terminal input." msgstr "Offset kann nicht zusammen mit Terminaleingabe benutzt werden." -#: src/utils_password.c:253 +#: src/utils_password.c:287 #, c-format msgid "Enter passphrase: " msgstr "Passphrase eingeben: " -#: src/utils_password.c:256 +#: src/utils_password.c:290 #, c-format msgid "Enter passphrase for %s: " msgstr "Geben Sie die Passphrase für »%s« ein: " -#: src/utils_password.c:287 +#: src/utils_password.c:321 msgid "No key available with this passphrase." msgstr "Kein Schlüssel mit dieser Passphrase verfügbar." -#: src/utils_password.c:289 +#: src/utils_password.c:323 msgid "No usable keyslot is available." msgstr "Es ist kein nutzbares Schlüsselfach verfügbar." -#: src/utils_password.c:328 +#: src/utils_password.c:365 #, c-format msgid "Cannot open keyfile %s for write." msgstr "Fehler beim Schreiben der Schlüsseldatei »%s«." -#: src/utils_password.c:335 +#: src/utils_password.c:372 #, c-format msgid "Cannot write to keyfile %s." msgstr "Fehler beim Schreiben der Schlüsseldatei »%s«." @@ -3883,6 +3961,18 @@ msgid "Failed to write JSON file." msgstr "JSON-Datei konnte nicht geschrieben werden." +#~ msgid "WARNING: Locking directory %s/%s is missing!\n" +#~ msgstr "WARNUNG: Zugriffssperren-Verzeichnis %s/%s ist nicht vorhanden!\n" + +#~ msgid "Invalid size parameters for verity device." +#~ msgstr "Ungültige Größenparameter für Verity-Gerät." + +#~ msgid "Integrity algorithm must be specified if integrity key is used." +#~ msgstr "Wenn ein Integritätsschlüssel verwendet wird, muss auch der Integritätsalgorithmus angegeben werden." + +#~ msgid "Wrong key size." +#~ msgstr "Falsche Schlüsselgröße." + #~ msgid "Parameter --refresh is only allowed with open or refresh commands." #~ msgstr "Die Option --refresh ist nur beim »open«- oder »refresh«-Befehl erlaubt." diff -Nru cryptsetup-2.3.4/po/es.po cryptsetup-2.3.6/po/es.po --- cryptsetup-2.3.4/po/es.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/es.po 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ # Spanish translations for cryptsetup package # Traducciones al español para el paquete cryptsetup. -# Copyright (C) 2014, 2015, 2016, 2017, 2018, 2019, 2020 Free Software Foundation, Inc. +# Copyright (C) 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Free Software Foundation, Inc. # This file is put in the public domain. -# Antonio Ceballos , 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 +# Antonio Ceballos , 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 # # ###################################################################### # Traducciones dudosas: @@ -73,10 +73,10 @@ # msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.3-rc0\n" +"Project-Id-Version: cryptsetup 2.3.5-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-05-15 10:45+0200\n" -"PO-Revision-Date: 2020-05-16 08:46+0200\n" +"POT-Creation-Date: 2021-03-04 11:28+0100\n" +"PO-Revision-Date: 2021-03-20 20:00+0100\n" "Last-Translator: Antonio Ceballos \n" "Language-Team: Spanish \n" "Language: es\n" @@ -86,61 +86,62 @@ "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 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "No se puede inicializar el «device mapper», ejecutando como usuario no administrador." -#: lib/libdevmapper.c:402 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "No se puede inicializar el «device-mapper». ¿Está cargado el módulo del núcleo dm_mod?" -#: lib/libdevmapper.c:1131 +#: lib/libdevmapper.c:1167 msgid "Requested deferred flag is not supported." msgstr "El indicador diferido solicitado no está disponible." -#: lib/libdevmapper.c:1198 +#: lib/libdevmapper.c:1234 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "El DM-UUID del dispositivo %s ha sido truncado." -#: lib/libdevmapper.c:1520 +#: lib/libdevmapper.c:1565 msgid "Unknown dm target type." msgstr "Tipo de objetivo dm desconocido." -#: lib/libdevmapper.c:1623 lib/libdevmapper.c:1679 +#: lib/libdevmapper.c:1686 lib/libdevmapper.c:1691 lib/libdevmapper.c:1751 +#: lib/libdevmapper.c:1754 msgid "Requested dm-crypt performance options are not supported." msgstr "Las opciones de rendimiento de dm-crypt solicitadas no están disponibles." -#: lib/libdevmapper.c:1630 +#: lib/libdevmapper.c:1698 lib/libdevmapper.c:1702 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Las opciones de manejo de corrupción de datos de dm-verity solicitadas no están disponibles." -#: lib/libdevmapper.c:1634 +#: lib/libdevmapper.c:1706 msgid "Requested dm-verity FEC options are not supported." msgstr "Las opciones FEC de dm-verity solicitadas no están disponibles." -#: lib/libdevmapper.c:1638 +#: lib/libdevmapper.c:1710 msgid "Requested data integrity options are not supported." msgstr "Las opciones de integridad de datos solicitadas no están disponibles." -#: lib/libdevmapper.c:1640 +#: lib/libdevmapper.c:1712 msgid "Requested sector_size option is not supported." msgstr "La opción sector_size solicitada no está disponible." -#: lib/libdevmapper.c:1645 +#: lib/libdevmapper.c:1717 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "El recómputo automático de las etiquetas de integridad solicitado no está disponible." -#: lib/libdevmapper.c:1649 lib/libdevmapper.c:1682 lib/libdevmapper.c:1685 -#: lib/luks2/luks2_json_metadata.c:2160 +#: lib/libdevmapper.c:1721 lib/libdevmapper.c:1757 lib/libdevmapper.c:1760 +#: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Descartar/TRIM no disponible." -#: lib/libdevmapper.c:1653 +#: lib/libdevmapper.c:1725 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "El modo de mapa de bits de dm-integrity solicitado no está disponible." -#: lib/libdevmapper.c:2607 +#: lib/libdevmapper.c:2693 #, c-format msgid "Failed to query dm-%s segment." msgstr "No se ha podido consultar el segmento de dm-%s." @@ -182,7 +183,7 @@ msgid "Cannot initialize crypto backend." msgstr "No se puede inicializar el «backend» de cifrado." -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "Algoritmo «hash» %s no disponible." @@ -196,7 +197,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "No se puede determinar el tipo de dispositivo. ¿Es incompatible la activación del dispositivo?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "Esta operación solamente está disponible para dispositivos LUKS." @@ -218,7 +219,7 @@ msgid "Key slot %d is full, please select another one." msgstr "La ranura de claves %d está llena; seleccione otra." -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "El tamaño del dispositivo no está alineado con el tamaño de bloque lógico del dispositivo." @@ -227,7 +228,7 @@ msgid "Header detected but device %s is too small." msgstr "Cabecera detectada pero el dispositivo %s es demasiado pequeño." -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "Esta operación no está disponible para este tipo de dispositivo." @@ -235,7 +236,7 @@ msgid "Illegal operation with reencryption in-progress." msgstr "Operación con recifrado en curso no válida." -#: lib/setup.c:832 lib/luks1/keymanage.c:475 +#: lib/setup.c:832 lib/luks1/keymanage.c:482 #, c-format msgid "Unsupported LUKS version %d." msgstr "Versión LUKS no disponible %d." @@ -244,8 +245,8 @@ msgid "Detached metadata device is not supported for this crypt type." msgstr "El dispositivo de metadatos separado no está disponible para este tipo de cifrado." -#: 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:4532 #, c-format msgid "Device %s is not active." msgstr "El dispositivo %s no está activo." @@ -259,7 +260,7 @@ msgid "Invalid plain crypt parameters." msgstr "Parámetros de cifrado para modo claro no válidos." -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:86 msgid "Invalid key size." msgstr "Tamaño de clave no válido." @@ -268,11 +269,11 @@ msgstr "El UUID no está disponible para este tipo de cifrado." #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1226 src/cryptsetup.c:3923 +#: src/cryptsetup.c:1293 src/cryptsetup.c:4023 msgid "Unsupported encryption sector size." msgstr "Tamaño de sector de cifrado no admitido." -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "El tamaño del dispositivo no está alineado con el tamaño del sector solicitado." @@ -316,8 +317,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "ATENCIÓN: el tamaño de la zona de ranuras de claves LUKS2 ha cambiado a % bytes.\n" -#: 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:846 lib/luks1/keyencryption.c:255 +#: lib/luks2/luks2_reencrypt.c:2356 lib/luks2/luks2_reencrypt.c:3381 #, c-format msgid "Device %s is too small." msgstr "El dispositivo %s es demasiado pequeño." @@ -350,16 +351,16 @@ msgid "Can't format VERITY without device." msgstr "Imposible dar formato VERITY sin dispositivo." -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "Tipo de «hash» VERITY %d no disponible." -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "Tamaño de bloque VERITY no disponible." -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "Desplazamiento «hash» VERITY no disponible." @@ -389,236 +390,236 @@ msgid "Unknown crypt device type %s requested." msgstr "El tipo de dispositivo cifrado % solicitado es desconocido." -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "Parámetros no admitidos para el dispositivo %s." -#: 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:2408 +#: lib/luks2/luks2_reencrypt.c:2751 #, c-format msgid "Mismatching parameters on device %s." msgstr "Parámetros discordantes en el dispositivo %s." -#: lib/setup.c:2661 +#: lib/setup.c:2664 msgid "Crypt devices mismatch." msgstr "Los dispositivos de cifrado no concuerdan." -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3159 #, c-format msgid "Failed to reload device %s." msgstr "No se ha podido recargar el dispositivo %s." -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "No se ha podido suspender el dispositivo %s." -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3094 lib/luks2/luks2_reencrypt.c:3163 #, c-format msgid "Failed to resume device %s." msgstr "No se ha podido reanudar el dispositivo %s." -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "Error grave durante la recarga del dispositivo %s (por encima del dispositivo %s)." -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "No se ha podido conmutar el dispositivo %s a dm-error." -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "No se ha podido cambiar el tamaño del dispositivo de bucle." -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "¿Está seguro de que quiere cambiar el UUID del dispositivo?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "El fichero de copia de seguridad de la cabecera no contiene una cabecera LUKS compatible." -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "El volumen %s no está activo." -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "El volumen %s ya está suspendido." -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "La suspensión no está disponible para el dispositivo %s." -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "Error durante la suspensión del dispositivo %s." -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "EL volumen %s no está suspendido." - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "La reanudación no está disponible para el dispositivo %s." -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "Error durante la reanudación del dispositivo %s." -#: 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 +#, c-format +msgid "Volume %s is not suspended." +msgstr "EL volumen %s no está suspendido." + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5859 msgid "Volume key does not match the volume." msgstr "La clave de volumen no corresponde a este volumen." -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "No se puede añadir ranura de claves; todas las ranuras están desactivadas y no se ha proporcionado una clave para el volumen." -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "No se ha logrado intercambiar la nueva ranura de claves." -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "La ranura de claves %d no es válida." -#: lib/setup.c:3675 src/cryptsetup.c:1572 src/cryptsetup.c:1917 +#: lib/setup.c:3679 src/cryptsetup.c:1631 src/cryptsetup.c:1976 #, c-format msgid "Keyslot %d is not active." msgstr "La ranura de claves %d no está activa." -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "La cabecera del dispositivo se solapa con la zona de datos." -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "Recifrado en curso. No se puede activar el dispositivo." -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2243 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Failed to get reencryption lock." msgstr "No se ha podido conseguir el bloqueo de recifrado." -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2869 msgid "LUKS2 reencryption recovery failed." msgstr "La recuperación del recifrado LUKS2 ha fallado." -#: lib/setup.c:4127 lib/setup.c:4379 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "Este tipo de dispositivo no se ha inicializado adecuadamente." -#: lib/setup.c:4171 -#, c-format -msgid "Cannot use device %s, name is invalid or still in use." -msgstr "No se puede utilizar el dispositivo %s; el nombre no es válido o todavía está en uso." - -#: lib/setup.c:4174 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "El dispositivo %s ya existe." -#: lib/setup.c:4296 +#: lib/setup.c:4192 +#, c-format +msgid "Cannot use device %s, name is invalid or still in use." +msgstr "No se puede utilizar el dispositivo %s; el nombre no es válido o todavía está en uso." + +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "Clave de volumen incorrecta para dispositivo no cifrado." -#: lib/setup.c:4405 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "«Hash» raíz incorrecta para dispositivo «verity»." -#: lib/setup.c:4412 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "Se requiere la firma «hash» raíz." -#: lib/setup.c:4421 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "El llavero de núcleo está ausente: se necesita para pasar la firma al núcleo." -#: lib/setup.c:4438 lib/setup.c:5915 +#: lib/setup.c:4458 lib/setup.c:5935 msgid "Failed to load key in kernel keyring." msgstr "No se ha podido cargar la clave en el llavero del núcleo." -#: lib/setup.c:4491 lib/setup.c:4507 lib/luks2/luks2_json_metadata.c:2296 -#: src/cryptsetup.c:2664 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2741 #, c-format msgid "Device %s is still in use." msgstr "El dispositivo %s todavía se está utilizando." -#: lib/setup.c:4516 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "Dispositivo inválido %s." -#: lib/setup.c:4632 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "El «buffer» de la clave del volumen es demasiado pequeño." -#: lib/setup.c:4640 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "No se puede recuperar la clave para el dispositivo no cifrado." -#: lib/setup.c:4657 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "No se puede recuperar el «hash» raíz para dispositivo «verity»." -#: lib/setup.c:4659 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Esta operación no está disponible para el dispositivo cifrado %s." -#: lib/setup.c:4865 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "Operación de volcado no deisponible para este tipo de dispositivo." -#: lib/setup.c:5190 +#: lib/setup.c:5210 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "El desplazamiento de datos no es múltiplo de %u bytes." -#: lib/setup.c:5475 +#: lib/setup.c:5495 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "No se puede convertir el dispositivo %s que todavía está en uso." -#: lib/setup.c:5772 +#: lib/setup.c:5792 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "No se ha logrado asignar la ranura de claves %u como nueva clave del volumen." -#: lib/setup.c:5845 +#: lib/setup.c:5865 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "No se han podido inicializar los parámetros predefinidos de la ranura de claves LUKS2." -#: lib/setup.c:5851 +#: lib/setup.c:5871 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "No se ha logrado asignar la ranura de claves %d al resumen." -#: lib/setup.c:5982 +#: lib/setup.c:6002 msgid "Kernel keyring is not supported by the kernel." msgstr "El llavero de núcleo no está admitido en el núcleo." -#: lib/setup.c:5992 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6012 lib/luks2/luks2_reencrypt.c:2966 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "No se ha podido leer la frase contraseña desde el llavero (error %d)" -#: lib/setup.c:6016 +#: lib/setup.c:6036 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "No se ha podido adquirir el bloqueo de la serialización de acceso duro de memoria global." @@ -646,8 +647,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "No es posible situarse en la posición solicitada del fichero de claves." -#: 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:195 +#: src/utils_password.c:208 msgid "Out of memory while reading passphrase." msgstr "Memoria agotada mientras se estaba leyendo la frase contraseña." @@ -678,40 +679,45 @@ msgid "Device %s is not compatible." msgstr "El dispositivo %s no es compatible." -#: lib/utils_device.c:642 +#: lib/utils_device.c:538 +#, c-format +msgid "Ignoring bogus optimal-io size for data device (%u bytes)." +msgstr "Se ignorará por falso el tamaño de optimal-io para el dispositivo de datos (%u bytes)." + +#: lib/utils_device.c:660 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "El dispositivo %s es demasiado pequeño. Se necesitan % bytes como mínimo." -#: lib/utils_device.c:723 +#: lib/utils_device.c:741 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "No se puede usar el dispositivo %s porque ya está en uso (asignado o montado)." -#: lib/utils_device.c:727 +#: lib/utils_device.c:745 #, c-format msgid "Cannot use device %s, permission denied." msgstr "No se puede utilizar el dispositivo %s; permiso denegado." -#: lib/utils_device.c:730 +#: lib/utils_device.c:748 #, c-format msgid "Cannot get info about device %s." msgstr "No se puede obtener información del dispositivo %s." -#: lib/utils_device.c:753 +#: lib/utils_device.c:771 msgid "Cannot use a loopback device, running as non-root user." msgstr "No se puede utilizar un dispositivo de bucle invertido como usuario no administrador." -#: lib/utils_device.c:763 +#: lib/utils_device.c:781 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "No se ha logrado asociar el dispositivo de bucle invertido (hace falta un dispositivo de bucle con marcador de auto-limpieza)." -#: lib/utils_device.c:809 +#: lib/utils_device.c:827 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "El «offset» solicitado está más allá del tamaño real del dispositivo %s." -#: lib/utils_device.c:817 +#: lib/utils_device.c:835 #, c-format msgid "Device %s has zero size." msgstr "El dispositivo %s tiene tamaño cero." @@ -785,16 +791,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "ATENCIÓN: ¡Falta el directorio de bloqueo %s/%s!\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "El directorio de bloqueo %s/%s se creará con los permisos predeterminados al compilar." #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Bloqueo abortado. La ruta del bloqueo %s/%s no puede utilizarse (%s no es un directorio)." -#: 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 msgid "Cannot seek to device offset." msgstr "No es posible situarse en la posición del dispositivo." @@ -822,8 +828,8 @@ msgstr "La especificación de cifrado debería estar en formato [cipher]-[mode]-[iv]." #: 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:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." msgstr "No se puede escribir en el dispositivo %s; permiso denegado." @@ -842,12 +848,12 @@ msgstr "Error de entrada/salida mientras se cifraba una ranura de claves." #: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "No se puede abrir el dispositivo %s." @@ -868,43 +874,43 @@ msgid "LUKS keyslot %u is invalid." msgstr "La ranura de claves LUKS %u no es válida." -#: 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:1091 src/cryptsetup.c:1492 +#: src/cryptsetup.c:1618 src/cryptsetup.c:1675 src/cryptsetup.c:1731 +#: src/cryptsetup.c:1798 src/cryptsetup.c:1901 src/cryptsetup.c:1965 +#: src/cryptsetup.c:2195 src/cryptsetup.c:2406 src/cryptsetup.c:2468 +#: src/cryptsetup.c:2534 src/cryptsetup.c:2698 src/cryptsetup.c:3363 +#: src/cryptsetup.c:3372 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "El dispositivo %s no es un dispositivo LUKS válido." -#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1100 +#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1108 #, c-format msgid "Requested header backup file %s already exists." msgstr "El fichero de copia de seguridad de cabecera solicitado %s ya existe." -#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1102 +#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1110 #, c-format msgid "Cannot create header backup file %s." msgstr "No se puede crear el fichero de copia de seguridad %s." -#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1109 +#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1117 #, c-format msgid "Cannot write header backup file %s." msgstr "No se puede escribir en el fichero de copia de seguridad %s." -#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1161 +#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1169 msgid "Backup file does not contain valid LUKS header." msgstr "El fichero de copia de seguridad no contiene una cabecera LUKS válida." -#: 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:1190 #, c-format msgid "Cannot open header backup file %s." msgstr "No se puede abrir el fichero de copia de seguridad de cabecerda %s." -#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1190 +#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1198 #, c-format msgid "Cannot read header backup file %s." msgstr "No se puede leer el fichero de copia de seguridad de cabecerda %s." @@ -926,7 +932,7 @@ msgid "already contains LUKS header. Replacing header will destroy existing keyslots." msgstr "ya contiene cabecera LUKS. Reemplazar la cabecera destruirá las ranuras de claves existentes." -#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1224 +#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1232 msgid "" "\n" "WARNING: real device header has different UUID than backup!" @@ -938,101 +944,101 @@ msgid "Non standard key size, manual repair required." msgstr "El tamaño de la clave no es estándar; se requiere una reparación manual." -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "El alineamiento de las ranuras de claves no es estándar; se requiere una reparación manual." -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "Reparando ranuras de claves." -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Ranura de claves %i: posición reparada (%u -> %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Ranura de claves %i: bandas reparadas (%u -> %u)." -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Ranura de claves %i: la firma de la partición es falsa." -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Ranura de claves %i: «salt wiped»." -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "Escribiendo cabecera LUKS en el disco." -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "La reparación ha fallado." -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "La «hash» LUKS solicitada %s no está disponible." -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1133 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1185 msgid "No known problems detected for LUKS header." msgstr "No se ha detectado ningún problema en la cabecera LUKS." -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Error al actualizar la cabecera LUKS en el dispositivo %s." -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Error al leer la cabecera LUKS después de actualizarla en el dispositivo %s." -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "La posición de los datos de una cabecera LUKS debe ser 0 o superior al tamaño de la cabecera." -#: 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:1009 +#: src/cryptsetup.c:2861 msgid "Wrong LUKS UUID format provided." msgstr "El formato de UUID LUKS proporcionado es incorrecto." -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "No se puede crear la cabecera LUKS: fallo en la lectura «random salt»." -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "No se puede crear la cabecera LUKS: fallo en la cabecera (usando «hash» %s)." -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "La ranura de claves %d está activa; primero hay que purgar." -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "El material de la ranura de claves %d no tiene suficientes bandas. Quizá se haya manipulado la cabecera." -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "No se puede abrir la ranura de claves (usando «hash» %s)." -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "La ranura %d no es válida; seleccione una ranura de claves entre 0 y %d." -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "No se puede limpiar el dispositivo %s." @@ -1068,11 +1074,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "El algoritmo «hash» %s no está disponible, por lo que se ha ignorado." -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1010 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1056 msgid "Required kernel crypto interface not available." msgstr "La interfaz de cifrado del núcleo requerida no está disponible." -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1012 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1058 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Asegúrese de que el módulo del núcleo algof_skcipher está cargado." @@ -1085,159 +1091,173 @@ msgid "Kernel does not support activation for this TCRYPT legacy mode." msgstr "El núcleo no dispone de activación para este modo antiguo TCRYPT." -#: lib/tcrypt/tcrypt.c:793 +#: lib/tcrypt/tcrypt.c:790 #, c-format msgid "Activating TCRYPT system encryption for partition %s." msgstr "Activando el sistema de cifrado TCRYPT para la partición %s." -#: lib/tcrypt/tcrypt.c:871 +#: lib/tcrypt/tcrypt.c:868 msgid "Kernel does not support TCRYPT compatible mapping." msgstr "El núcleo no admite asignación compatible con TCRYPT." -#: lib/tcrypt/tcrypt.c:1093 +#: lib/tcrypt/tcrypt.c:1090 msgid "This function is not supported without TCRYPT header load." msgstr "Esta función no está disponible sin carga de cabecera TCRYPT." -#: 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 "El tipo de entrada de metadatos '%u' no esperado se ha encontrado mientras se analizaba la clave maestra del volumen soportado." -#: lib/bitlk/bitlk.c:380 +#: lib/bitlk/bitlk.c:397 msgid "Invalid string found when parsing Volume Master Key." msgstr "Se ha encontrado una cadena no válida mientras se analizaba la clave maestra del volumen." -#: lib/bitlk/bitlk.c:385 +#: lib/bitlk/bitlk.c:402 #, c-format msgid "Unexpected string ('%s') found when parsing supported Volume Master Key." msgstr "Se ha encontrado una cadena no esperada ('%s') mientras se analizaba la clave maestra del volumen soportado." -#: 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 "El valor de entrada de metadatos '%u' no esperado se ha encontrado mientras se analizaba la clave maestra del volumen soportado." -#: lib/bitlk/bitlk.c:478 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "No se ha podido leer la firma BITLK de %s." -#: lib/bitlk/bitlk.c:484 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Firma no válida o desconocida para el dispositivo BITLK" + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "BITLK versión 1 no está admitido actualmente." -#: lib/bitlk/bitlk.c:490 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "Firma de arranque no válida o desconocida para el dispositivo BITLK" -#: lib/bitlk/bitlk.c:502 -msgid "Invalid or unknown signature for BITLK device." -msgstr "Firma no válida o desconocida para el dispositivo BITLK" - -#: lib/bitlk/bitlk.c:509 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "Tamaño de sector no admitido %." -#: lib/bitlk/bitlk.c:517 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "No se ha podido leer la cabecera BITLK de %s." -#: lib/bitlk/bitlk.c:542 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "No se han podido leer los metadatos BITLK FVE de %s." -#: lib/bitlk/bitlk.c:593 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "Tipo de cifrado desconocido o no admitido." -#: lib/bitlk/bitlk.c:626 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "No se han podido leer las entradas de los metadatos BITLK de %s." -#: lib/bitlk/bitlk.c:920 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "Tipo de entrada de metadatos '%u' encontrado inesperadamente mientras se analizaba clave externa." + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "Valor de entrada de metadatos '%u' encontrado inesperadamente mientras se analizaba clave externa." + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "Entrada de metadatos encontrada inesperadamente mientras se analizaba clave de inicio." + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "Esta operación no está disponible." -#: lib/bitlk/bitlk.c:928 -msgid "Wrong key size." -msgstr "Tamaño de clave incorrecto." +#: lib/bitlk/bitlk.c:1079 +msgid "Unexpected key data size." +msgstr "Tamaño de datos de la clave no esperado." -#: lib/bitlk/bitlk.c:980 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "Este dispositivo BITLK se encuentra en un estado en el que no puede activarse." -#: lib/bitlk/bitlk.c:986 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "Los dispositivos BITLK con tipo '%s' no puede activarse." -#: lib/bitlk/bitlk.c:1068 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "La activación de un dispositivo BITLK parcialmente descifrado no puede hacerse." -#: lib/bitlk/bitlk.c:1204 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "No se puede activar el dispositivo; el dm-crypt del núcleo no sirve para BITLK IV." -#: lib/bitlk/bitlk.c:1208 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "No se puede activar el dispositivo; el dm-crypt del núcleo no sirve para difusor BITLK «Elephant»." -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "El dispositivo «verity» %s no utiliza cabecera en disco." -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "El dispositivo %s no es un dispositivo VERITY válido." -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "Versión VERITY %d no disponible." -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "Cabecera VERITY corrupta." -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "El formato UUID VERITY proporcionado en el dispositivo %s es incorrecto." -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "Error al actualizar la cabecera «verity» en el dispositivo %s." -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "La verificación de firma «hash» raíz solicitada no está disponible." -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "Los errores no pueden repararse con dispositivo FEC." -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "Se han encontrado %u errores reparables con dispositivo FEC." -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "El núcleo no dispone de asignación «dm-verity»." -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "El núcleo no dispone de opción de firma «dm-verity»." -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "El dispositivo «verity» ha detectado algo corrupto después de la activación." @@ -1246,41 +1266,37 @@ msgid "Spare area is not zeroed at position %." msgstr "El área de reserva no tiene ceros en la posició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 msgid "Device offset overflow." msgstr "Desbordamiento de la posición del dispositivo." -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "La verificación ha fallado en la posición %." -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "Parámetros de tamaño inválido para un dispositivo «verity»." - -#: lib/verity/verity_hash.c:296 +#: lib/verity/verity_hash.c:273 msgid "Hash area overflow." msgstr "Desbordamiento del área «hash»." -#: lib/verity/verity_hash.c:373 +#: lib/verity/verity_hash.c:346 msgid "Verification of data area failed." msgstr "Fallo en la verificación del área de datos." -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "Fallo en la verificación de la «hash» raíz." -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "Error de entrada/salida al crear el área «hash»." -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "La creación del área «hash» ha fallado." -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "ATENCIÓN: el núcleo no puede activar un dispositivo si el tamaño del bloque de datos excede el tamaño de página (%u)." @@ -1289,53 +1305,61 @@ msgid "Failed to allocate RS context." msgstr "No se ha podido asignar contexto RS." -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "No se ha podido asignar «buffer»." -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "No se ha podido leer el bloque RS % byte %d." -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "No se ha podido leer la paridad para el bloque RS %." -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "No se ha podido reparar la paridad para el bloque %." -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "No se ha podido escribir la paridad para el bloque RS %." -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "Los tamaños de bloque deben coincidir para FEC." -#: lib/verity/verity_fec.c:229 +#: lib/verity/verity_fec.c:233 msgid "Invalid number of parity bytes." msgstr "Número no válido de bytes de paridad." -#: lib/verity/verity_fec.c:265 +#: lib/verity/verity_fec.c:238 +msgid "Invalid FEC segment length." +msgstr "Longitud de segmento FEC no válida." + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "No se ha podido determinar el tamaño para el dispositivo %s." -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:353 msgid "Kernel does not support dm-integrity mapping." msgstr "El núcleo no dispone de asociación «dm-integrity»." -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "El núcleo no dispone de alineamiento de metadatos fijo «dm-integrity»." -#: 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 "El núcleo rehúsa activar la opción de recálculo inseguro (véanse las opciones de activación antiguas para cambiar ese funcionamiento)." + +#: lib/luks2/luks2_disk_metadata.c:383 lib/luks2/luks2_json_metadata.c:967 +#: lib/luks2/luks2_json_metadata.c:1252 #, c-format msgid "Failed to acquire write lock on device %s." msgstr "No se ha podido adquirir el bloqueo de escritura del dispositivo %s." @@ -1356,45 +1380,45 @@ msgid "Requested data offset is too small." msgstr "El desplazamiento de datos solicitado es demasiado pequeño." -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "ATENCIÓN: la zona de ranuras de claves (% bytes) es muy pequeña; el número de ranuras de claves LUKS2 disponibles es muy limitado.\n" -#: 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:954 lib/luks2/luks2_json_metadata.c:1082 +#: lib/luks2/luks2_json_metadata.c:1158 lib/luks2/luks2_keyslot_luks2.c:92 #: lib/luks2/luks2_keyslot_luks2.c:114 #, c-format msgid "Failed to acquire read lock on device %s." msgstr "No se ha podido adquirir el bloqueo de lectura para el dispositivo %s." -#: lib/luks2/luks2_json_metadata.c:1167 +#: lib/luks2/luks2_json_metadata.c:1175 #, c-format msgid "Forbidden LUKS2 requirements detected in backup %s." msgstr "Se han detectado requisitos prohibidos para LUKS2 en la copia de seguridad %s." -#: lib/luks2/luks2_json_metadata.c:1208 +#: lib/luks2/luks2_json_metadata.c:1216 msgid "Data offset differ on device and backup, restore failed." msgstr "La posición de los datos no coinciden en el dispositivo y en la copia de seguridad; ha fallado la restauración." -#: lib/luks2/luks2_json_metadata.c:1214 +#: lib/luks2/luks2_json_metadata.c:1222 msgid "Binary header with keyslot areas size differ on device and backup, restore failed." msgstr "La cabecera binaria con el tamaño de las áreas de ranuras de claves no coinciden en el dispositivo y en la copia de seguridad; la restauración ha fallado." -#: lib/luks2/luks2_json_metadata.c:1221 +#: lib/luks2/luks2_json_metadata.c:1229 #, c-format msgid "Device %s %s%s%s%s" msgstr "Dispositivo %s %s%s%s%s" -#: lib/luks2/luks2_json_metadata.c:1222 +#: lib/luks2/luks2_json_metadata.c:1230 msgid "does not contain LUKS2 header. Replacing header can destroy data on that device." msgstr "no contiene cabecera LUKS2. Reemplazar la cabecera puede destruir los datos en ese dispositivo." -#: lib/luks2/luks2_json_metadata.c:1223 +#: lib/luks2/luks2_json_metadata.c:1231 msgid "already contains LUKS2 header. Replacing header will destroy existing keyslots." msgstr "ya contiene cabecera LUKS2. Reemplazar la cabecera destruirá las ranuras de claves existentes." -#: lib/luks2/luks2_json_metadata.c:1225 +#: lib/luks2/luks2_json_metadata.c:1233 msgid "" "\n" "WARNING: unknown LUKS2 requirements detected in real device header!\n" @@ -1405,7 +1429,7 @@ "dispositivo real! Reemplazar la cabecera con la copia de seguridad puede\n" "corromper los datos en ese dispositivo!" -#: lib/luks2/luks2_json_metadata.c:1227 +#: lib/luks2/luks2_json_metadata.c:1235 msgid "" "\n" "WARNING: Unfinished offline reencryption detected on the device!\n" @@ -1415,50 +1439,50 @@ "AVISO: ¡Se ha detectado recifrado «offline» no terminado en el dispositivo!\n" "¡Reemplazar la cabecera con la copia de seguridad puede corromper los datos!" -#: lib/luks2/luks2_json_metadata.c:1323 +#: lib/luks2/luks2_json_metadata.c:1333 #, c-format msgid "Ignored unknown flag %s." msgstr "Se hará caso omiso del indicador desconocido %s." -#: lib/luks2/luks2_json_metadata.c:2010 lib/luks2/luks2_reencrypt.c:1746 +#: lib/luks2/luks2_json_metadata.c:2020 lib/luks2/luks2_reencrypt.c:1746 #, c-format msgid "Missing key for dm-crypt segment %u" msgstr "Falta la clave para el segmento dm-crypt %u" -#: lib/luks2/luks2_json_metadata.c:2022 lib/luks2/luks2_reencrypt.c:1764 +#: lib/luks2/luks2_json_metadata.c:2032 lib/luks2/luks2_reencrypt.c:1764 msgid "Failed to set dm-crypt segment." msgstr "No se ha podido establecer el segmento de dm-crypt." -#: lib/luks2/luks2_json_metadata.c:2028 lib/luks2/luks2_reencrypt.c:1770 +#: lib/luks2/luks2_json_metadata.c:2038 lib/luks2/luks2_reencrypt.c:1770 msgid "Failed to set dm-linear segment." msgstr "No se ha podido establecer el segmento de dm-linear." -#: lib/luks2/luks2_json_metadata.c:2155 +#: lib/luks2/luks2_json_metadata.c:2165 msgid "Unsupported device integrity configuration." msgstr "Configuración de integridad de dispositivo no admitida." -#: lib/luks2/luks2_json_metadata.c:2241 +#: lib/luks2/luks2_json_metadata.c:2251 msgid "Reencryption in-progress. Cannot deactivate device." msgstr "Recifrado en curso. No se puede desactivar el dispositivo." -#: lib/luks2/luks2_json_metadata.c:2252 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3204 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "No se ha podido reemplazar el dispositivo suspendido %s con el objetivo dm-error." -#: lib/luks2/luks2_json_metadata.c:2332 +#: lib/luks2/luks2_json_metadata.c:2342 msgid "Failed to read LUKS2 requirements." msgstr "No se ha podido leer los requisitos LUKS2." -#: lib/luks2/luks2_json_metadata.c:2339 +#: lib/luks2/luks2_json_metadata.c:2349 msgid "Unmet LUKS2 requirements detected." msgstr "Se han detectado requisitos LUKS2 no satisfechos." -#: lib/luks2/luks2_json_metadata.c:2347 +#: lib/luks2/luks2_json_metadata.c:2357 msgid "Operation incompatible with device marked for legacy reencryption. Aborting." msgstr "Operación incompatible con dispositivo marcado para recifrado obsoleto. Se aborta." -#: lib/luks2/luks2_json_metadata.c:2349 +#: lib/luks2/luks2_json_metadata.c:2359 msgid "Operation incompatible with device marked for LUKS2 reencryption. Aborting." msgstr "Operación incompatible con dispositivo marcado para recifrado LUKS2. Se aborta." @@ -1496,7 +1520,7 @@ msgid "Unable to move keyslot area. LUKS2 keyslots area too small." msgstr "Imposible mover el área de la ranura de claves. Área de ranuras de clave LUKS2 demasiado pequeña." -#: 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 msgid "Unable to move keyslot area." msgstr "Imposible mover el área de la ranura de claves." @@ -1550,7 +1574,7 @@ #: 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:3044 msgid "Failed to initialize old segment storage wrapper." msgstr "No se ha podido inicializar la envoltura antigua de almacenamiento del segmento." @@ -1562,7 +1586,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "No se han podido leer las sumas de comprobación para la zona activa actual." -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3052 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "No se ha podido leer la zona activa que comienza en %." @@ -1620,8 +1644,8 @@ msgid "Data shift (% sectors) is less than future data offset (% sectors)." msgstr "El desplazamiento de datos (% sectores) es menor que el desplazamiento de datos futuros (% sectores)." -#: lib/luks2/luks2_reencrypt.c:2366 lib/luks2/luks2_reencrypt.c:2779 -#: lib/luks2/luks2_reencrypt.c:2800 +#: lib/luks2/luks2_reencrypt.c:2366 lib/luks2/luks2_reencrypt.c:2793 +#: lib/luks2/luks2_reencrypt.c:2814 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "No se ha podido abrir %s en modo exclusivo (ya está asignado o montado)." @@ -1630,7 +1654,7 @@ msgid "Device not marked for LUKS2 reencryption." msgstr "El dispositivo no está marcado para recifrado LUKS2." -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3309 msgid "Failed to load LUKS2 reencryption context." msgstr "No se ha podido cargar el contexto del recifrado LUKS2." @@ -1654,86 +1678,86 @@ msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "No se puede proceder con el recifrado. Ejecute primero la recuperación de recifrado." -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2764 msgid "Active device size and requested reencryption size don't match." msgstr "El tamaño del dispositivo activo y el tamaño de recifrado solicitado no coinciden." -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2778 msgid "Illegal device size requested in reencryption parameters." msgstr "El tamaño de dispositivo solicitado en los parámetros de recifrado no es válido." -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2848 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "Recifrado en proceso. No se puede llevar a cabo una recuperación." -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2920 msgid "LUKS2 reencryption already initialized in metadata." msgstr "Recifrado LUKS2 ya inicializado en los metadatos." -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2927 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "No se ha podido inicializar el recifrado LUKS2 en los metadatos." -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3018 msgid "Failed to set device segments for next reencryption hotzone." msgstr "No se han podido establecer los segmentos del dispositivo para la siguiente zona activa de recifrado." -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3060 msgid "Failed to write reencryption resilience metadata." msgstr "No se han podido escribir los metadatos de resiliencia de recifrado." -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3067 msgid "Decryption failed." msgstr "El descifrado ha fallado." -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3072 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "No se ha podido escribir la zona activa que comienza en %." -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3077 msgid "Failed to sync data." msgstr "No se han podido sincronizar los datos." -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3085 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "No se han podido actualizar los metadatos tras completar la zona activa de recifrado actual." -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3152 msgid "Failed to write LUKS2 metadata." msgstr "No se han podido escribir los metadatos de LUKS2." -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3175 msgid "Failed to wipe backup segment data." msgstr "No se han podido limpiar los datos de segmentos de respaldo." -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3188 msgid "Failed to disable reencryption requirement flag." msgstr "No se ha podido desactivar el indicador del requisito de descifrado." -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3196 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "Error fatal mientras se recifraba una porción que comienza en %, de % sectores de longitud." # No sé cómo traducir 'error target'. -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3205 msgid "Do not resume the device unless replaced with error target manually." msgstr "No reanudar el dispositivo a menos que se reemplace con «error target» manualmente." -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3254 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "No se puede proceder con el recifrado. Estado de recifrado inesperado." -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3260 msgid "Missing or invalid reencrypt context." msgstr "Contexto de recifrado ausente o no válido." -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3267 msgid "Failed to initialize reencryption device stack." msgstr "No se ha podido inicializar la pila del dispositivo de recifrado." -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3286 lib/luks2/luks2_reencrypt.c:3322 msgid "Failed to update reencryption context." msgstr "No se ha podido actualizar el contexto de recifrado." @@ -1746,69 +1770,69 @@ msgid "Failed to create builtin token %s." msgstr "No se ha podido crear el «token» interno %s." -#: src/cryptsetup.c:164 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "No se puede hacer verificación de frase contraseña en entradas no tty." -#: src/cryptsetup.c:221 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Los parámetros de cifrado de ranura de claves solo pueden configurarse para dispositivos LUKS2." -#: 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:1005 src/cryptsetup.c:1336 +#: src/cryptsetup.c:3231 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "No se ha detectado ningún patrón conocido de especificación de cifrado." -#: src/cryptsetup.c:259 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "ATENCIÓN: No se va a hacer caso del parámetro --hash en modo no cifrado con el fichero de claves especificado.\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 "ATENCIÓN: No se va a hacer caso de la opción --keyfile-size; el tamaño de lectura es igual al tamaño de la clave de cifrado.\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 "Se ha(n) detectado firma(s) de dispositivo en %s. Si se prosigue, pueden dañarse los datos existentes." -#: 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:1142 src/cryptsetup.c:1194 +#: src/cryptsetup.c:1313 src/cryptsetup.c:1386 src/cryptsetup.c:2033 +#: src/cryptsetup.c:2759 src/cryptsetup.c:2883 src/integritysetup.c:243 msgid "Operation aborted.\n" msgstr "Operación abortada.\n" -#: src/cryptsetup.c:381 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "Es necesaria la opción --key-file." -#: src/cryptsetup.c:434 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "Introduzca PIM de VeraCrypt: " -#: src/cryptsetup.c:443 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "Valor de PIM no válido: error de análisis." -#: src/cryptsetup.c:446 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "Valor de PIM no válido: 0." -#: src/cryptsetup.c:449 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "Valor de PIM no válido: fuera de rango." -#: src/cryptsetup.c:472 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "No se ha detectado ninguna cabecera de dispositivo con esa frase contraseña." -#: src/cryptsetup.c:541 +#: src/cryptsetup.c:581 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "El dispositivo %s no es un dispositivo BITLK válido." -#: src/cryptsetup.c:576 +#: src/cryptsetup.c:616 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1818,68 +1842,68 @@ "sensible que permite el acceso a una partición cifrada sin frase contraseña.\n" "Este volcado debería almacenarse siempre cifrado en un lugar seguro." -#: src/cryptsetup.c:673 +#: src/cryptsetup.c:713 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "El dispositivo %s todavía está activo y programado para borrado diferido.\n" -#: src/cryptsetup.c:701 +#: src/cryptsetup.c:741 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "El cambio de tamaño del dispositivo activo requiere clave de volumen en el llavero pero la opción --disable-keyring está puesta." -#: src/cryptsetup.c:838 +#: src/cryptsetup.c:884 msgid "Benchmark interrupted." msgstr "Comparativa interrumpida." -#: src/cryptsetup.c:859 +#: src/cryptsetup.c:905 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s N/A\n" -#: src/cryptsetup.c:861 +#: src/cryptsetup.c:907 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u iteraciones por segundo para clave de %zu bits\n" -#: src/cryptsetup.c:875 +#: src/cryptsetup.c:921 #, c-format msgid "%-10s N/A\n" msgstr "%-10s N/A\n" -#: src/cryptsetup.c:877 +#: src/cryptsetup.c:923 #, c-format msgid "%-10s %4u iterations, %5u memory, %1u parallel threads (CPUs) for %zu-bit key (requested %u ms time)\n" msgstr "%-10s %4u iteraciones, %5u memora, %1u hilos paralelos (CPUs) para clave de %zu bits (tiempo solicitado %u ms)\n" -#: src/cryptsetup.c:901 +#: src/cryptsetup.c:947 msgid "Result of benchmark is not reliable." msgstr "El resultado de la comparativa no es fiable." -#: src/cryptsetup.c:951 +#: src/cryptsetup.c:997 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Las pruebas son solo aproximadas usando memoria (no hay entrada/salida de almacenadmiento).\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:971 +#: src/cryptsetup.c:1017 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*s Algoritmo | Clave | Cifrado | Descifrado\n" -#: src/cryptsetup.c:975 +#: src/cryptsetup.c:1021 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "El algoritmo de cifrado %s (con clave de %i bits) no está disponible." #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:994 +#: src/cryptsetup.c:1040 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "# Algoritmo | Clave | Cifrado | Descifrado\n" -#: src/cryptsetup.c:1003 +#: src/cryptsetup.c:1049 msgid "N/A" msgstr "/N/A" -#: src/cryptsetup.c:1083 +#: src/cryptsetup.c:1135 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1887,19 +1911,19 @@ "Parece que el dispositivo no necesita recuperación del recifrado.\n" "¿Desea continuar de todos modos?" -#: src/cryptsetup.c:1089 +#: src/cryptsetup.c:1141 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "¿Está seguro de proceder con la recuperación del recifrado LUKS2?" -#: src/cryptsetup.c:1098 +#: src/cryptsetup.c:1150 msgid "Enter passphrase for reencryption recovery: " msgstr "Introduzca la frase contraseña para la recuperación del recifrado: " -#: src/cryptsetup.c:1141 +#: src/cryptsetup.c:1193 msgid "Really try to repair LUKS device header?" msgstr "¿Está seguro de que quiere intentar reparar la cabecera del dispositivo LUKS?" -#: src/cryptsetup.c:1160 src/integritysetup.c:146 +#: src/cryptsetup.c:1212 src/integritysetup.c:158 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" @@ -1907,104 +1931,108 @@ "Limpieza de dispositivo para inicializar la suma de comprobación de integridad.\n" "Puede interrumpirse pulsando CTRL+c (el resto de dispositivo no limpiado contendrá sumas de comprobación no válidas.\n" -#: src/cryptsetup.c:1182 src/integritysetup.c:168 +#: src/cryptsetup.c:1234 src/integritysetup.c:180 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "No se puede desactivar el dispositivo temporal %s." -#: src/cryptsetup.c:1231 +#: src/cryptsetup.c:1298 msgid "Integrity option can be used only for LUKS2 format." msgstr "La opción de integridad solo puede utilizarse para formato LUKS2." -#: src/cryptsetup.c:1236 src/cryptsetup.c:1296 +#: src/cryptsetup.c:1303 src/cryptsetup.c:1363 msgid "Unsupported LUKS2 metadata size options." msgstr "Opciones de tamaño de metadatos LUKS2 no admitidas." -#: src/cryptsetup.c:1253 +#: src/cryptsetup.c:1312 +msgid "Header file does not exist, do you want to create it?" +msgstr "No existe el fichero de cabecera; ¿desea crearlo?" + +#: src/cryptsetup.c:1320 #, c-format msgid "Cannot create header file %s." msgstr "No se puede crear el fichero de cabecera %s." -#: 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:1343 src/integritysetup.c:206 src/integritysetup.c:214 +#: src/integritysetup.c:223 src/integritysetup.c:296 src/integritysetup.c:304 +#: src/integritysetup.c:314 msgid "No known integrity specification pattern detected." msgstr "No se ha detectado ningún patrón conocido de especificación de integridad." -#: src/cryptsetup.c:1289 +#: src/cryptsetup.c:1356 #, c-format msgid "Cannot use %s as on-disk header." msgstr "No se puede utilizar %s como cabecera en disco." -#: src/cryptsetup.c:1313 src/integritysetup.c:227 +#: src/cryptsetup.c:1380 src/integritysetup.c:237 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "Esto sobreescribirá los datos en %s de forma irrevocable." -#: 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:1413 src/cryptsetup.c:1747 src/cryptsetup.c:1814 +#: src/cryptsetup.c:1916 src/cryptsetup.c:1982 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "No se han podido establecer los parámetros pbkdf." -#: src/cryptsetup.c:1439 +#: src/cryptsetup.c:1498 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "La posición de datos reducida está permitida solamente para cabecera LUKS separada." -#: src/cryptsetup.c:1450 src/cryptsetup.c:1761 +#: src/cryptsetup.c:1509 src/cryptsetup.c:1820 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "No se puede determinar el tamaño de la clave del volumen para LUKS2 sin ranuras de claves; utilice la opción --key-size." -#: src/cryptsetup.c:1488 +#: src/cryptsetup.c:1547 msgid "Device activated but cannot make flags persistent." msgstr "Dispositivo activado pero los indicadores no pueden hacerse persistentes." -#: src/cryptsetup.c:1569 src/cryptsetup.c:1639 +#: src/cryptsetup.c:1628 src/cryptsetup.c:1698 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "La ranura de claves %d se va a borrar." -#: src/cryptsetup.c:1581 src/cryptsetup.c:1642 +#: src/cryptsetup.c:1640 src/cryptsetup.c:1701 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "Esta es la última ranura de claves. El dispositivo quedará inutilizado después de purgar esta clave." -#: src/cryptsetup.c:1582 +#: src/cryptsetup.c:1641 msgid "Enter any remaining passphrase: " msgstr "Introduzca cualquier frase contraseña que quede: " -#: src/cryptsetup.c:1583 src/cryptsetup.c:1644 +#: src/cryptsetup.c:1642 src/cryptsetup.c:1703 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Operación abortada; la ranura de claves NO estaba limpia.\n" -#: src/cryptsetup.c:1621 +#: src/cryptsetup.c:1680 msgid "Enter passphrase to be deleted: " msgstr "Introduzca la frase contraseña que hay que borrar: " -#: src/cryptsetup.c:1702 src/cryptsetup.c:1776 src/cryptsetup.c:1810 +#: src/cryptsetup.c:1761 src/cryptsetup.c:1835 src/cryptsetup.c:1869 msgid "Enter new passphrase for key slot: " msgstr "Introduzca una nueva frase contraseña para la ranura de claves: " -#: src/cryptsetup.c:1793 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1852 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "Introduzca cualquier frase contraseña que exista: " -#: src/cryptsetup.c:1861 +#: src/cryptsetup.c:1920 msgid "Enter passphrase to be changed: " msgstr "Introduzca la frase contraseña que hay que cambiar: " -#: src/cryptsetup.c:1877 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1936 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "Introduzca una nueva frase contraseña: " -#: src/cryptsetup.c:1927 +#: src/cryptsetup.c:1986 msgid "Enter passphrase for keyslot to be converted: " msgstr "Introduzca la frase contraseña para la ranura de claves que se va a convertir: " -#: src/cryptsetup.c:1951 +#: src/cryptsetup.c:2010 msgid "Only one device argument for isLuks operation is supported." msgstr "La operación isLuks solo admite un argumento de dispositivo." -#: src/cryptsetup.c:2001 +#: src/cryptsetup.c:2060 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -2014,12 +2042,12 @@ "sensible que permite el acceso a una partición cifrada sin frase contraseña.\n" "Este volcado debería almacenarse cifrado en un lugar seguro." -#: src/cryptsetup.c:2066 +#: src/cryptsetup.c:2125 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "La ranura de claves %d no contiene clave independiente." -#: src/cryptsetup.c:2072 +#: src/cryptsetup.c:2131 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -2027,30 +2055,40 @@ "El volcado de la cabecera con clave independiente del volumen es información\n" "sensible. Este volcado debería almacenarse cifrado en un lugar seguro." -#: src/cryptsetup.c:2207 src/cryptsetup.c:2228 +#: src/cryptsetup.c:2220 src/cryptsetup.c:2249 +#, c-format +msgid "%s is not active %s device name." +msgstr "%s no es un nombre de dispositivo %s activo." + +#: src/cryptsetup.c:2244 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "%s no es un nombre de dispositivo LUKS activo o falta la cabecera." + +#: src/cryptsetup.c:2282 src/cryptsetup.c:2303 msgid "Option --header-backup-file is required." msgstr "Es necesaria la opción --header-backup-file." -#: src/cryptsetup.c:2258 +#: src/cryptsetup.c:2333 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s no es un dispositivo gestionable por cryptsetup." -#: src/cryptsetup.c:2269 +#: src/cryptsetup.c:2344 #, c-format msgid "Refresh is not supported for device type %s" msgstr "El refresco no está disponible para el tipo de dispositivo %s" -#: src/cryptsetup.c:2311 +#: src/cryptsetup.c:2386 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Tipo de dispositivo de metadatos %s no reconocido." -#: src/cryptsetup.c:2314 +#: src/cryptsetup.c:2389 msgid "Command requires device and mapped name as arguments." msgstr "Esta orden necesita como argumentos el dispositivo y el nombre asociado." -#: src/cryptsetup.c:2336 +#: src/cryptsetup.c:2411 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -2059,95 +2097,95 @@ "Esta operación borrará todas las ranuras de claves en el dispositivo %s.\n" "El dispositivo quedará inutilizable después de esta operación." -#: src/cryptsetup.c:2343 +#: src/cryptsetup.c:2418 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Operación abortada; las ranuras de claves NO estaban limpias.\n" -#: src/cryptsetup.c:2380 +#: src/cryptsetup.c:2457 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Tipo LUKS no válido; solo se admiten luks1 y luks2." -#: src/cryptsetup.c:2398 +#: src/cryptsetup.c:2475 #, c-format msgid "Device is already %s type." msgstr "El dispositivo ya es de tipo %s." -#: src/cryptsetup.c:2403 +#: src/cryptsetup.c:2480 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Esta operación convertirá el formato %s a %s.\n" -#: src/cryptsetup.c:2409 +#: src/cryptsetup.c:2486 msgid "Operation aborted, device was NOT converted.\n" msgstr "Operación abortada; el dispositivo NO estaba convertido.\n" -#: src/cryptsetup.c:2449 +#: src/cryptsetup.c:2526 msgid "Option --priority, --label or --subsystem is missing." msgstr "Falta la opción --priority, --label o --subsystem." -#: src/cryptsetup.c:2483 src/cryptsetup.c:2516 src/cryptsetup.c:2539 +#: src/cryptsetup.c:2560 src/cryptsetup.c:2593 src/cryptsetup.c:2616 #, c-format msgid "Token %d is invalid." msgstr "El «token» %d no es válido." -#: src/cryptsetup.c:2486 src/cryptsetup.c:2542 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2619 #, c-format msgid "Token %d in use." msgstr "El «token» %d está en uso." -#: src/cryptsetup.c:2493 +#: src/cryptsetup.c:2570 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "No se ha podido añadir el «token» %d al llavero luks." -#: src/cryptsetup.c:2502 src/cryptsetup.c:2564 +#: src/cryptsetup.c:2579 src/cryptsetup.c:2641 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "No se ha logrado asignar el «token» %d a la ranura de claves %d." -#: src/cryptsetup.c:2519 +#: src/cryptsetup.c:2596 #, c-format msgid "Token %d is not in use." msgstr "El «token» %d no está en uso." -#: src/cryptsetup.c:2554 +#: src/cryptsetup.c:2631 msgid "Failed to import token from file." msgstr "No se ha podido importar el «token» del fichero." -#: src/cryptsetup.c:2579 +#: src/cryptsetup.c:2656 #, c-format msgid "Failed to get token %d for export." msgstr "No se ha logrado obtener el «token» %d para exportar." -#: src/cryptsetup.c:2594 +#: src/cryptsetup.c:2671 msgid "--key-description parameter is mandatory for token add action." msgstr "El parámetro --key-description es obligatorio para la acción de añadir «token»." -#: src/cryptsetup.c:2600 src/cryptsetup.c:2608 +#: src/cryptsetup.c:2677 src/cryptsetup.c:2685 msgid "Action requires specific token. Use --token-id parameter." msgstr "La acción requiere un «token» específico. Utilice el parámetro --token-id." -#: src/cryptsetup.c:2613 +#: src/cryptsetup.c:2690 #, c-format msgid "Invalid token operation %s." msgstr "Operación de «token» no válida %s." -#: src/cryptsetup.c:2668 +#: src/cryptsetup.c:2745 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "Se ha detectado automáticamente el dispositivo dm activo '%s' para el dispositivo de datos %s.\n" -#: src/cryptsetup.c:2672 +#: src/cryptsetup.c:2749 #, c-format msgid "Device %s is not a block device.\n" msgstr "El dispositivo %s no es un dispositivo de bloques.\n" -#: src/cryptsetup.c:2674 +#: src/cryptsetup.c:2751 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "No se han podido detectar automáticamente los propietarios del dispositivo %s." -#: src/cryptsetup.c:2676 +#: src/cryptsetup.c:2753 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2161,233 +2199,238 @@ "activado. Para realizar recifrado en modo «online», utilice en su lugar\n" "el parámetro --active-name.\n" -#: src/cryptsetup.c:2756 +#: src/cryptsetup.c:2833 msgid "Invalid LUKS device type." msgstr "Tipo de dispositivo LUKS no válido." -#: src/cryptsetup.c:2761 +#: src/cryptsetup.c:2838 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." msgstr "El cifrado sin cabecera separada (--header) no es posible sin reducción del tamaño del dispositivo de datos (--reduce-device-size)." -#: src/cryptsetup.c:2766 +#: src/cryptsetup.c:2843 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "El desplazamiento de datos solicitado debe ser menor o igual que la mitad del parámetro --reduce-device-size." -#: src/cryptsetup.c:2775 +#: src/cryptsetup.c:2852 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "Ajustando el valor de --reduce-device-size al doble de --offset % (sectores).\n" -#: src/cryptsetup.c:2779 +#: src/cryptsetup.c:2856 msgid "Encryption is supported only for LUKS2 format." msgstr "El cifrado solo puede hacerse con formato LUKS2." -#: src/cryptsetup.c:2801 +#: src/cryptsetup.c:2879 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "Se ha detectado un dispositivo LUKS en %s. ¿Desea cifrar de nuevo ese dispositivo LUKS?" -#: src/cryptsetup.c:2816 +#: src/cryptsetup.c:2894 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "El fichero de cabecera temporal %s ya existe. Se aborta." -#: src/cryptsetup.c:2818 src/cryptsetup.c:2825 +#: src/cryptsetup.c:2896 src/cryptsetup.c:2903 #, c-format msgid "Cannot create temporary header file %s." msgstr "No se puede crear el fichero de cabecera temporal %s." -#: src/cryptsetup.c:2889 +#: src/cryptsetup.c:2970 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "%s/%s ahora está activo y preparado para cifrado «online».\n" -#: src/cryptsetup.c:3053 src/cryptsetup.c:3059 +#: src/cryptsetup.c:3134 src/cryptsetup.c:3140 msgid "Not enough free keyslots for reencryption." msgstr "No hay suficientes ranuras de claves para el recifrado." -#: src/cryptsetup.c:3079 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3160 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "El fichero de claves solo puede usarse con --key-slot o con una sola ranura de claves activa exactamente." -#: src/cryptsetup.c:3088 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3169 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "Introduzca la frase contraseña para la ranura de claves %d: " -#: src/cryptsetup.c:3096 +#: src/cryptsetup.c:3177 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "Introduzca la frase contraseña para la ranura de claves %u: " -#: src/cryptsetup.c:3263 +#: src/cryptsetup.c:3222 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "Cambiando el algoritmo de cifrado de datos a %s.\n" + +#: src/cryptsetup.c:3355 msgid "Command requires device as argument." msgstr "Esta orden necesita un dispositivo como argumento." -#: src/cryptsetup.c:3285 +#: src/cryptsetup.c:3377 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "Actualmente solo se admite el formato LUKS2. Utilice la herramienta cryptsetup-reencrypt para LUKS1." -#: src/cryptsetup.c:3297 +#: src/cryptsetup.c:3389 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "Ya hay un recifrado «offline» heredado en proceso. Utilice la utilidad cryptsetup-reencrypt." -#: src/cryptsetup.c:3307 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3399 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "El recifrado de dispositivo con perfil de integridad no está admitido." -#: src/cryptsetup.c:3315 +#: src/cryptsetup.c:3407 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "El recifrado LUKS2 ya está inicializado. Se aborta la operación." -#: src/cryptsetup.c:3319 +#: src/cryptsetup.c:3411 msgid "LUKS2 device is not in reencryption." msgstr "El dispositivo LUKS2 no está en recifrado." -#: src/cryptsetup.c:3346 +#: src/cryptsetup.c:3438 msgid " [--type ] []" msgstr " [--type []" -#: src/cryptsetup.c:3346 src/veritysetup.c:394 src/integritysetup.c:480 +#: src/cryptsetup.c:3438 src/veritysetup.c:408 src/integritysetup.c:494 msgid "open device as " msgstr "abrir el dispositivo como " -#: 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:3439 src/cryptsetup.c:3440 src/cryptsetup.c:3441 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:495 +#: src/integritysetup.c:496 msgid "" msgstr "" -#: src/cryptsetup.c:3347 src/veritysetup.c:395 src/integritysetup.c:481 +#: src/cryptsetup.c:3439 src/veritysetup.c:409 src/integritysetup.c:495 msgid "close device (remove mapping)" msgstr "cerrar dispositivo (eliminar asociación)" -#: src/cryptsetup.c:3348 +#: src/cryptsetup.c:3440 msgid "resize active device" msgstr "cambiar el tamaño del dispositivo activo" -#: src/cryptsetup.c:3349 +#: src/cryptsetup.c:3441 msgid "show device status" msgstr "mostrar el estado del dispositivo" -#: src/cryptsetup.c:3350 +#: src/cryptsetup.c:3442 msgid "[--cipher ]" msgstr "[--cypher ]" -#: src/cryptsetup.c:3350 +#: src/cryptsetup.c:3442 msgid "benchmark cipher" msgstr "algoritmo de cifrado para pruebas" -#: 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:3443 src/cryptsetup.c:3444 src/cryptsetup.c:3445 +#: src/cryptsetup.c:3446 src/cryptsetup.c:3447 src/cryptsetup.c:3454 +#: src/cryptsetup.c:3455 src/cryptsetup.c:3456 src/cryptsetup.c:3457 +#: src/cryptsetup.c:3458 src/cryptsetup.c:3459 src/cryptsetup.c:3460 +#: src/cryptsetup.c:3461 src/cryptsetup.c:3462 msgid "" msgstr "" -#: src/cryptsetup.c:3351 +#: src/cryptsetup.c:3443 msgid "try to repair on-disk metadata" msgstr "intentar reparar metadatos en disco" -#: src/cryptsetup.c:3352 +#: src/cryptsetup.c:3444 msgid "reencrypt LUKS2 device" msgstr "recifrar dispositivo LUKS2" -#: src/cryptsetup.c:3353 +#: src/cryptsetup.c:3445 msgid "erase all keyslots (remove encryption key)" msgstr "borrar todas las ranuras de claves (eliminar clave de cifrado)" -#: src/cryptsetup.c:3354 +#: src/cryptsetup.c:3446 msgid "convert LUKS from/to LUKS2 format" msgstr "convertir formato LUKS de/en LUKS2" -#: src/cryptsetup.c:3355 +#: src/cryptsetup.c:3447 msgid "set permanent configuration options for LUKS2" msgstr "establecer opciones de configuración permanentes para LUKS2" -#: src/cryptsetup.c:3356 src/cryptsetup.c:3357 +#: src/cryptsetup.c:3448 src/cryptsetup.c:3449 msgid " []" msgstr " []" -#: src/cryptsetup.c:3356 +#: src/cryptsetup.c:3448 msgid "formats a LUKS device" msgstr "da formato a un dispositivo LUKS" -#: src/cryptsetup.c:3357 +#: src/cryptsetup.c:3449 msgid "add key to LUKS device" msgstr "añadir clave a un dispositivo LUKS" -#: src/cryptsetup.c:3358 src/cryptsetup.c:3359 src/cryptsetup.c:3360 +#: src/cryptsetup.c:3450 src/cryptsetup.c:3451 src/cryptsetup.c:3452 msgid " []" msgstr " []" -#: src/cryptsetup.c:3358 +#: src/cryptsetup.c:3450 msgid "removes supplied key or key file from LUKS device" msgstr "elimina la clave suministrada o el fichero de claves del dispositivo LUKS" -#: src/cryptsetup.c:3359 +#: src/cryptsetup.c:3451 msgid "changes supplied key or key file of LUKS device" msgstr "cambia la clave suministrada o el fichero de claves del dispositivo LUKS" -#: src/cryptsetup.c:3360 +#: src/cryptsetup.c:3452 msgid "converts a key to new pbkdf parameters" msgstr "convierte una clave a los nuevos parámetros pbkdf" -#: src/cryptsetup.c:3361 +#: src/cryptsetup.c:3453 msgid " " msgstr " " -#: src/cryptsetup.c:3361 +#: src/cryptsetup.c:3453 msgid "wipes key with number from LUKS device" msgstr "borra la clave con el número del dispositivo LUKS" -#: src/cryptsetup.c:3362 +#: src/cryptsetup.c:3454 msgid "print UUID of LUKS device" msgstr "imprimir el UUID del dispositivo LUKS" -#: src/cryptsetup.c:3363 +#: src/cryptsetup.c:3455 msgid "tests for LUKS partition header" msgstr "comprueba si tiene cabecera de partición LUKS" -#: src/cryptsetup.c:3364 +#: src/cryptsetup.c:3456 msgid "dump LUKS partition information" msgstr "volcar información sobre la partición LUKS" -#: src/cryptsetup.c:3365 +#: src/cryptsetup.c:3457 msgid "dump TCRYPT device information" msgstr "volcar información sobre el dispositivo TCRYPT" -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3458 msgid "dump BITLK device information" msgstr "volcar información sobre el dispositivo BITLK" -#: src/cryptsetup.c:3367 +#: src/cryptsetup.c:3459 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "Suspender el dispositivo LUKS y limpiar la clave (todas las entradas/salidas congeladas)." -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3460 msgid "Resume suspended LUKS device" msgstr "Reanudar el dispositivo LUKS suspendido." -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3461 msgid "Backup LUKS device header and keyslots" msgstr "Hacer copia de seguridad de la cabecera y de las ranuras de claves del dispositivo LUKS" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3462 msgid "Restore LUKS device header and keyslots" msgstr "Restaurar la cabecera y las ranuras de claves del dispositivo LUKS" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3463 msgid " " msgstr " " -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3463 msgid "Manipulate LUKS2 tokens" msgstr "Manipular «tokens» LUKS2" -#: src/cryptsetup.c:3389 src/veritysetup.c:412 src/integritysetup.c:498 +#: src/cryptsetup.c:3481 src/veritysetup.c:426 src/integritysetup.c:512 msgid "" "\n" " is one of:\n" @@ -2395,7 +2438,7 @@ "\n" " es una de:\n" -#: src/cryptsetup.c:3395 +#: src/cryptsetup.c:3487 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2407,7 +2450,7 @@ "\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3399 +#: src/cryptsetup.c:3491 #, c-format msgid "" "\n" @@ -2422,7 +2465,7 @@ " es el número de la ranura de claves que se va a modificar\n" " fichero de claves opcional para la nueva clave para la acción 'luksAddKey'\n" -#: src/cryptsetup.c:3406 +#: src/cryptsetup.c:3498 #, c-format msgid "" "\n" @@ -2431,7 +2474,7 @@ "\n" "El formato de metadatos predefinido de fábrica es %s (para la acción luksFormat).\n" -#: src/cryptsetup.c:3411 +#: src/cryptsetup.c:3503 #, c-format msgid "" "\n" @@ -2448,7 +2491,7 @@ "PBKDF predefinido para LUKS2: %s\n" "\tTiempo de iteración: %d, Memoria requerida: %dkB, hilos en paralelo: %d\n" -#: src/cryptsetup.c:3422 +#: src/cryptsetup.c:3514 #, c-format msgid "" "\n" @@ -2463,443 +2506,451 @@ "\tsin cifrado: %s, Clave: %d bits, Contraseña «hashing»: %s\n" "\tLUKS: %s, Clave: %d bits, «hashing» de la cabecera LUKS: %s, Generador de números aleatorios: %s\n" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3523 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: El tamaño de clave predefinido con modo XTS (dos claves internas) va a ser duplicado.\n" -#: src/cryptsetup.c:3447 src/veritysetup.c:569 src/integritysetup.c:642 +#: src/cryptsetup.c:3541 src/veritysetup.c:587 src/integritysetup.c:664 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: necesita %s como argumentos" -#: src/cryptsetup.c:3480 src/veritysetup.c:457 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3573 src/veritysetup.c:472 src/integritysetup.c:552 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "Mostrar este mensaje de ayuda" -#: src/cryptsetup.c:3481 src/veritysetup.c:458 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3574 src/veritysetup.c:473 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "Mostrar brevemente cómo se usa" -#: src/cryptsetup.c:3482 src/veritysetup.c:459 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3575 src/veritysetup.c:474 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "Imprimir versión del paquete" -#: src/cryptsetup.c:3486 src/veritysetup.c:463 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3579 src/veritysetup.c:478 src/integritysetup.c:558 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "Opciones de ayuda:" -#: src/cryptsetup.c:3487 src/veritysetup.c:464 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3580 src/veritysetup.c:479 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "Muestra mensajes de error más detallados" -#: src/cryptsetup.c:3488 src/veritysetup.c:465 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3581 src/veritysetup.c:480 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "Mostrar mensajes de depuración" -#: src/cryptsetup.c:3489 +#: src/cryptsetup.c:3582 msgid "Show debug messages including JSON metadata" msgstr "Mostrar mensajes de depuración incluidos los metadatos JSON" -#: src/cryptsetup.c:3490 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3583 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "Algoritmo de cifrado utilizado para cifrar el disco (ver /proc/crypto)" -#: src/cryptsetup.c:3491 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3584 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "Algoritmo «hash» utilizado para crear la clave de cifrado a partir de la frase contraseña" -#: src/cryptsetup.c:3492 +#: src/cryptsetup.c:3585 msgid "Verifies the passphrase by asking for it twice" msgstr "Verifica la frase contraseña preguntándola dos veces" -#: src/cryptsetup.c:3493 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3586 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "Leer la clave de un fichero." -#: src/cryptsetup.c:3494 +#: src/cryptsetup.c:3587 msgid "Read the volume (master) key from file." msgstr "Leer la clave (maestra) del volumen desde fichero." -#: src/cryptsetup.c:3495 +#: src/cryptsetup.c:3588 msgid "Dump volume (master) key instead of keyslots info" msgstr "Volcar la clave (maestra) del volumen en lugar de la información de las ranuras de claves." -#: src/cryptsetup.c:3496 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3589 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "Tamaño de la clave de cifrado" -#: 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:3589 src/cryptsetup.c:3652 src/integritysetup.c:578 +#: src/integritysetup.c:582 src/integritysetup.c:586 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "BITS" -#: src/cryptsetup.c:3497 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3590 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "Limita la lectura desde fichero de claves" -#: 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:3590 src/cryptsetup.c:3591 src/cryptsetup.c:3592 +#: src/cryptsetup.c:3593 src/cryptsetup.c:3596 src/cryptsetup.c:3649 +#: src/cryptsetup.c:3650 src/cryptsetup.c:3658 src/cryptsetup.c:3659 +#: src/veritysetup.c:483 src/veritysetup.c:484 src/veritysetup.c:485 +#: src/veritysetup.c:488 src/veritysetup.c:489 src/integritysetup.c:567 +#: src/integritysetup.c:573 src/integritysetup.c:574 +#: src/cryptsetup_reencrypt.c:1653 src/cryptsetup_reencrypt.c:1654 +#: src/cryptsetup_reencrypt.c:1655 src/cryptsetup_reencrypt.c:1656 msgid "bytes" msgstr "bytes" -#: src/cryptsetup.c:3498 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3591 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "Número de bytes que hay que saltar en el fichero de claves" -#: src/cryptsetup.c:3499 +#: src/cryptsetup.c:3592 msgid "Limits the read from newly added keyfile" msgstr "Limita la lectura desde un fichero de claves recién añadido" -#: src/cryptsetup.c:3500 +#: src/cryptsetup.c:3593 msgid "Number of bytes to skip in newly added keyfile" msgstr "Número de bytes que hay que saltar en el fichero de claves recién añadido" -#: src/cryptsetup.c:3501 +#: src/cryptsetup.c:3594 msgid "Slot number for new key (default is first free)" msgstr "Número de ranura para la nueva clave (el primero libre es lo predefinido)" -#: src/cryptsetup.c:3502 +#: src/cryptsetup.c:3595 msgid "The size of the device" msgstr "Tamaño del dispositivo" -#: 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:3595 src/cryptsetup.c:3597 src/cryptsetup.c:3598 +#: src/cryptsetup.c:3604 src/integritysetup.c:568 src/integritysetup.c:575 msgid "SECTORS" msgstr "SECTORES" -#: src/cryptsetup.c:3503 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3596 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "Utilizar solamente el tamaño especificado de dispositivo (ignorar el resto del dispositivo). ¡PELIGROSO!" -#: src/cryptsetup.c:3504 +#: src/cryptsetup.c:3597 msgid "The start offset in the backend device" msgstr "iPosición de comienzo en el dispositivo «backend»" -#: src/cryptsetup.c:3505 +#: src/cryptsetup.c:3598 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Cuántos sectores de los datos cifrados hay que saltar al principio" -#: src/cryptsetup.c:3506 +#: src/cryptsetup.c:3599 msgid "Create a readonly mapping" msgstr "Crear una asignación alatoria" -#: src/cryptsetup.c:3507 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3600 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "No pedir confirmación" -#: src/cryptsetup.c:3508 +#: src/cryptsetup.c:3601 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Tiempo de espera máximo para petición interactiva de frase contraseña (en segundos)" -#: src/cryptsetup.c:3508 src/cryptsetup.c:3509 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3601 src/cryptsetup.c:3602 src/integritysetup.c:562 +#: 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:3602 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "Actualización de la línea de progreso (en segundos)" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "Con qué frecuencia se puede volver a intentar introducir la frase contraseña" -#: src/cryptsetup.c:3511 +#: src/cryptsetup.c:3604 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Alinear los datos a bordes de sector - para luksFormat" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3605 msgid "File with LUKS header and keyslots backup" msgstr "Fichero con copia de seguridad de cabecera LUKS y de ranuras de clave." -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3606 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "Usar /dev/random para generar la clave del volumen." -#: src/cryptsetup.c:3514 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3607 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "Usar /dev/urandom para generar la clave del volumen." -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3608 msgid "Share device with another non-overlapping crypt segment" msgstr "Compartir dispositivo con otro segmento cifrado no solapado." -#: src/cryptsetup.c:3516 src/veritysetup.c:477 +#: src/cryptsetup.c:3609 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "UUID del dispositivo que se va a usar" -#: src/cryptsetup.c:3517 src/integritysetup.c:579 +#: src/cryptsetup.c:3610 src/integritysetup.c:598 msgid "Allow discards (aka TRIM) requests for device" msgstr "Permitir solicitudes de descarte (también llamadas TRIM) para el dispositivo" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3611 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "Dispositivo o fichero con cabecera LUKS separada" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3612 msgid "Do not activate device, just check passphrase" msgstr "No activar dispositivo; comprobar frase contraseña solamente" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3613 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Utilizar cabecera oculta (dispositivo TCRYPT oculto)" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3614 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "El dispositivo es una unidad con sistema TCRYPT (con cargador de arranque)" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3615 msgid "Use backup (secondary) TCRYPT header" msgstr "Utilizar la cabecera TCRYPT de respaldo (secundaria)" -#: src/cryptsetup.c:3523 +#: src/cryptsetup.c:3616 msgid "Scan also for VeraCrypt compatible device" msgstr "Explorar también si es un dispositivo compatible con VeraCrypt" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3617 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Multiplicador de iteración personal para dispositivo compatible con VeraCrypt" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3618 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Consulta el multiplicador de iteración personal para dispositivo compatible con VeraCrypt" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3619 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "Tipo de metadatos del dispositivo: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3527 +#: src/cryptsetup.c:3620 msgid "Disable password quality check (if enabled)" msgstr "Desactivar la comprobación de la calidad de la contraseña (si estaba activada)" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3621 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Utilizar la opción de compatibilidad de rendimiento same_cpu_crypt de dm-crypt" -#: src/cryptsetup.c:3529 +#: src/cryptsetup.c:3622 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Utilizar la opción de compatibilidad de rendimiento submit_from_crypt_cpus de dm-crypt" -#: src/cryptsetup.c:3530 +#: src/cryptsetup.c:3623 +msgid "Bypass dm-crypt workqueue and process read requests synchronously" +msgstr "Obviar la cola de trabajo de dm-crypt y procesar las peticiones de lectura de forma síncrona" + +#: src/cryptsetup.c:3624 +msgid "Bypass dm-crypt workqueue and process write requests synchronously" +msgstr "Obviar la cola de trabajo de dm-crypt y procesar las peticiones de escritura de forma síncrona" + +#: src/cryptsetup.c:3625 msgid "Device removal is deferred until the last user closes it" msgstr "La eliminación del dispositivo está diferida hasta que el último usuario lo cierre" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3626 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "Utilizar un bloqueo global para serializar PBKDF estricto en memoria (solución OOM)" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3627 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "Tiempo de iteración PBKDF para LUKS (en ms)" -#: src/cryptsetup.c:3532 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3627 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "ms" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3628 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "Algoritmo PBKDF (para LUKS2): argon2i, argon2id, pbkdf2" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3629 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "Límite del coste de memoria PBKDF" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3629 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "kilobytes" -#: src/cryptsetup.c:3535 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3630 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "Coste del paralelismo PBKDF" -#: src/cryptsetup.c:3535 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3630 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "hilos" -#: src/cryptsetup.c:3536 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3631 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "Coste de las iteraciones PBKDF (forzado, desactiva el banco de pruebas)" -#: src/cryptsetup.c:3537 +#: src/cryptsetup.c:3632 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Prioridad de la ranura de claves: ignorada, normal, preferente" -#: src/cryptsetup.c:3538 +#: src/cryptsetup.c:3633 msgid "Disable locking of on-disk metadata" msgstr "Desactiva el bloqueo de metadatos en disco" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3634 msgid "Disable loading volume keys via kernel keyring" msgstr "Desactiva la carga de las claves del volumen mediante el llavero del núcleo" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3635 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Algoritmo de integridad de datos (solo LUKS2)" -#: src/cryptsetup.c:3541 src/integritysetup.c:573 +#: src/cryptsetup.c:3636 src/integritysetup.c:589 msgid "Disable journal for integrity device" msgstr "Desactiva el diario para dispositivo de integridad" -#: src/cryptsetup.c:3542 src/integritysetup.c:547 +#: src/cryptsetup.c:3637 src/integritysetup.c:563 msgid "Do not wipe device after format" msgstr "No limpiar dispositivo después de dar formato" -#: src/cryptsetup.c:3543 src/integritysetup.c:577 +#: src/cryptsetup.c:3638 src/integritysetup.c:593 msgid "Use inefficient legacy padding (old kernels)" msgstr "Utilizar relleno obsoleto ineficiente (núcleos antiguos)" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3639 msgid "Do not ask for passphrase if activation by token fails" msgstr "No pedir frase de paso si falla la activación por «token»" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3640 msgid "Token number (default: any)" msgstr "Número de «token» (predefinido: cualquiera)" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3641 msgid "Key description" msgstr "Descripción de la clave" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3642 msgid "Encryption sector size (default: 512 bytes)" msgstr "Tamaño de sector de cifrado (predeterminado: 512 bytes)" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3643 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "Utiliza IV contado en tamaño de sector (no en unidades de 512 bytes)" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3644 msgid "Set activation flags persistent for device" msgstr "Establecer indicadores de activación persistentes para el dispositivo" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3645 msgid "Set label for the LUKS2 device" msgstr "Poner etiqueta al dispositivo LUKS2" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3646 msgid "Set subsystem label for the LUKS2 device" msgstr "Poner etiqueta de subsistema al dispositivo LUKS2" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3647 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "Crear o volcar ranura de claves LUKS2 independiente (sin segmento de datos asignado)" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3648 msgid "Read or write the json from or to a file" msgstr "Leer o escribir el json de o en un fichero" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3649 msgid "LUKS2 header metadata area size" msgstr "Tamaño de la zona de metadatos de la cabecera LUKS2" -#: src/cryptsetup.c:3555 +#: src/cryptsetup.c:3650 msgid "LUKS2 header keyslots area size" msgstr "Tamaño de la zona de ranuras de clave de la cabecera LUKS2" -#: src/cryptsetup.c:3556 +#: src/cryptsetup.c:3651 msgid "Refresh (reactivate) device with new parameters" msgstr "Refrescar (reactivar) el dispositivo con los nuevos parámetros" -#: src/cryptsetup.c:3557 +#: src/cryptsetup.c:3652 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "Ranura de clave de LUKS2: Tamaño de la clave de cifrado" -#: src/cryptsetup.c:3558 +#: src/cryptsetup.c:3653 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "Ranura de clave de LUKS2: El algoritmo de cifrado utilizado para el cifrado de ranuras de clave" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3654 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "Crifrar el dispositivo LUKS2 (cifrado in situ)." -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3655 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "Descifrar el dispositivo LUKS2 (elimina cifrado)" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3656 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "Inicializar solamente recifrado LUKS2 de los metadatos." -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3657 msgid "Resume initialized LUKS2 reencryption only." msgstr "Reanudar solamente recifrado LUKS2 inicializado." -#: src/cryptsetup.c:3563 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3658 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "Reducir el tamaño del dispositivo de datos (mover la posición de los datos). ¡PELIGROSO!" -#: src/cryptsetup.c:3564 +#: src/cryptsetup.c:3659 msgid "Maximal reencryption hotzone size." msgstr "Tamaño de zona activa de recifrado máximo." -#: src/cryptsetup.c:3565 +#: src/cryptsetup.c:3660 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "Tipo de resiliencia de zona activa de recifrado (checksum,journal,none)" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3661 msgid "Reencryption hotzone checksums hash" msgstr "«Hash» de suma de comprobación de zona activa de recifrado" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3662 msgid "Override device autodetection of dm device to be reencrypted" msgstr "Anular la autodetección de dispositivos del dispositivo dm que se va a recifrar" -#: src/cryptsetup.c:3583 src/veritysetup.c:499 src/integritysetup.c:595 +#: src/cryptsetup.c:3678 src/veritysetup.c:515 src/integritysetup.c:614 msgid "[OPTION...] " msgstr "[OPCIÓN...] " -#: src/cryptsetup.c:3634 src/veritysetup.c:533 src/integritysetup.c:606 +#: src/cryptsetup.c:3733 src/veritysetup.c:551 src/integritysetup.c:625 msgid "Argument missing." msgstr "El argumento no se ha proporcionado." -#: src/cryptsetup.c:3703 src/veritysetup.c:564 src/integritysetup.c:637 +#: src/cryptsetup.c:3803 src/veritysetup.c:582 src/integritysetup.c:659 msgid "Unknown action." msgstr "Acción desconocida." -#: src/cryptsetup.c:3713 +#: src/cryptsetup.c:3813 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "Las opciones --refresh y --test-passphrase son mutuamente excluyentes." -#: src/cryptsetup.c:3718 +#: src/cryptsetup.c:3818 msgid "Option --deferred is allowed only for close command." msgstr "La opción --deferred solo se permite con la orden de cerrar." -#: src/cryptsetup.c:3723 +#: src/cryptsetup.c:3823 msgid "Option --shared is allowed only for open of plain device." msgstr "La opción --shared solo se permite para abrir dispositivos no cifrados." -#: src/cryptsetup.c:3728 src/integritysetup.c:654 +#: src/cryptsetup.c:3828 src/integritysetup.c:676 msgid "Option --allow-discards is allowed only for open operation." msgstr "La opción --allow-discards solo se permite para la operación de abrir." -#: src/cryptsetup.c:3733 +#: src/cryptsetup.c:3833 msgid "Option --persistent is allowed only for open operation." msgstr "La opción --persistent solo se permite para la operación de abrir." -#: src/cryptsetup.c:3738 +#: src/cryptsetup.c:3838 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "La opción --serialize-memory-hard-pbkdf solo se permite para la operación de abrir." -#: src/cryptsetup.c:3743 +#: src/cryptsetup.c:3843 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "La opción --persistent no se permite con --test-passphrase." -#: src/cryptsetup.c:3753 +#: src/cryptsetup.c:3853 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2907,255 +2958,259 @@ "La opción --key-size solo se permite con las acciones luksFormat, luksAddKey,\n" "open y benchmark. Para limitar la lectura del fichero de claves, utilizar --keyfile-size=(bytes)." -#: src/cryptsetup.c:3759 +#: src/cryptsetup.c:3859 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "La opción --integrity solo se permite con luksFormat (LUKS2)." -#: src/cryptsetup.c:3764 +#: src/cryptsetup.c:3864 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "La opción --integrity-no-wipe solo puede usarse para la acción de formato con extensión de integridad." -#: src/cryptsetup.c:3770 +#: src/cryptsetup.c:3870 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "Las opciones --label y --subsystem solo se permiten con las operaciones luksFormat y config LUKS2." -#: src/cryptsetup.c:3776 +#: src/cryptsetup.c:3876 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "La opción --test-passphrase solo se permite para abrir dispositivos LUKS, TCRYPT y BITLK." -#: src/cryptsetup.c:3781 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3881 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "El tamaño de clave debe ser un múltiplo de 8 bits" -#: src/cryptsetup.c:3787 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3887 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "La ranura de claves no es válida." -#: src/cryptsetup.c:3794 +#: src/cryptsetup.c:3894 msgid "Option --key-file takes precedence over specified key file argument." msgstr "La opción --key-file tiene precedencia sobre el argumento de fichero de claves especificado." -#: src/cryptsetup.c:3801 src/veritysetup.c:576 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3901 src/veritysetup.c:594 src/integritysetup.c:685 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "No se permiten números negativos para esta opción." -#: src/cryptsetup.c:3805 +#: src/cryptsetup.c:3905 msgid "Only one --key-file argument is allowed." msgstr "Solo se permite un argumento --key-file." -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3909 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "Solo se permite una de las opciones --use-[u]random." -#: src/cryptsetup.c:3813 +#: src/cryptsetup.c:3913 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "La opción --use-[u]random solo se permite con luksFormat." -#: src/cryptsetup.c:3817 +#: src/cryptsetup.c:3917 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "La opción --uuid solo se permite con luksFormat luksUUID." -#: src/cryptsetup.c:3821 +#: src/cryptsetup.c:3921 msgid "Option --align-payload is allowed only for luksFormat." msgstr "La opción --align-payload solo se permite con luksFormat." -#: src/cryptsetup.c:3825 +#: src/cryptsetup.c:3925 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Las opciones --luks2-metadata-size y --opt-luks2-keyslots-size solo se permiten para luksFormat con LUKS2." -#: src/cryptsetup.c:3830 +#: src/cryptsetup.c:3930 msgid "Invalid LUKS2 metadata size specification." msgstr "La especificación del tamaño de los metadatos LUKS2 no es válida." -#: src/cryptsetup.c:3834 +#: src/cryptsetup.c:3934 msgid "Invalid LUKS2 keyslots size specification." msgstr "La especificación del tamaño de las ranuras de claves LUKS2 no es válida." -#: src/cryptsetup.c:3838 +#: src/cryptsetup.c:3938 msgid "Options --align-payload and --offset cannot be combined." msgstr "Las opciones --align-payload y --offset no pueden combinarse." -#: src/cryptsetup.c:3844 +#: src/cryptsetup.c:3944 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "La opción --skip solo está disponible para abrir dispositivos no cifrados y «loopaes»." -#: src/cryptsetup.c:3851 +#: src/cryptsetup.c:3951 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "La opción --offset solo está disponible para abrir dispositivos no cifrados y «loopaes», «luksFormat» y recifrado de dispositivo." -#: src/cryptsetup.c:3857 +#: src/cryptsetup.c:3957 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "La opción --tcrypt-hidden o --tcrypt-system o --tcrypt-backup solo está disponible para dispositivos TCRYPT." -#: src/cryptsetup.c:3862 +#: src/cryptsetup.c:3962 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "La opción --tcrypt-hidden no puede combinarse con --allow-discards." -#: src/cryptsetup.c:3867 +#: src/cryptsetup.c:3967 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "La opción --veracrypt solo está disponible para dispositivos TCRYPT." -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3973 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "Argumento no válido para el parámetro --veracrypt-pim supplied." -#: src/cryptsetup.c:3877 +#: src/cryptsetup.c:3977 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "La opción --veracrypt-pim solo está disponible para dispositivos compatibles con VeraCrypt." -#: src/cryptsetup.c:3885 +#: src/cryptsetup.c:3985 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "La opción --veracrypt-query-pim solo está disponible para dispositivos compatibles con VeraCrypt." -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:3989 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "Las opciones --veracrypt-pim y --veracrypt-query-pim son mutuamente excluyentes." -#: src/cryptsetup.c:3896 +#: src/cryptsetup.c:3996 msgid "Option --priority can be only ignore/normal/prefer." msgstr "La opción --priority solo puede ser ignore/normal/prefer." -#: src/cryptsetup.c:3901 src/cryptsetup.c:3939 +#: src/cryptsetup.c:4001 src/cryptsetup.c:4039 msgid "Keyslot specification is required." msgstr "Se requiere especificación de ranura de claves." -#: src/cryptsetup.c:3906 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "La función de derivación de clave basada en contraseña (PBKDF) solo puede ser pbkdf2 o argon2i/argon2id." -#: src/cryptsetup.c:3911 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4011 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "Las iteraciones forzadas de PBKDF no pueden combinarse con la opción de tiempo de iteración." -#: src/cryptsetup.c:3917 +#: src/cryptsetup.c:4017 msgid "Sector size option is not supported for this command." msgstr "La opción de tamaño de sector no está disponible para esta orden." -#: src/cryptsetup.c:3929 +#: src/cryptsetup.c:4029 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." msgstr "La opción de sectores IV grandes solo se admite para abrir dispositivo de tipo plano con tamaño de sector mayor de 512 bytes." -#: src/cryptsetup.c:3934 +#: src/cryptsetup.c:4034 msgid "Key size is required with --unbound option." msgstr "El tamaño de la clave es requerido con la opción --unbound." -#: src/cryptsetup.c:3944 +#: src/cryptsetup.c:4044 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "La opción --unbound solo puede utilizarse con las acciones luksAddKey y luksDump." -#: src/cryptsetup.c:3949 +#: src/cryptsetup.c:4049 msgid "Option --refresh may be used only with open action." msgstr "La opción --refresh solo puede utilizarse con la acción de abrir." -#: src/cryptsetup.c:3960 +#: src/cryptsetup.c:4060 msgid "Cannot disable metadata locking." msgstr "No se puede desactivar el bloqueo de metadatos." -#: src/cryptsetup.c:3970 +#: src/cryptsetup.c:4071 msgid "Invalid max reencryption hotzone size specification." msgstr "La especificación del tamaño máximo de zona activa del dispositivo no es válida." -#: src/cryptsetup.c:3978 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4079 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "La especificación del tamaño del dispositivo no es válida." -#: src/cryptsetup.c:3981 +#: src/cryptsetup.c:4082 msgid "Maximum device reduce size is 1 GiB." msgstr "El tamaño máximo de reducción del dispositivo es de 1 GiB." -#: src/cryptsetup.c:3984 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4085 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "El tamaño de reducción debe ser múltiplo de sectores de 512 bytes." -#: src/cryptsetup.c:3989 +#: src/cryptsetup.c:4090 msgid "Invalid data size specification." msgstr "La especificación del tamaño de los datos no es válida." -#: src/cryptsetup.c:3994 +#: src/cryptsetup.c:4095 msgid "Reduce size overflow." msgstr "Desbordamiento del tamaño de la reducción." -#: src/cryptsetup.c:3998 +#: src/cryptsetup.c:4099 msgid "LUKS2 decryption requires option --header." msgstr "El descifrado LUKS2 requiere la opción --header." -#: src/cryptsetup.c:4002 +#: src/cryptsetup.c:4103 msgid "Device size must be multiple of 512 bytes sector." msgstr "El tamaño del dispositivo debe ser múltiplo de sectores de 512 bytes." -#: src/cryptsetup.c:4006 +#: src/cryptsetup.c:4107 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "Las opciones --reduce-device-size y --data-size no pueden combinarse." -#: src/cryptsetup.c:4010 +#: src/cryptsetup.c:4111 msgid "Options --device-size and --size cannot be combined." msgstr "Las opciones --device-size y --size no pueden combinarse." -#: src/veritysetup.c:66 +#: src/cryptsetup.c:4115 +msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." +msgstr "Las opciones --keyslot-cipher y --keyslot-key-size deben utilizarse juntas." + +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "La cadena «salt» especificada no es válida." -#: src/veritysetup.c:97 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "No se puede crear la imagen «hash» %s para escribir." -#: src/veritysetup.c:107 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "No se puede crear la imagen FEC %s para escribir." -#: src/veritysetup.c:179 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "La cadena «hash» raíz especificada no es válida." -#: src/veritysetup.c:187 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "Fichero de firmas inválido %s." -#: src/veritysetup.c:194 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "No se puede leer el fichero de firmas %s." -#: src/veritysetup.c:392 +#: src/veritysetup.c:406 msgid " " msgstr " " -#: src/veritysetup.c:392 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:493 msgid "format device" msgstr "dar formato al dispositivo" -#: src/veritysetup.c:393 +#: src/veritysetup.c:407 msgid " " msgstr " <«hash»_raíz>" -#: src/veritysetup.c:393 +#: src/veritysetup.c:407 msgid "verify device" msgstr "verificar dispositivo" -#: src/veritysetup.c:394 +#: src/veritysetup.c:408 msgid " " msgstr " <«hash»_raíz>" -#: src/veritysetup.c:396 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:496 msgid "show active device status" msgstr "mostrar el estado del dispositivo activo" -#: src/veritysetup.c:397 +#: src/veritysetup.c:411 msgid "" msgstr "" -#: src/veritysetup.c:397 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:497 msgid "show on-disk information" msgstr "mostrar información sobre el disco" -#: src/veritysetup.c:416 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3170,7 +3225,7 @@ " es el dispositivo que contiene los datos de verificación\n" "<«hash»_raíz> «hash» del nodo raíz en «dispositivo—«hash»>\n" -#: src/veritysetup.c:423 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3181,126 +3236,134 @@ "Parámetros dm-verity predefinidos de fábrica:\n" "\tAlgoritmo «hash»: %s, Bloque de datos (bytes): %u, Bloque «hash» (bytes): %u, Tamaño de «salt»: %u, Formato «hash»: %u\n" -#: src/veritysetup.c:466 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "No utilizar superbloque «verity»" -#: src/veritysetup.c:467 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Tipo de formato (1 - normal, 0 - Chrome OS original)" -#: src/veritysetup.c:467 +#: src/veritysetup.c:482 msgid "number" msgstr "número" -#: src/veritysetup.c:468 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "Tamaño de bloque en el dispositivo de datos" -#: src/veritysetup.c:469 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "Tamaño de bloque en el dispositivo «hash»" -#: src/veritysetup.c:470 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "Bytes de paridad FEC" -#: src/veritysetup.c:471 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "Número de bloques en el fichero de datos" -#: src/veritysetup.c:471 +#: src/veritysetup.c:486 msgid "blocks" msgstr "bloques" -#: src/veritysetup.c:472 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "Ruta a dispositivo con datos de corrección de errores" -#: src/veritysetup.c:472 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:565 msgid "path" msgstr "ruta" -#: src/veritysetup.c:473 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "Posición inicial en el dispositivo «hash»" -#: src/veritysetup.c:474 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "Posición inicial en el dispositivo FEC" -#: src/veritysetup.c:475 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "Algoritmo «hash»" -#: src/veritysetup.c:475 +#: src/veritysetup.c:490 msgid "string" msgstr "cadena" -#: src/veritysetup.c:476 +#: src/veritysetup.c:491 msgid "Salt" msgstr "«Salt»" -#: src/veritysetup.c:476 +#: src/veritysetup.c:491 msgid "hex string" msgstr "cadena hexadecimal" -#: src/veritysetup.c:478 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "Ruta al fichero de firmas «hash» raíz" -#: src/veritysetup.c:479 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "Reiniciar el núcleo si se detecta corrupción" -#: src/veritysetup.c:480 +#: src/veritysetup.c:495 +msgid "Panic kernel if corruption is detected" +msgstr "Poner en pánico al núcleo si se detecta corrupción" + +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "Ignorar corrupción, tomar nota únicamente" -#: src/veritysetup.c:481 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "No verificar bloques con zeros" -#: src/veritysetup.c:482 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "Verificar el bloque de datos solo en la primera lectura" -#: src/veritysetup.c:582 +#: src/veritysetup.c:600 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "Las opciones --ignore-corruption, --restart-on-corruption y --ignore-zero-blocks solo están permitidas para la operación de abrir." -#: src/veritysetup.c:587 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "La opción --root-hash-signature solo puede usarse para la acción de abrir." -#: src/veritysetup.c:592 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "Las opciones --ignore-corruption y --restart-on-corruption no pueden utilizarse juntas." -#: 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 "Las opciones --panic-on-corruption y --restart-on-corruption no pueden utilizarse juntas." + +#: src/integritysetup.c:96 src/utils_password.c:312 #, c-format msgid "Cannot read keyfile %s." msgstr "No se puede leer el fichero de claves %s." -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:100 src/utils_password.c:317 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "No se pueden leer %d «bytes» en el fichero de claves %s." -#: src/integritysetup.c:254 +#: src/integritysetup.c:267 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Formato dado con tamaño de etiqueta %u, integridad interna %s.\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:493 src/integritysetup.c:497 msgid "" msgstr "" -#: src/integritysetup.c:480 +#: src/integritysetup.c:494 msgid " " msgstr " " -#: src/integritysetup.c:502 +#: src/integritysetup.c:516 #, c-format msgid "" "\n" @@ -3311,7 +3374,7 @@ " es el dispositivo que se va a crear bajo %s\n" " es el dispositivo que contiene datos con etiquetas de integridad\n" -#: src/integritysetup.c:507 +#: src/integritysetup.c:521 #, c-format msgid "" "\n" @@ -3322,392 +3385,396 @@ "Parámetros dm-integrity predefinidos de fábrica:\n" "\tAlgoritmo de la suma de comprobación: %s\n" -#: src/integritysetup.c:549 +#: src/integritysetup.c:565 msgid "Path to data device (if separated)" msgstr "Ruta al dispositivo de datos (si está separado)" -#: src/integritysetup.c:551 +#: src/integritysetup.c:567 msgid "Journal size" msgstr "Tamaño del diario" -#: src/integritysetup.c:552 +#: src/integritysetup.c:568 msgid "Interleave sectors" msgstr "Sectores de entrelazado" -#: src/integritysetup.c:553 +#: src/integritysetup.c:569 msgid "Journal watermark" msgstr "Marca de agua del diario" -#: src/integritysetup.c:553 +#: src/integritysetup.c:569 msgid "percent" msgstr "por ciento" -#: src/integritysetup.c:554 +#: src/integritysetup.c:570 msgid "Journal commit time" msgstr "Tiempo de escritura en el diario" -#: src/integritysetup.c:554 src/integritysetup.c:556 +#: src/integritysetup.c:570 src/integritysetup.c:572 msgid "ms" msgstr "ms" -#: src/integritysetup.c:555 +#: src/integritysetup.c:571 msgid "Number of 512-byte sectors per bit (bitmap mode)." msgstr "Número de sectores de 512 bytes por bit (modo mapa de bits)." -#: src/integritysetup.c:556 +#: src/integritysetup.c:572 msgid "Bitmap mode flush time" msgstr "Tiempo de «flush» del modo mapa de bits" -#: src/integritysetup.c:557 +#: src/integritysetup.c:573 msgid "Tag size (per-sector)" msgstr "Tamaño de etiqueta (por sector)" -#: src/integritysetup.c:558 +#: src/integritysetup.c:574 msgid "Sector size" msgstr "Tamaño de sector" -#: src/integritysetup.c:559 +#: src/integritysetup.c:575 msgid "Buffers size" msgstr "Tamaño de los «buffers»" -#: src/integritysetup.c:561 +#: src/integritysetup.c:577 msgid "Data integrity algorithm" msgstr "Algoritmo para la integridad de datos" -#: src/integritysetup.c:562 +#: src/integritysetup.c:578 msgid "The size of the data integrity key" msgstr "Tamaño de la clave de integridad de datos" -#: src/integritysetup.c:563 +#: src/integritysetup.c:579 msgid "Read the integrity key from a file" msgstr "Leer la clave de integridad de un fichero" -#: src/integritysetup.c:565 +#: src/integritysetup.c:581 msgid "Journal integrity algorithm" msgstr "Algoritmo de integridad del diario" -#: src/integritysetup.c:566 +#: src/integritysetup.c:582 msgid "The size of the journal integrity key" msgstr "Tamaño de la clave de integridad del diario" -#: src/integritysetup.c:567 +#: src/integritysetup.c:583 msgid "Read the journal integrity key from a file" msgstr "Leer la clave de integridad del diario de un fichero" -#: src/integritysetup.c:569 +#: src/integritysetup.c:585 msgid "Journal encryption algorithm" msgstr "Algoritmo de cifrado del diario" -#: src/integritysetup.c:570 +#: src/integritysetup.c:586 msgid "The size of the journal encryption key" msgstr "Tamaño de la clave de cifrado del diario" -#: src/integritysetup.c:571 +#: src/integritysetup.c:587 msgid "Read the journal encryption key from a file" msgstr "Leer la clave de cifrado del diario de un fichero" -#: src/integritysetup.c:574 +#: src/integritysetup.c:590 msgid "Recovery mode (no journal, no tag checking)" msgstr "Modo de recuperación (sin diario, sin comprobación de etiqueta)" -#: src/integritysetup.c:575 +#: src/integritysetup.c:591 msgid "Use bitmap to track changes and disable journal for integrity device" msgstr "Utilice bitmap para seguir los cambios y desactive el diario para el dispositivo de integridad" -#: src/integritysetup.c:576 +#: src/integritysetup.c:592 msgid "Recalculate initial tags automatically." msgstr "Recalcular las etiquetas iniciales automáticamente." -#: src/integritysetup.c:649 +#: src/integritysetup.c:595 +msgid "Do not protect superblock with HMAC (old kernels)" +msgstr "No proteger superbloque con HMAC (núcleos antiguos)" + +#: src/integritysetup.c:596 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "Permitir recalcular volúmenes con claves HMAC (núcleos antiguos)" + +#: src/integritysetup.c:671 msgid "Option --integrity-recalculate can be used only for open action." msgstr "La opción --integrity-recalculate solo puede usarse para la acción de abrir." -#: src/integritysetup.c:669 +#: src/integritysetup.c:691 msgid "Options --journal-size, --interleave-sectors, --sector-size, --tag-size and --no-wipe can be used only for format action." msgstr "Las opciones --journal-size, --interleave-sectors, --sector-size, --tag-size y --no-wipe solo pueden utilizarse para la acción de dar formato." -#: src/integritysetup.c:675 +#: src/integritysetup.c:697 msgid "Invalid journal size specification." msgstr "La especificación del tamaño del diario no es válida." -#: src/integritysetup.c:680 +#: src/integritysetup.c:702 msgid "Both key file and key size options must be specified." msgstr "Deben especificarse las opciones tanto de fichero de claves como tamaño de clave." -#: src/integritysetup.c:683 -msgid "Integrity algorithm must be specified if integrity key is used." -msgstr "El algoritmo para la integridad debe especificarse si se va a utilizar clave de integridad." - -#: src/integritysetup.c:688 +#: src/integritysetup.c:707 msgid "Both journal integrity key file and key size options must be specified." msgstr "Deben especificarse la opción del fichero de clave de integridad del diario y la del tamaño de la clave." -#: src/integritysetup.c:691 +#: src/integritysetup.c:710 msgid "Journal integrity algorithm must be specified if journal integrity key is used." msgstr "Debe especificarse el algoritmo de integridad del diario si va a utilizarse la clave de integridad del diario." -#: src/integritysetup.c:696 +#: src/integritysetup.c:715 msgid "Both journal encryption key file and key size options must be specified." msgstr "Deben especificarse la opción del fichero de la clave de cifrado del diario y la del tamaño de la clave." -#: src/integritysetup.c:699 +#: src/integritysetup.c:718 msgid "Journal encryption algorithm must be specified if journal encryption key is used." msgstr "Debe especificarse el algoritmo de cifrado del diario si va a utilizarse la clave de cifrado del diario." -#: src/integritysetup.c:703 +#: src/integritysetup.c:722 msgid "Recovery and bitmap mode options are mutually exclusive." msgstr "Las opciones de recuperación y de modo mapa de bits son mutuamente excluyentes." -#: src/integritysetup.c:707 +#: src/integritysetup.c:726 msgid "Journal options cannot be used in bitmap mode." msgstr "Las opciones de diario no pueden utilizarse en modo mapa de bits." -#: src/integritysetup.c:711 +#: src/integritysetup.c:730 msgid "Bitmap options can be used only in bitmap mode." msgstr "Las opciones de mapa de bits solo pueden utilizarse en el modo mapa de bits." -#: src/cryptsetup_reencrypt.c:172 +#: src/cryptsetup_reencrypt.c:190 msgid "Reencryption already in-progress." msgstr "Recifrado ya en curso." -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "No se puede abrir %s en exclusividad; el dispositivo está en uso." -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "La reserva de memoria alineada ha fallado." -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "No se puede leer el dispositivo %s." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "Marcando el dispositivo LUKS1 %s como inutilizable." -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "Estableciendo el indicador de recifrado fuera de línea LUKS2 en el dispositivo %s." -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "No se puede escribir en el dispositivo %s." -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "No se puede escribir en el fichero de registro de recifrado." -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "No se puede leer el fichero de registro de recifrado." -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "El fichero de registro %s ya existe; reanudando el recifrado.\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "Activando dispositivo temporal utilizando cabecera LUKS antigua." -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "Activando dispositivo temporal utilizando cabecera LUKS nueva." -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "Fallo en la activación de los dispositivos temporales." -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "No se ha podido establecer el desplazamiento de los datos." -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "No se ha podido establecer el tamaño de los metadatos." -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "Se ha creado una nueva cabecera LUKS para el dispositivo %s." -#: 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 "Esta versión de cryptsetup-reencrypt no sabe manejar el nuevo tipo de «token» interno %s." -#: src/cryptsetup_reencrypt.c:655 +#: src/cryptsetup_reencrypt.c:673 msgid "Failed to read activation flags from backup header." msgstr "No se ha podido leer los indicadores de activación en la cabecera de respaldo." -#: src/cryptsetup_reencrypt.c:659 +#: src/cryptsetup_reencrypt.c:677 msgid "Failed to write activation flags to new header." msgstr "No se ha podido escribir los indicadores de activación en la nueva cabecera." -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "No se ha podido leer los requisitos en la cabecera de respaldo." -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "Se ha creado una copia de seguridad de la cabecera %s del dispositivo %s." -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "No se ha podido crear la copia de seguridad de las cabeceras LUKS." -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "No se puede restaurar la cabecera %s en el dispositivo %s." -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "Se ha restaurado la cabecera %s en el dispositivo %s." -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "No se puede abrir el dispositivo LUKS temporal." -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "No se puede obtener el tamaño del dispositivo." -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "Error de entrada/salida durante el recifrado." -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "El UUID proporcionado no es válido." -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "No se puede abrir el fichero de registro de recifrado." -#: 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 "No hay ningún proceso de descifrado en marcha; el UUID proporcionado solo puede utilizarse para reanudar un proceso de descifrado suspendido." -#: src/cryptsetup_reencrypt.c:1504 +#: src/cryptsetup_reencrypt.c:1522 #, c-format msgid "Changed pbkdf parameters in keyslot %i." msgstr "Se han cambiado los parámetros pbkdf en la ranura de claves %i." -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "Tamaño de bloque de recifrado" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "MiB" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "No cambie la clave; no hay recifrado en la zona de datos" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "Leer la clave (maestra) del volumen desde fichero" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "Tiempo de iteración PBKDF2 para LUKS (en ms)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "Utilizar entrada/salida directa para acceder a los dispositivos" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "Utilizar fsync después de cada bloque" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "Actualizar el fichero de registro después de cada bloque" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "Utilizar solamente esta ranura (se desactivarán las demás)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "Crear nueva cabecera en dispositivo no cifrado" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "Descifrar el dispositivo de forma permanente (eliminar cifrado)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "El UUID utilizado para reanudar el descifrado" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Tipo de metadato LUKS: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[OPCIÓN...] " -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "El recifrado va a cambiar: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "clave del volumen" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "nuevo algoritmo «hash» " -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr ", nuevo algoritmo de cifrado: " -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "Hace falta argumento." -#: 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 "Solo se permiten valores entre 1 MiB y 64 MiB para el tamaño de bloque de recifrado." -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "El tamaño máximo de reducción del dispositivo es de 64 MiB." -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "La opción --new debe utilizarse conjuntamente con --reduce-device-size o --header." -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "La opción --keep-key solamente puede utilizarse con --hash, --iter-time o --pbkdf-force-iterations." -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "La opción --new no puede utilizarse conjuntamente con --decrypt." -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "La opción --decrypt es incompatible con los parámetros especificados." -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "La opción --uuid solo está permitida conjuntamente con --decrypt." -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Tipo de luks no válido. Utilice uno de estos: 'luks', 'luks1' o 'luks2'." @@ -3748,32 +3815,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "La orden ha fallado con código %i (%s).\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "Ranura de claves %i creada." -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "Ranura de claves %i desbloqueada." -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "Ranura de claves %i eliminada." -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "«Token» %i creado." -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "«Token» %i eliminado." -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3781,55 +3848,55 @@ "\n" "Limpieza interrumpida." -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "AVISO: El dispositivo %s ya contiene una firma de partición '%s'.\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" -msgstr "AVISO: El dispositivo %s ya contiene uan firma de superbloque '%s'.\n" +msgstr "AVISO: El dispositivo %s ya contiene una firma de superbloque '%s'.\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "No se han podido inicializar los sondeos de firma del dispositivo." -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "No se ha podido efectuar «stat» sobre el dispositivo %s." -#: 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 "El dispositivo %s está en uso. No se puede proceder con la operación de dar formato." -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "No se ha podido abrir el fichero %s para lectura y escritura." -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "La firma de la partición '%s' existente (desplazamiento: % bytes) en el dispositivo %s va a limpiarse." -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "La firma del superbloque '%s' existente (desplazamiento: % bytes) en el dispositivo %s va a limpiarse." -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "No se ha podido limpiar la firma del dispositivo." -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "No se ha podido sondear el dispositivo %s para una firma." -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3856,46 +3923,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "Fallo en la comprobación de la calidad de la contraseña: frase contraseña incorrecta (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:200 src/utils_password.c:215 msgid "Error reading passphrase from terminal." msgstr "Error al leer la frase contraseña desde el terminal." -#: src/utils_password.c:206 +#: src/utils_password.c:213 msgid "Verify passphrase: " msgstr "Verifique la frase contraseña: " -#: src/utils_password.c:213 +#: src/utils_password.c:220 msgid "Passphrases do not match." msgstr "La frase contraseña no coincide." -#: src/utils_password.c:250 +#: src/utils_password.c:257 msgid "Cannot use offset with terminal input." msgstr "No se puede usar «offset» con entrada desde terminal." -#: src/utils_password.c:253 +#: src/utils_password.c:260 #, c-format msgid "Enter passphrase: " msgstr "Introduzca la frase contraseña: " -#: src/utils_password.c:256 +#: src/utils_password.c:263 #, c-format msgid "Enter passphrase for %s: " msgstr "Introduzca la frase contraseña de %s: " -#: src/utils_password.c:287 +#: src/utils_password.c:294 msgid "No key available with this passphrase." msgstr "No hay ninguna clave disponible con esa frase contraseña." -#: src/utils_password.c:289 +#: src/utils_password.c:296 msgid "No usable keyslot is available." msgstr "No hay niguna ranura de claves utilizable disponible." -#: src/utils_password.c:328 +#: src/utils_password.c:338 #, c-format msgid "Cannot open keyfile %s for write." msgstr "No se puede abrir el fichero de claves %s para escritura." -#: src/utils_password.c:335 +#: src/utils_password.c:345 #, c-format msgid "Cannot write to keyfile %s." msgstr "No se puede escribir en el fichero de claves %s." @@ -3938,6 +4005,18 @@ msgid "Failed to write JSON file." msgstr "No se ha podido escribir el fichero JSON." +#~ msgid "WARNING: Locking directory %s/%s is missing!\n" +#~ msgstr "ATENCIÓN: ¡Falta el directorio de bloqueo %s/%s!\n" + +#~ msgid "Invalid size parameters for verity device." +#~ msgstr "Parámetros de tamaño inválido para un dispositivo «verity»." + +#~ msgid "Integrity algorithm must be specified if integrity key is used." +#~ msgstr "El algoritmo para la integridad debe especificarse si se va a utilizar clave de integridad." + +#~ msgid "Wrong key size." +#~ msgstr "Tamaño de clave incorrecto." + #~ msgid "Parameter --refresh is only allowed with open or refresh commands." #~ msgstr "El parámetro --refresh solo se permite con las órdenes de abrir y de refrescar." diff -Nru cryptsetup-2.3.4/po/fr.po cryptsetup-2.3.6/po/fr.po --- cryptsetup-2.3.4/po/fr.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/fr.po 2021-05-28 04:57:08.000000000 -0500 @@ -1,16 +1,16 @@ # Messages français pour cryptsetup. -# Copyright (C) 2020 Free Software Foundation, Inc. +# Copyright (C) 2021 Free Software Foundation, Inc. # This file is put in the public domain. # # Solveig , 2009. # Nicolas Provost , 2011. -# Frédéric Marchal , 2020. +# Frédéric Marchal , 2021. msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.4-rc0\n" +"Project-Id-Version: cryptsetup 2.3.6-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-08-27 21:34+0200\n" -"PO-Revision-Date: 2020-09-02 16:28+0200\n" +"POT-Creation-Date: 2021-05-21 17:33+0200\n" +"PO-Revision-Date: 2021-05-22 18:30+0200\n" "Last-Translator: Frédéric Marchal \n" "Language-Team: French \n" "Language: fr\n" @@ -20,62 +20,62 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n >= 2);\n" -#: lib/libdevmapper.c:405 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "Impossible d'initialiser le gestionnaire « device-mapper ». Exécution comme un utilisateur non-root." -#: lib/libdevmapper.c:408 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "Impossible d'initialiser le gestionnaire « device-mapper ». Le module noyau dm_mod est-il chargé ?" -#: lib/libdevmapper.c:1149 +#: lib/libdevmapper.c:1180 msgid "Requested deferred flag is not supported." msgstr "Le fanion différé demandé n'est pas supporté." -#: lib/libdevmapper.c:1216 +#: lib/libdevmapper.c:1249 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "Le DM-UUID du périphérique %s a été tronqué." -#: lib/libdevmapper.c:1547 +#: lib/libdevmapper.c:1580 msgid "Unknown dm target type." msgstr "Type de cible dm inconnu." -#: lib/libdevmapper.c:1660 lib/libdevmapper.c:1665 lib/libdevmapper.c:1725 -#: lib/libdevmapper.c:1728 +#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766 +#: lib/libdevmapper.c:1769 msgid "Requested dm-crypt performance options are not supported." msgstr "Les options de performance dm-crypt demandées ne sont pas supportées." -#: lib/libdevmapper.c:1672 lib/libdevmapper.c:1676 +#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Les options demandées de gestion de corruption des données dm-verity ne sont pas supportées." -#: lib/libdevmapper.c:1680 +#: lib/libdevmapper.c:1721 msgid "Requested dm-verity FEC options are not supported." msgstr "Les options dm-verity FEC demandées ne sont pas supportées." -#: lib/libdevmapper.c:1684 +#: lib/libdevmapper.c:1725 msgid "Requested data integrity options are not supported." msgstr "Les options d'intégrité de données demandées ne sont pas supportées." -#: lib/libdevmapper.c:1686 +#: lib/libdevmapper.c:1727 msgid "Requested sector_size option is not supported." msgstr "L'option sector_size demandée n'est pas supportée." -#: lib/libdevmapper.c:1691 +#: lib/libdevmapper.c:1732 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "Le recalcule automatique des balises de sécurité demandés n'est pas supporté." -#: lib/libdevmapper.c:1695 lib/libdevmapper.c:1731 lib/libdevmapper.c:1734 +#: lib/libdevmapper.c:1736 lib/libdevmapper.c:1772 lib/libdevmapper.c:1775 #: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Discard/TRIM n'est pas supporté." -#: lib/libdevmapper.c:1699 +#: lib/libdevmapper.c:1740 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "Le mode de carte de bits d'intégrité dm demandé n'est pas supporté." -#: lib/libdevmapper.c:2663 +#: lib/libdevmapper.c:2713 #, c-format msgid "Failed to query dm-%s segment." msgstr "Échec lors de l'interrogation du segment dm-%s." @@ -117,7 +117,7 @@ msgid "Cannot initialize crypto backend." msgstr "Impossible d'initialiser le moteur de chiffrement." -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "L'algorithme de hachage %s n'est pas supporté." @@ -131,7 +131,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "Impossible de déterminer le type de périphérique. Activation du périphérique incompatible ?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "Cette opération n'est possible que pour les périphériques LUKS." @@ -139,7 +139,7 @@ msgid "This operation is supported only for LUKS2 device." msgstr "Cette opération n'est possible que pour les périphériques LUKS2." -#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2347 msgid "All key slots full." msgstr "Tous les emplacements de clés sont utilisés." @@ -153,7 +153,7 @@ msgid "Key slot %d is full, please select another one." msgstr "L'emplacement de clé %d est utilisé, merci d'en sélectionner un autre." -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "La taille du périphérique n'est pas alignée avec la taille d'un bloc logique du périphérique." @@ -162,7 +162,7 @@ msgid "Header detected but device %s is too small." msgstr "En-tête détecté mais le périphérique %s est trop petit." -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "Cette opération n'est pas supportée pour ce type de périphérique." @@ -170,17 +170,13 @@ msgid "Illegal operation with reencryption in-progress." msgstr "Opération illégale avec une re-chiffrement en cours." -#: lib/setup.c:832 lib/luks1/keymanage.c:475 +#: lib/setup.c:832 lib/luks1/keymanage.c:482 #, c-format msgid "Unsupported LUKS version %d." msgstr "La version %d de LUKS n'est pas supportée." -#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 -msgid "Detached metadata device is not supported for this crypt type." -msgstr "Un périphérique avec des métadonnées détachées n'est pas supporté avec ce type de chiffrement." - -#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628 -#: lib/setup.c:2777 lib/setup.c:4517 +#: lib/setup.c:1427 lib/setup.c:2547 lib/setup.c:2619 lib/setup.c:2631 +#: lib/setup.c:2785 lib/setup.c:4532 #, c-format msgid "Device %s is not active." msgstr "Le périphérique %s n'est pas activé." @@ -194,7 +190,7 @@ msgid "Invalid plain crypt parameters." msgstr "Paramètres de chiffrement non valides." -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 msgid "Invalid key size." msgstr "La taille de la clé n'est pas valide." @@ -202,12 +198,16 @@ msgid "UUID is not supported for this crypt type." msgstr "le UUID n'est pas supporté avec ce type de chiffrement." +#: lib/setup.c:1539 lib/setup.c:1959 +msgid "Detached metadata device is not supported for this crypt type." +msgstr "Un périphérique avec des métadonnées détachées n'est pas supporté avec ce type de chiffrement." + #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1238 src/cryptsetup.c:3945 +#: src/cryptsetup.c:1296 src/cryptsetup.c:4037 msgid "Unsupported encryption sector size." msgstr "Taille de secteur de chiffrement non supportée." -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "La taille du périphérique n'est pas alignée avec la taille de secteur demandée." @@ -251,8 +251,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "ATTENTION: La taille de la zone des emplacements de clés LUKS2 est devenue % octets.\n" -#: lib/setup.c:1882 lib/utils_device.c:834 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:2358 lib/luks2/luks2_reencrypt.c:3383 #, c-format msgid "Device %s is too small." msgstr "Le périphérique %s est trop petit." @@ -285,16 +285,16 @@ msgid "Can't format VERITY without device." msgstr "Impossible de formater VERITY sans périphérique." -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "Type de hachage VERITY %d non supporté." -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "Taille de bloc VERITY non supportée." -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "Décalage de hachage VERITY non supporté." @@ -324,236 +324,236 @@ msgid "Unknown crypt device type %s requested." msgstr "Type de chiffrement de périphérique demandé (%s) inconnu." -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "Paramètres non supportés sur le périphérique %s." -#: 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:2410 +#: lib/luks2/luks2_reencrypt.c:2753 #, c-format msgid "Mismatching parameters on device %s." msgstr "Paramètres non concordants sur le périphérique %s." -#: lib/setup.c:2661 +#: lib/setup.c:2664 msgid "Crypt devices mismatch." msgstr "Désaccord entre les périphériques crypt." -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3161 #, c-format msgid "Failed to reload device %s." msgstr "Impossible de recharger le périphérique %s." -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "Impossible de suspendre le périphérique %s." -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3096 lib/luks2/luks2_reencrypt.c:3165 #, c-format msgid "Failed to resume device %s." msgstr "Impossible de redémarrer le périphérique %s." -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "Erreur fatale en rechargeant le périphérique %s (au dessus du périphérique %s)" -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "Impossible de basculer le périphérique %s en dm-error." -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "Impossible de redimensionner le périphérique loopback." -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "Voulez vous réellement changer l'UUID du périphérique ?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "Le fichier de sauvegarde de l'en-tête ne contient pas d'en-tête compatible LUKS." -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "Le volume %s n'est pas actif." -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "Le volume %s est déjà suspendu." -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "Le périphérique %s ne supporte pas la suspension." -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "Erreur lors de la suspension du périphérique %s." -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "Le volume %s n'est pas suspendu." - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "Le périphérique %s ne supporte pas la remise en service." -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "Erreur lors de la remise en service du périphérique %s." -#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4314 lib/setup.c:4327 -#: lib/setup.c:4335 lib/setup.c:4348 lib/setup.c:4698 lib/setup.c:5844 +#: lib/setup.c:3164 lib/setup.c:3212 lib/setup.c:3282 +#, c-format +msgid "Volume %s is not suspended." +msgstr "Le volume %s n'est pas suspendu." + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5862 msgid "Volume key does not match the volume." msgstr "Ceci n'est pas la clé du volume." -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "Impossible d'ajouter un emplacement de clé, tous les emplacements sont désactivés et aucune clé n'a été fournie pour ce volume." -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "Nouvel emplacement de clé impossible à échanger." -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "L'emplacement de clé %d n'est pas valide." -#: lib/setup.c:3675 src/cryptsetup.c:1584 src/cryptsetup.c:1929 +#: lib/setup.c:3679 src/cryptsetup.c:1634 src/cryptsetup.c:1979 #, c-format msgid "Keyslot %d is not active." msgstr "L'emplacement de clé %d n'est pas actif." -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "L'en-tête du périphérique recouvre la zone de données." -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "Re-chiffrement en cours. Impossible d'activer le périphérique." -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2253 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2852 msgid "Failed to get reencryption lock." msgstr "Impossible d'obtenir le verrou de re-chiffrement." -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2871 msgid "LUKS2 reencryption recovery failed." msgstr "La récupération du rechiffrement LUKS2 a échoué." -#: lib/setup.c:4127 lib/setup.c:4384 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "Type de périphérique improprement initialisé." -#: lib/setup.c:4175 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "Le périphérique %s existe déjà." -#: lib/setup.c:4182 +#: lib/setup.c:4192 #, c-format msgid "Cannot use device %s, name is invalid or still in use." msgstr "Impossible d'utiliser le périphérique %s, le nom est invalide ou est toujours utilisé." -#: lib/setup.c:4301 +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "Clé de volume incorrecte pour le périphérique en clair." -#: lib/setup.c:4410 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "Hachage racine incorrect spécifié pour le périphérique verity." -#: lib/setup.c:4417 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "Signature de hachage racine requise." -#: lib/setup.c:4426 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "Le porte-clé du noyau est manquant : il est requis pour passer une signature au noyau." -#: lib/setup.c:4443 lib/setup.c:5920 +#: lib/setup.c:4458 lib/setup.c:5938 msgid "Failed to load key in kernel keyring." msgstr "Impossible de charger la clé dans le porte-clé du noyau." -#: lib/setup.c:4496 lib/setup.c:4512 lib/luks2/luks2_json_metadata.c:2306 -#: src/cryptsetup.c:2676 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2744 #, c-format msgid "Device %s is still in use." msgstr "Le périphérique %s est toujours occupé." -#: lib/setup.c:4521 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "Le périphérique %s n'est pas valide." -#: lib/setup.c:4637 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "Le tampon de la clé du volume est trop petit." -#: lib/setup.c:4645 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "Impossible de récupérer la clé du volume pour ce périphérique de type « plain »." -#: lib/setup.c:4662 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "Impossible de récupérer le hachage racine pour le périphérique verity." -#: lib/setup.c:4664 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Cette opération n'est pas possible pour le périphérique chiffré %s." -#: lib/setup.c:4870 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "L'opération de vidage n'est pas supportée pour ce type de périphérique." -#: lib/setup.c:5195 +#: lib/setup.c:5213 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "Le décalage des données n'est pas un multiple de %u octets." -#: lib/setup.c:5480 +#: lib/setup.c:5498 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "Impossible de convertir le périphérique %s qui est toujours en cours d'utilisation." -#: lib/setup.c:5777 +#: lib/setup.c:5795 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "Échec de l'affectation de l'emplacement de clé %u pour la nouvelle clé de volume." -#: lib/setup.c:5850 +#: lib/setup.c:5868 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "Échec de l'initialisation des paramètres par défaut des emplacement de clé LUKS2." -#: lib/setup.c:5856 +#: lib/setup.c:5874 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "Échec de l'affectation de l'emplacement de clé %d aux résumé." -#: lib/setup.c:5987 +#: lib/setup.c:6005 msgid "Kernel keyring is not supported by the kernel." msgstr "Le porte-clé du noyau n'est pas supporté par ce noyau." -#: lib/setup.c:5997 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6015 lib/luks2/luks2_reencrypt.c:2968 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "Échec lors de la lecture du mot de passe depuis le porte-clé (erreur %d)." -#: lib/setup.c:6021 +#: lib/setup.c:6039 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "Erreur lors de l'acquisition du verrou global de sérialisation des accès strictes à la mémoire" @@ -581,8 +581,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "Impossible de sauter au décalage demandé dans le fichier de clé." -#: 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 msgid "Out of memory while reading passphrase." msgstr "Plus assez de mémoire lors de la lecture de la phrase secrète." @@ -602,56 +602,56 @@ msgid "Cannot read requested amount of data." msgstr "Impossible de lire la quantité de données demandée." -#: 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 #, c-format msgid "Device %s does not exist or access denied." msgstr "Le périphérique %s n'existe pas ou l'accès y est interdit." -#: lib/utils_device.c:197 +#: lib/utils_device.c:200 #, c-format msgid "Device %s is not compatible." msgstr "Le périphérique %s n'est pas compatible." -#: lib/utils_device.c:532 +#: lib/utils_device.c:544 #, c-format msgid "Ignoring bogus optimal-io size for data device (%u bytes)." msgstr "La mauvaise taille de optimal-io est ignorée pour le périphérique de données (%u octets)." -#: lib/utils_device.c:648 +#: lib/utils_device.c:666 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "Le périphérique %s est trop petit. Il a besoin d'au moins % octets." -#: lib/utils_device.c:729 +#: lib/utils_device.c:747 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "Impossible d'utiliser le périphérique %s actuellement utilisé (déjà mappé ou monté)." -#: lib/utils_device.c:733 +#: lib/utils_device.c:751 #, c-format msgid "Cannot use device %s, permission denied." msgstr "Impossible d'utiliser le périphérique %s, permission refusée." -#: lib/utils_device.c:736 +#: lib/utils_device.c:754 #, c-format msgid "Cannot get info about device %s." msgstr "Impossible d'obtenir des informations au sujet du périphérique %s." -#: lib/utils_device.c:759 +#: lib/utils_device.c:777 msgid "Cannot use a loopback device, running as non-root user." msgstr "Impossible d'utiliser un périphérique loopback. Fonctionne comme un utilisateur non-root." -#: lib/utils_device.c:769 +#: lib/utils_device.c:787 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "Impossible d'associer le périphérique loopback (le drapeau « autoclear » est requis)." -#: lib/utils_device.c:815 +#: lib/utils_device.c:833 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "Le décalage demandé est au delà de la taille réelle du périphérique %s." -#: lib/utils_device.c:823 +#: lib/utils_device.c:841 #, c-format msgid "Device %s has zero size." msgstr "Le périphérique %s a une taille nulle." @@ -725,16 +725,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "ATTENTION: Le répertoire verrou %s/%s est manquant !\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "Le répertoire de verrouillage %s/%s sera créé avec les permissions par défaut fournies durant la compilation." #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Verrouillage interrompu. Le chemin de verrouillage %s/%s est inutilisable (%s n'est pas un répertoire)." -#: 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 msgid "Cannot seek to device offset." msgstr "Impossible de se déplacer au décalage du périphérique." @@ -762,7 +762,7 @@ msgstr "La spécification du chiffrement devrait être au format [chiffrement]-[mode]-[iv]." #: lib/luks1/keyencryption.c:97 lib/luks1/keymanage.c:344 -#: lib/luks1/keymanage.c:635 lib/luks1/keymanage.c:1080 +#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1094 #: lib/luks2/luks2_json_metadata.c:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." @@ -782,12 +782,12 @@ msgstr "Erreur E/S pendant le chiffrement de l'emplacement de clé." #: 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:1263 -#: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "Impossible d'ouvrir le périphérique %s." @@ -808,13 +808,13 @@ msgid "LUKS keyslot %u is invalid." msgstr "L'emplacement de clé LUKS %u n'est pas valide." -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 -#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1445 -#: src/cryptsetup.c:1571 src/cryptsetup.c:1628 src/cryptsetup.c:1684 -#: src/cryptsetup.c:1751 src/cryptsetup.c:1854 src/cryptsetup.c:1918 -#: src/cryptsetup.c:2148 src/cryptsetup.c:2343 src/cryptsetup.c:2403 -#: src/cryptsetup.c:2469 src/cryptsetup.c:2633 src/cryptsetup.c:3291 -#: src/cryptsetup.c:3300 src/cryptsetup_reencrypt.c:1388 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1495 +#: src/cryptsetup.c:1621 src/cryptsetup.c:1678 src/cryptsetup.c:1734 +#: src/cryptsetup.c:1801 src/cryptsetup.c:1904 src/cryptsetup.c:1968 +#: src/cryptsetup.c:2198 src/cryptsetup.c:2409 src/cryptsetup.c:2471 +#: src/cryptsetup.c:2537 src/cryptsetup.c:2701 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3386 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "%s n'est pas un périphérique LUKS valide." @@ -838,7 +838,7 @@ msgid "Backup file does not contain valid LUKS header." msgstr "Le fichier de sauvegarde ne contient pas d'en-tête LUKS valide." -#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549 +#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:556 #: lib/luks2/luks2_json_metadata.c:1190 #, c-format msgid "Cannot open header backup file %s." @@ -878,101 +878,101 @@ msgid "Non standard key size, manual repair required." msgstr "Taille de clé non standard. Réparation manuelle requise." -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "Alignement non standard des emplacements de clé. Réparation manuelle requise." -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "Réparation des emplacements de clé." -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Emplacement de clé %i : décalage réparé (%u -> %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Emplacement de clé %i : bandes réparées (%u -> %u)." -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Emplacement de clé %i : signature de partition contrefaite." -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Emplacement de clé %i : aléa effacé." -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "Écriture de l'en-tête LUKS sur le disque." -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "Échec de la réparation." -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "L'algorithme de hachage LUKS demandé (%s) n'est pas supporté." -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1145 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1188 msgid "No known problems detected for LUKS header." msgstr "Aucun problème connu détecté pour l'en-tête LUKS." -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Erreur lors de la mise à jour de l'en-tête LUKS sur le périphérique %s." -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Erreur lors de la relecture de l'en-tête LUKS après la mise à jour sur le périphérique %s." -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "L'offset des données d'un en-tête LUKS doit être soit 0 ou soit plus grand que la taille de l'en-tête." -#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825 -#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1009 -#: src/cryptsetup.c:2796 +#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832 +#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2864 msgid "Wrong LUKS UUID format provided." msgstr "Mauvais format fourni pour le UUID LUKS." -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "Impossible de créer un en-tête LUKS : échec lors de la lecture de l'aléa." -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "Impossible de créer un en-tête LUKS : le résumé (« digest ») de l'en-tête a échoué (en utilisant l'algorithme de hachage %s)." -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "L'emplacement de clé %d est activé, effacez le d'abord." -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "Le matériel de l'emplacement de clé %d a trop peu de bandes. L'en-tête a-t-il été modifié ?" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "Impossible d'ouvrir l'emplacement de clé (en utilisant le hachage %s)." -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "L'emplacement de clé %d n'est pas valide, merci de sélectionner un emplacement entre 0 et %d." -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "Impossible d'effacer de façon sécurisée le périphérique %s." @@ -1008,11 +1008,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "L'algorithme de hachage PBKDF2 %s n'est pas supporté, ignoré." -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1022 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059 msgid "Required kernel crypto interface not available." msgstr "L'interface du noyau requise pour le chiffrement n'est pas disponible." -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1024 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Vérifiez que le module du noyau algif_skcipher est chargé." @@ -1038,146 +1038,160 @@ msgid "This function is not supported without TCRYPT header load." msgstr "Cette fonction n'est pas supportée sans le chargement de l'en-tête TCRYPT." -#: 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 "Un type d'entrée « %u » inattendu a été trouvé dans la méta-donnée en analysant la Clé Maître du Volume supportée." -#: lib/bitlk/bitlk.c:380 +#: lib/bitlk/bitlk.c:397 msgid "Invalid string found when parsing Volume Master Key." msgstr "Chaîne texte invalide rencontrée en analysant la Clé Maître du Volume." -#: lib/bitlk/bitlk.c:385 +#: lib/bitlk/bitlk.c:402 #, c-format msgid "Unexpected string ('%s') found when parsing supported Volume Master Key." msgstr "Chaîne texte (« %s ») inattendue rencontrée en analysant la Clé Maître du Volume supportée." -#: 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 "La valeur « %u » pour l'entrée de la méta-donnée est inattendue en analysant la Clé Maître du Volume supportée." -#: lib/bitlk/bitlk.c:479 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "Impossible de lire la signature BITLK depuis %s." -#: lib/bitlk/bitlk.c:485 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Signature invalide ou inconnue pour le périphérique BITLK." + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "La version 1 de BITLK n'est actuellement pas supportée." -#: lib/bitlk/bitlk.c:491 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "Signature d'amorce invalide ou inconnue pour le périphérique BITLK." -#: lib/bitlk/bitlk.c:503 -msgid "Invalid or unknown signature for BITLK device." -msgstr "Signature invalide ou inconnue pour le périphérique BITLK." - -#: lib/bitlk/bitlk.c:515 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "Taille de secteur % non supportée." -#: lib/bitlk/bitlk.c:523 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "Impossible de lire l'en-tête BITLK depuis %s." -#: lib/bitlk/bitlk.c:548 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "Impossible de lire les méta-données BITLK FVE depuis %s." -#: lib/bitlk/bitlk.c:599 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "Type de chiffrement inconnu ou non supporté." -#: lib/bitlk/bitlk.c:632 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "Impossible de lire les entrées des méta-données de BITLK depuis %s." -#: lib/bitlk/bitlk.c:926 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "Un type d'entrée « %u » inattendu a été trouvé dans la méta-donnée en analysant la clé externe." + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "La valeur « %u » pour l'entrée de la méta-donnée est inattendue en analysant la clé externe." + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "Une entrée de méta-donnée inattendue a été trouvée en analysant la clé de démarrage." + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "Cette opération n'est pas supportée." -#: lib/bitlk/bitlk.c:934 +#: lib/bitlk/bitlk.c:1079 msgid "Unexpected key data size." msgstr "Taille inattendue pour les données de la clé." -#: lib/bitlk/bitlk.c:988 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "Ce périphérique BITLK est dans un état non supporté et ne peut pas être activé." -#: lib/bitlk/bitlk.c:994 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "Les périphériques BITLK avec le type « %s » ne peuvent pas être activés." -#: lib/bitlk/bitlk.c:1076 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "L'activation d'un périphérique BITLK partiellement déchiffré n'est pas supporté." -#: lib/bitlk/bitlk.c:1212 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "Impossible d'activer le périphérique car dm-crypt dans le noyau ne supporte pas BITLK IV." -#: lib/bitlk/bitlk.c:1216 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "Impossible d'activer le périphérique car dm-crypt dans le noyau ne supporte pas le diffuseur BITLK Elephant." -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "Le périphérique verity %s n'utilise pas l'en-tête sur le disque." -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "Le périphérique %s n'est pas un périphérique VERITY valable." -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "La version VERITY %d n'est pas supportée." -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "En-tête VERITY corrompu." -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "Mauvais format d'UUID VERITY fourni sur le périphérique %s." -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "Erreur lors de la mise à jour de l'en-tête verity sur le périphérique %s." -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "La vérification de la signature du hachage racine n'est pas supportée." -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "Les erreurs ne savent pas être réparées avec un périphérique FEC." -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "%u erreurs réparables ont été trouvées avec le périphérique FEC." -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "Le noyau ne supporte pas les associations de type dm-verity." -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "Le noyau ne supporte pas les options de signature dm-verity." -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "Le périphérique verity a détecté une corruption après l'activation." @@ -1186,41 +1200,37 @@ msgid "Spare area is not zeroed at position %." msgstr "La zone de réserve n'a pas été mise à zéro à la positon %." -#: 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 msgid "Device offset overflow." msgstr "Débordement du décalage du périphérique." -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "La vérification a échoué à la position %." -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "Mauvais paramètres de taille pour le périphérique verity." - -#: lib/verity/verity_hash.c:296 +#: lib/verity/verity_hash.c:273 msgid "Hash area overflow." msgstr "Débordement de la zone de hachage." -#: lib/verity/verity_hash.c:373 +#: lib/verity/verity_hash.c:346 msgid "Verification of data area failed." msgstr "La vérification de la zone de données a échoué." -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "La vérification du hachage de la racine a échoué." -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "Erreur d'entrée/sortie lors de la création de la zone de hachage." -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "La création de la zone de hachage a échoué." -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "ATTENTION : Le kernel ne peut pas activer le périphérique si la taille des blocs de données dépasse la taille d'une page (%u)." @@ -1229,51 +1239,59 @@ msgid "Failed to allocate RS context." msgstr "Échec de l'allocation du contexte RS." -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "Échec de l'allocation du tampon." -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Échec de lecture du bloc RS % octet %d." -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "Échec de la lecture de la parité du bloc RS %." -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "Échec de la réparation de la parité du bloc %." -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "Échec de l'écriture de la parité du bloc RS %." -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "Les tailles des blocs doivent concorder pour FEC." -#: lib/verity/verity_fec.c:229 +#: lib/verity/verity_fec.c:233 msgid "Invalid number of parity bytes." msgstr "Nombre d'octets de parité invalide." -#: lib/verity/verity_fec.c:265 +#: lib/verity/verity_fec.c:238 +msgid "Invalid FEC segment length." +msgstr "Longueur de segment FEC invalide." + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "Impossible de déterminer la taille du périphérique %s." -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355 msgid "Kernel does not support dm-integrity mapping." msgstr "Le noyau ne supporte pas les associations de type dm-integrity." -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "Le noyau ne supporte pas les alignements de méta-données fixés de dm-integrity." +#: lib/integrity/integrity.c:287 +msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)." +msgstr "Le noyau refuse d'activer l'option de recalcul non sûre (voyez les options d'activation historique pour outrepasser)." + #: lib/luks2/luks2_disk_metadata.c:383 lib/luks2/luks2_json_metadata.c:967 #: lib/luks2/luks2_json_metadata.c:1252 #, c-format @@ -1296,7 +1314,7 @@ msgid "Requested data offset is too small." msgstr "Le décalage de données demandé est trop petit." -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "ATTENTION: la zone des emplacements de clés (% octets) est très petite, le nombre d'emplacements de clés LUKS2 est très limité.\n" @@ -1380,7 +1398,7 @@ msgid "Reencryption in-progress. Cannot deactivate device." msgstr "Re-chiffrement en cours. Le périphérique ne peut être désactivé." -#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3206 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "Échec du remplacement du périphérique suspendu %s avec la cible dm-error." @@ -1489,7 +1507,7 @@ #: 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:3046 msgid "Failed to initialize old segment storage wrapper." msgstr "Impossible d'initialiser l'encapsulation pour le stockage de l'ancien segment." @@ -1501,7 +1519,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "Impossible de lire les sommes de contrôle pour la zone chaude actuelle." -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3054 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "Échec de la lecture de la zone chaude démarrant à %." @@ -1544,210 +1562,210 @@ msgid "Failed to set new keyslots area size." msgstr "Impossible de définir la taille de la nouvelle zone des emplacements de clés." -#: lib/luks2/luks2_reencrypt.c:2318 +#: lib/luks2/luks2_reencrypt.c:2320 #, c-format msgid "Data shift is not aligned to requested encryption sector size (% bytes)." msgstr "Le décalage de données n'est pas aligné sur la taille de secteur de chiffrement demandée (% octets)." -#: lib/luks2/luks2_reencrypt.c:2339 +#: lib/luks2/luks2_reencrypt.c:2341 #, c-format msgid "Data device is not aligned to requested encryption sector size (% bytes)." msgstr "Le périphérique de données n'est pas aligné sur la taille de secteur de chiffrement demandée (% octets)." -#: lib/luks2/luks2_reencrypt.c:2360 +#: lib/luks2/luks2_reencrypt.c:2362 #, c-format msgid "Data shift (% sectors) is less than future data offset (% sectors)." msgstr "Le décalage de données (% secteurs) est plus petit que le décalage de données future (% secteurs)." -#: lib/luks2/luks2_reencrypt.c:2366 lib/luks2/luks2_reencrypt.c:2779 -#: lib/luks2/luks2_reencrypt.c:2800 +#: lib/luks2/luks2_reencrypt.c:2368 lib/luks2/luks2_reencrypt.c:2795 +#: lib/luks2/luks2_reencrypt.c:2816 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "Erreur lors de l'ouverture de %s en mode exclusif (déjà mappé ou monté)." -#: lib/luks2/luks2_reencrypt.c:2534 +#: lib/luks2/luks2_reencrypt.c:2536 msgid "Device not marked for LUKS2 reencryption." msgstr "Le périphérique n'est pas marqué pour le rechiffrement LUKS2." -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2542 lib/luks2/luks2_reencrypt.c:3311 msgid "Failed to load LUKS2 reencryption context." msgstr "Échec du chargement du contexte de rechiffrement LUKS2" -#: lib/luks2/luks2_reencrypt.c:2619 +#: lib/luks2/luks2_reencrypt.c:2621 msgid "Failed to get reencryption state." msgstr "Impossible d'obtenir l'état de rechiffrement." -#: lib/luks2/luks2_reencrypt.c:2623 +#: lib/luks2/luks2_reencrypt.c:2625 msgid "Device is not in reencryption." msgstr "Le périphérique n'est pas en rechiffrement." -#: lib/luks2/luks2_reencrypt.c:2630 +#: lib/luks2/luks2_reencrypt.c:2632 msgid "Reencryption process is already running." msgstr "Le rechiffrement est déjà en cours." -#: lib/luks2/luks2_reencrypt.c:2632 +#: lib/luks2/luks2_reencrypt.c:2634 msgid "Failed to acquire reencryption lock." msgstr "Impossible d'acquérir le verrou de rechiffrement." -#: lib/luks2/luks2_reencrypt.c:2650 +#: lib/luks2/luks2_reencrypt.c:2652 msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "Impossible de réaliser le rechiffrement. Exécutez d'abord la récupération du rechiffrement." -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2766 msgid "Active device size and requested reencryption size don't match." msgstr "La taille du périphérique actif et la taille de rechiffrement demandée ne correspondent pas." -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2780 msgid "Illegal device size requested in reencryption parameters." msgstr "Taille de périphérique illégale demandée dans les paramètres de rechiffrement." -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "Rechiffrement en cours. La récupération ne peut pas être réalisée." -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2922 msgid "LUKS2 reencryption already initialized in metadata." msgstr "Rechiffrement LUKS2 déjà initialisé dans les métadonnées." -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2929 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "Échec de l'initialisation du rechiffrement LUKS2 dans les métadonnées." -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3020 msgid "Failed to set device segments for next reencryption hotzone." msgstr "Impossible de définir les segments du périphérique pour le rechiffrement suivant de la zone chaude." -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3062 msgid "Failed to write reencryption resilience metadata." msgstr "Échec lors de l'écriture des métadonnées de la résilience du rechiffrement." -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3069 msgid "Decryption failed." msgstr "Échec du déchiffrement." -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3074 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "Échec de l'écriture de la zone chaude démarrant à %." -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3079 msgid "Failed to sync data." msgstr "Erreur lors de la synchronisation des données." -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3087 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "Échec de la mise à jour des métadonnées après la fin du rechiffrement de la zone chaude courante." -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3154 msgid "Failed to write LUKS2 metadata." msgstr "Échec lors de l'écriture des métadonnées LUKS2" -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3177 msgid "Failed to wipe backup segment data." msgstr "Échec lors de l'effacement des données du segment de sauvegarde." -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3190 msgid "Failed to disable reencryption requirement flag." msgstr "Impossible de désactiver le fanion de demande de rechiffrement." -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3198 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "Erreur fatale en rechiffrant le morceau commençant à % d'une longueur de % secteurs." # Frédéric: Je n'ai pas la moindre idée de ce que le développeur a voulu écrire. Qu'est-ce que "error target" dans ce contexte ? -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3207 msgid "Do not resume the device unless replaced with error target manually." msgstr "Ne pas redémarrer le périphérique à moins qu'il ait été remplacé manuellement par la cible en erreur." -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3256 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "Impossible de réaliser le rechiffrement. Statut de rechiffrement inattendu." -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3262 msgid "Missing or invalid reencrypt context." msgstr "Contexte de rechiffrement manquant ou invalide." -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3269 msgid "Failed to initialize reencryption device stack." msgstr "Impossible d'initialiser la pile du périphérique de rechiffrement." -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3288 lib/luks2/luks2_reencrypt.c:3324 msgid "Failed to update reencryption context." msgstr "Échec de la mise à jour du contexte de rechiffrement." -#: lib/luks2/luks2_token.c:262 +#: lib/luks2/luks2_token.c:263 msgid "No free token slot." msgstr "Aucun emplacement de jeton libre" -#: lib/luks2/luks2_token.c:269 +#: lib/luks2/luks2_token.c:270 #, c-format msgid "Failed to create builtin token %s." msgstr "Échec lors de la création du jeton intégré %s" -#: src/cryptsetup.c:166 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "Impossible de vérifier une phrase secrète non saisie sur une console." -#: src/cryptsetup.c:229 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Les paramètres de chiffrement des emplacement de clés peuvent uniquement être définis pour un périphérique LUKS2." -#: src/cryptsetup.c:259 src/cryptsetup.c:971 src/cryptsetup.c:1281 -#: src/cryptsetup.c:3157 src/cryptsetup_reencrypt.c:723 -#: src/cryptsetup_reencrypt.c:793 +#: src/cryptsetup.c:291 src/cryptsetup.c:1006 src/cryptsetup.c:1339 +#: src/cryptsetup.c:3245 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "Aucun motif connu d'algorithme de chiffrement n'a été détecté." -#: src/cryptsetup.c:267 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "ATTENTION: Le paramètre --hash est ignoré en mode non chiffré quand le fichier de clé est spécifié.\n" -#: src/cryptsetup.c:275 +#: 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 "ATTENTION: L'option --keyfile-size est ignorée. La taille de lecture est la même que la taille de la clé de chiffrement.\n" -#: src/cryptsetup.c:315 +#: src/cryptsetup.c:347 #, c-format msgid "Detected device signature(s) on %s. Proceeding further may damage existing data." msgstr "Signature(s) de périphérique détectée(s) sur %s. Continuer risque d'endommager les données existantes." -#: src/cryptsetup.c:321 src/cryptsetup.c:1102 src/cryptsetup.c:1154 -#: src/cryptsetup.c:1258 src/cryptsetup.c:1331 src/cryptsetup.c:1986 -#: src/cryptsetup.c:2694 src/cryptsetup.c:2817 src/integritysetup.c:233 +#: src/cryptsetup.c:353 src/cryptsetup.c:1145 src/cryptsetup.c:1197 +#: src/cryptsetup.c:1316 src/cryptsetup.c:1389 src/cryptsetup.c:2036 +#: src/cryptsetup.c:2762 src/cryptsetup.c:2886 src/integritysetup.c:242 msgid "Operation aborted.\n" msgstr "Opération interrompue.\n" -#: src/cryptsetup.c:389 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "L'option --key-file est requise." -#: src/cryptsetup.c:442 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "Entrez le PIN VeraCrypt : " -#: src/cryptsetup.c:451 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "Valeur PIN invalide : erreur d'analyse" -#: src/cryptsetup.c:454 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "Valeur PIN invalide: 0" -#: src/cryptsetup.c:457 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "Valeur PIN invalide: hors des limites." -#: src/cryptsetup.c:480 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "Aucun en-tête détecté avec cette phrase secrète sur le périphérique." -#: src/cryptsetup.c:549 +#: src/cryptsetup.c:582 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "Le périphérique %s n'est pas un périphérique BITLK valide." -#: src/cryptsetup.c:584 +#: src/cryptsetup.c:617 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1757,68 +1775,68 @@ "sensible qui permet d'accéder à la partition chiffrée sans mot de passe.\n" "Ce contenu devrait toujours être stocké, chiffré, en lieu sûr." -#: src/cryptsetup.c:681 +#: src/cryptsetup.c:714 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "Le périphérique %s est toujours actif et prévu pour une suppression différée.\n" -#: src/cryptsetup.c:709 +#: src/cryptsetup.c:742 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "Le redimensionnement d'un périphérique actif requiert que la clé du volume soit dans le porte-clé mais l'option --disable-keyring est définie." -#: src/cryptsetup.c:850 +#: src/cryptsetup.c:885 msgid "Benchmark interrupted." msgstr "Test de performance interrompu." -#: src/cryptsetup.c:871 +#: src/cryptsetup.c:906 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s N/A\n" -#: src/cryptsetup.c:873 +#: src/cryptsetup.c:908 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u itérations par seconde pour une clé de %zu bits\n" -#: src/cryptsetup.c:887 +#: src/cryptsetup.c:922 #, c-format msgid "%-10s N/A\n" msgstr "%-10s N/A\n" -#: src/cryptsetup.c:889 +#: 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 "%-10s %4u itérations, %5u mémoire, %1u threads parallèles (CPUs) pour une clé de %zu bits (temps de %u ms demandé)\n" -#: src/cryptsetup.c:913 +#: src/cryptsetup.c:948 msgid "Result of benchmark is not reliable." msgstr "Le résultat de l'évaluation de performance n'est pas fiable." -#: src/cryptsetup.c:963 +#: src/cryptsetup.c:998 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Tests approximatifs en utilisant uniquement la mémoire (pas de stockage E/S).\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:983 +#: src/cryptsetup.c:1018 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*s Algorithme | Clé | Chiffrement | Déchiffrement\n" -#: src/cryptsetup.c:987 +#: src/cryptsetup.c:1022 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "Le chiffrement %s (avec une clé de %i bits) n'est pas disponible." #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:1006 +#: src/cryptsetup.c:1041 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "# Algorithme | Clé | Chiffrement | Déchiffrement\n" -#: src/cryptsetup.c:1015 +#: src/cryptsetup.c:1052 msgid "N/A" msgstr "N/D" -#: src/cryptsetup.c:1095 +#: src/cryptsetup.c:1138 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1826,19 +1844,19 @@ "Le périphérique seems ne requière pas de récupération de rechiffrement.\n" "Voulez-vous quand-même continuer ?" -#: src/cryptsetup.c:1101 +#: src/cryptsetup.c:1144 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "Réellement procéder à la récupération du rechiffrement LUKS2 ?" -#: src/cryptsetup.c:1110 +#: src/cryptsetup.c:1153 msgid "Enter passphrase for reencryption recovery: " msgstr "Entrez la phrase secrète pour la récupération du rechiffrement : " -#: src/cryptsetup.c:1153 +#: src/cryptsetup.c:1196 msgid "Really try to repair LUKS device header?" msgstr "Réellement essayer de réparer l'en-tête du périphérique LUKS ?" -#: src/cryptsetup.c:1172 src/integritysetup.c:146 +#: src/cryptsetup.c:1215 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" @@ -1846,104 +1864,108 @@ "Effacement du périphérique pour initialiser les sommes de contrôle d'intégrité.\n" "Vous pouvez interrompre ceci en appuyant sur CTRL+c (le reste du périphérique effacé contiendra toujours des sommes de contrôle invalides).\n" -#: src/cryptsetup.c:1194 src/integritysetup.c:168 +#: src/cryptsetup.c:1237 src/integritysetup.c:179 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "Impossible de désactiver le périphérique temporaire %s." -#: src/cryptsetup.c:1243 +#: src/cryptsetup.c:1301 msgid "Integrity option can be used only for LUKS2 format." msgstr "L'option d'intégrité peut uniquement être utilisée avec le format LUKS2." -#: src/cryptsetup.c:1248 src/cryptsetup.c:1308 +#: src/cryptsetup.c:1306 src/cryptsetup.c:1366 msgid "Unsupported LUKS2 metadata size options." msgstr "Options de taille des métadonnées LUKS2 non supportées." -#: src/cryptsetup.c:1265 +#: src/cryptsetup.c:1315 +msgid "Header file does not exist, do you want to create it?" +msgstr "Le fichier d'en-tête n'existe pas, voulez-vous le créer ?" + +#: src/cryptsetup.c:1323 #, c-format msgid "Cannot create header file %s." msgstr "Impossible de créer le fichier d'en-tête %s." -#: src/cryptsetup.c:1288 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:1346 src/integritysetup.c:205 src/integritysetup.c:213 +#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303 +#: src/integritysetup.c:313 msgid "No known integrity specification pattern detected." msgstr "Aucun motif connu de spécification d'intégrité n'a été détecté." -#: src/cryptsetup.c:1301 +#: src/cryptsetup.c:1359 #, c-format msgid "Cannot use %s as on-disk header." msgstr "Ne peut utiliser %s comme en-tête sur disque." -#: src/cryptsetup.c:1325 src/integritysetup.c:227 +#: src/cryptsetup.c:1383 src/integritysetup.c:236 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "Cette action écrasera définitivement les données sur %s." -#: src/cryptsetup.c:1366 src/cryptsetup.c:1700 src/cryptsetup.c:1767 -#: src/cryptsetup.c:1869 src/cryptsetup.c:1935 src/cryptsetup_reencrypt.c:553 +#: src/cryptsetup.c:1416 src/cryptsetup.c:1750 src/cryptsetup.c:1817 +#: src/cryptsetup.c:1919 src/cryptsetup.c:1985 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "Impossible de définir les paramètres pbkdf." -#: src/cryptsetup.c:1451 +#: src/cryptsetup.c:1501 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "Décalage réduit de données est uniquement permis dans un en-tête LUKS détaché." -#: src/cryptsetup.c:1462 src/cryptsetup.c:1773 +#: src/cryptsetup.c:1512 src/cryptsetup.c:1823 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "Impossible de déterminer la taille de la clé de volume pour LUKS sans emplacement de clé, veuillez utiliser l'option --key-size." -#: src/cryptsetup.c:1500 +#: src/cryptsetup.c:1550 msgid "Device activated but cannot make flags persistent." msgstr "Le périphérique a été activé mais les fanions ne peuvent pas être rendus permanents." -#: src/cryptsetup.c:1581 src/cryptsetup.c:1651 +#: src/cryptsetup.c:1631 src/cryptsetup.c:1701 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "Emplacement de clé %d sélectionné pour suppression." -#: src/cryptsetup.c:1593 src/cryptsetup.c:1654 +#: src/cryptsetup.c:1643 src/cryptsetup.c:1704 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "Ceci est le dernier emplacement de clé. Le périphérique sera inutilisable après la suppression de cette clé." -#: src/cryptsetup.c:1594 +#: src/cryptsetup.c:1644 msgid "Enter any remaining passphrase: " msgstr "Entrez toute phrase secrète restante : " -#: src/cryptsetup.c:1595 src/cryptsetup.c:1656 +#: src/cryptsetup.c:1645 src/cryptsetup.c:1706 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Opération interrompue, l'emplacement de clé n'a PAS été effacé.\n" -#: src/cryptsetup.c:1633 +#: src/cryptsetup.c:1683 msgid "Enter passphrase to be deleted: " msgstr "Entrez la phrase secrète à effacer : " -#: src/cryptsetup.c:1714 src/cryptsetup.c:1788 src/cryptsetup.c:1822 +#: src/cryptsetup.c:1764 src/cryptsetup.c:1838 src/cryptsetup.c:1872 msgid "Enter new passphrase for key slot: " msgstr "Entrez une nouvelle phrase secrète pour l'emplacement de clé : " -#: src/cryptsetup.c:1805 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1855 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "Entrez une phrase secrète existante : " -#: src/cryptsetup.c:1873 +#: src/cryptsetup.c:1923 msgid "Enter passphrase to be changed: " msgstr "Entrez la phrase secrète à changer : " -#: src/cryptsetup.c:1889 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1939 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "Entrez la nouvelle phrase secrète : " -#: src/cryptsetup.c:1939 +#: src/cryptsetup.c:1989 msgid "Enter passphrase for keyslot to be converted: " msgstr "Entrez la phrase secrète pour l'emplacement de clé à convertir: " -#: src/cryptsetup.c:1963 +#: src/cryptsetup.c:2013 msgid "Only one device argument for isLuks operation is supported." msgstr "L'opération isLuks supporte seulement un périphérique en argument." -#: src/cryptsetup.c:2013 +#: src/cryptsetup.c:2063 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -1953,12 +1975,12 @@ "sensible qui permet d'accéder à la partition chiffrée sans mot de passe.\n" "Ce contenu devrait être stocké, chiffré, en lieu sûr." -#: src/cryptsetup.c:2078 +#: src/cryptsetup.c:2128 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "L'emplacement de clé %d ne contient pas de clé non liée." -#: src/cryptsetup.c:2084 +#: src/cryptsetup.c:2134 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -1966,30 +1988,40 @@ "Le contenu de l'en-tête avec une clé non liée est une information sensible.\n" "Ce contenu devrait être stocké, chiffré, en lieu sûr." -#: src/cryptsetup.c:2219 src/cryptsetup.c:2240 +#: src/cryptsetup.c:2223 src/cryptsetup.c:2252 +#, c-format +msgid "%s is not active %s device name." +msgstr "%s n'est pas un nom de périphérique %s actif." + +#: src/cryptsetup.c:2247 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "%s n'est pas un nom de périphérique LUKS actif ou l'en-tête est manquant." + +#: src/cryptsetup.c:2285 src/cryptsetup.c:2306 msgid "Option --header-backup-file is required." msgstr "L'option --header-backup-file est requise." -#: src/cryptsetup.c:2270 +#: src/cryptsetup.c:2336 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s n'est pas un périphérique géré par cryptsetup." -#: src/cryptsetup.c:2281 +#: src/cryptsetup.c:2347 #, c-format msgid "Refresh is not supported for device type %s" msgstr "Le rafraîchissement n'est pas supporté pour un périphérique de type %s" -#: src/cryptsetup.c:2323 +#: src/cryptsetup.c:2389 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Type de métadonnée du périphérique %s non reconnu." -#: src/cryptsetup.c:2326 +#: src/cryptsetup.c:2392 msgid "Command requires device and mapped name as arguments." msgstr "La commande exige un périphérique et un nom de correspondance comme arguments." -#: src/cryptsetup.c:2348 +#: src/cryptsetup.c:2414 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -1998,95 +2030,95 @@ "Cette opération va supprimer tous les emplacements de clés du périphérique %s.\n" "Le périphérique sera inutilisable après cette opération." -#: src/cryptsetup.c:2355 +#: src/cryptsetup.c:2421 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Opération interrompue, les emplacements de clés n'ont PAS été effacés.\n" -#: src/cryptsetup.c:2392 +#: src/cryptsetup.c:2460 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Type LUKS invalide, seuls luks1 et luks2 sont supportés." -#: src/cryptsetup.c:2410 +#: src/cryptsetup.c:2478 #, c-format msgid "Device is already %s type." msgstr "Le périphérique est déjà du type %s." -#: src/cryptsetup.c:2415 +#: src/cryptsetup.c:2483 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Cette opération va convertir %s au format %s.\n" -#: src/cryptsetup.c:2421 +#: src/cryptsetup.c:2489 msgid "Operation aborted, device was NOT converted.\n" msgstr "Opération interrompue, le périphérique n'a PAS été converti.\n" -#: src/cryptsetup.c:2461 +#: src/cryptsetup.c:2529 msgid "Option --priority, --label or --subsystem is missing." msgstr "L'option --priority, --label ou --subsystem est manquante." -#: src/cryptsetup.c:2495 src/cryptsetup.c:2528 src/cryptsetup.c:2551 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2596 src/cryptsetup.c:2619 #, c-format msgid "Token %d is invalid." msgstr "Le jeton %d est invalide." -#: src/cryptsetup.c:2498 src/cryptsetup.c:2554 +#: src/cryptsetup.c:2566 src/cryptsetup.c:2622 #, c-format msgid "Token %d in use." msgstr "Le jeton %d est utilisé." -#: src/cryptsetup.c:2505 +#: src/cryptsetup.c:2573 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "Échec lors de l'ajout du jeton %d au porte-clé luks2." -#: src/cryptsetup.c:2514 src/cryptsetup.c:2576 +#: src/cryptsetup.c:2582 src/cryptsetup.c:2644 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "Échec lors de l'affectation du jeton %d à l'emplacement de clé %d." -#: src/cryptsetup.c:2531 +#: src/cryptsetup.c:2599 #, c-format msgid "Token %d is not in use." msgstr "Le jeton %d n'est pas utilisé." -#: src/cryptsetup.c:2566 +#: src/cryptsetup.c:2634 msgid "Failed to import token from file." msgstr "Impossible d'importer le jeton depuis le fichier." -#: src/cryptsetup.c:2591 +#: src/cryptsetup.c:2659 #, c-format msgid "Failed to get token %d for export." msgstr "Impossible d'obtenir le jeton %d pour l'export." -#: src/cryptsetup.c:2606 +#: src/cryptsetup.c:2674 msgid "--key-description parameter is mandatory for token add action." msgstr "Le paramètre --key-description est requis pour l'action d'ajout d'un jeton." -#: src/cryptsetup.c:2612 src/cryptsetup.c:2620 +#: src/cryptsetup.c:2680 src/cryptsetup.c:2688 msgid "Action requires specific token. Use --token-id parameter." msgstr "L'action requiert un jeton spécifique. Utilisez le paramètre --token-id." -#: src/cryptsetup.c:2625 +#: src/cryptsetup.c:2693 #, c-format msgid "Invalid token operation %s." msgstr "L'opération de jeton %s est invalide." -#: src/cryptsetup.c:2680 +#: src/cryptsetup.c:2748 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "Périphérique dm actif auto-détecté « %s » pour le périphérique de données %s.\n" -#: src/cryptsetup.c:2684 +#: src/cryptsetup.c:2752 #, c-format msgid "Device %s is not a block device.\n" msgstr "Le périphérique %s n'est pas un périphérique blocs.\n" -#: src/cryptsetup.c:2686 +#: src/cryptsetup.c:2754 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "Échec de l'auto-détection des containers du périphérique %s." -#: src/cryptsetup.c:2688 +#: src/cryptsetup.c:2756 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2099,233 +2131,242 @@ "Les données pourraient être corrompues si le périphérique est réellement activé.\n" "Pour exécuter le rechiffrement en mode en ligne, utilisez le paramètre --active-name.\n" -#: src/cryptsetup.c:2768 +#: src/cryptsetup.c:2836 msgid "Invalid LUKS device type." msgstr "Type de périphérique LUKS invalide." -#: src/cryptsetup.c:2773 +#: src/cryptsetup.c:2841 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." msgstr "Le chiffrement sans en-tête détaché (--header) n'est pas possible sans une réduction de la taille du périphérique de données (--reduce-device-size)" -#: src/cryptsetup.c:2778 +#: src/cryptsetup.c:2846 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "Le décalage de données demandé doit être inférieur ou égal à la moitié du paramètre --reduce-device-size." -#: src/cryptsetup.c:2787 +#: src/cryptsetup.c:2855 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "Ajustement de la valeur de --reduce-device-size à deux fois --offset % (secteurs).\n" -#: src/cryptsetup.c:2791 +#: src/cryptsetup.c:2859 msgid "Encryption is supported only for LUKS2 format." msgstr "Le chiffrement est uniquement supporté avec le format LUKS2." -#: src/cryptsetup.c:2813 +#: src/cryptsetup.c:2882 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "Périphérique LUKS détecté sur %s. Voulez-vous chiffrer à nouveau ce périphérique LUKS ?" -#: src/cryptsetup.c:2828 +#: src/cryptsetup.c:2900 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "Le fichier temporaire d'en-tête %s existe déjà. Abandon." -#: src/cryptsetup.c:2830 src/cryptsetup.c:2837 +#: src/cryptsetup.c:2902 src/cryptsetup.c:2909 #, c-format msgid "Cannot create temporary header file %s." msgstr "Impossible de créer le fichier temporaire d'en-tête %s." -#: src/cryptsetup.c:2901 +#: src/cryptsetup.c:2976 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "%s/%s est maintenant actif et prêt pour un chiffrement en ligne.\n" -#: src/cryptsetup.c:3065 src/cryptsetup.c:3071 +#: src/cryptsetup.c:3013 +msgid "LUKS2 decryption is supported with detached header device only." +msgstr "Le déchiffrement LUKS2 est uniquement supporté avec un périphérique à l'en-tête détaché." + +#: src/cryptsetup.c:3146 src/cryptsetup.c:3152 msgid "Not enough free keyslots for reencryption." msgstr "Pas assez d'emplacements de clés libres pour le rechiffrement." -#: src/cryptsetup.c:3091 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3172 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "Le fichier de clé peut uniquement être utilisé avec --key-slot ou avec exactement un seul emplacement de clé actif." -#: src/cryptsetup.c:3100 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3181 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "Entrez la phrase secrète pour l'emplacement de clé %d : " -#: src/cryptsetup.c:3108 +#: src/cryptsetup.c:3190 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "Entrez la phrase secrète pour l'emplacement de clé %u : " -#: src/cryptsetup.c:3283 +#: src/cryptsetup.c:3236 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "Basculement de l'algorithme de chiffrement de données vers %s.\n" + +#: src/cryptsetup.c:3369 msgid "Command requires device as argument." msgstr "La commande exige un périphérique comme argument." -#: src/cryptsetup.c:3305 +#: src/cryptsetup.c:3391 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "Seul le format LUKS2 est actuellement supporté. Veuillez utiliser l'outil cryptsetup-reencrypt pour LUKS1." -#: src/cryptsetup.c:3317 +#: src/cryptsetup.c:3403 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "Un rechiffrement hors-ligne historique est déjà en cours. Utilisez l'utilitaire cryptsetup-reencrypt." -#: src/cryptsetup.c:3327 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3413 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "Le rechiffrement d'un périphérique avec un profil d'intégrité n'est pas supporté." -#: src/cryptsetup.c:3335 +#: src/cryptsetup.c:3421 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "Rechiffrement LUKS2 déjà initialisé. Abandon de l'opération." -#: src/cryptsetup.c:3339 +#: src/cryptsetup.c:3425 msgid "LUKS2 device is not in reencryption." msgstr "Le périphérique LUKS2 n'est pas en rechiffrement." -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3452 msgid " [--type ] []" msgstr " [--type ] []" -#: src/cryptsetup.c:3366 src/veritysetup.c:399 src/integritysetup.c:480 +#: src/cryptsetup.c:3452 src/veritysetup.c:408 src/integritysetup.c:493 msgid "open device as " msgstr "ouvrir le périphérique comme " -#: src/cryptsetup.c:3367 src/cryptsetup.c:3368 src/cryptsetup.c:3369 -#: src/veritysetup.c:400 src/veritysetup.c:401 src/integritysetup.c:481 -#: src/integritysetup.c:482 +#: src/cryptsetup.c:3453 src/cryptsetup.c:3454 src/cryptsetup.c:3455 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494 +#: src/integritysetup.c:495 msgid "" msgstr "" -#: src/cryptsetup.c:3367 src/veritysetup.c:400 src/integritysetup.c:481 +#: src/cryptsetup.c:3453 src/veritysetup.c:409 src/integritysetup.c:494 msgid "close device (remove mapping)" msgstr "fermeture du périphérique (supprime le « mapping »)" -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3454 msgid "resize active device" msgstr "redimensionner le périphérique actif" -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3455 msgid "show device status" msgstr "afficher le statut du périphérique" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "[--cipher ]" msgstr "[--cipher ]" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "benchmark cipher" msgstr "chiffrement pour test de performance" -#: src/cryptsetup.c:3371 src/cryptsetup.c:3372 src/cryptsetup.c:3373 -#: src/cryptsetup.c:3374 src/cryptsetup.c:3375 src/cryptsetup.c:3382 -#: src/cryptsetup.c:3383 src/cryptsetup.c:3384 src/cryptsetup.c:3385 -#: src/cryptsetup.c:3386 src/cryptsetup.c:3387 src/cryptsetup.c:3388 -#: src/cryptsetup.c:3389 src/cryptsetup.c:3390 +#: src/cryptsetup.c:3457 src/cryptsetup.c:3458 src/cryptsetup.c:3459 +#: src/cryptsetup.c:3460 src/cryptsetup.c:3461 src/cryptsetup.c:3468 +#: src/cryptsetup.c:3469 src/cryptsetup.c:3470 src/cryptsetup.c:3471 +#: src/cryptsetup.c:3472 src/cryptsetup.c:3473 src/cryptsetup.c:3474 +#: src/cryptsetup.c:3475 src/cryptsetup.c:3476 msgid "" msgstr "" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3457 msgid "try to repair on-disk metadata" msgstr "essayer de réparer les métadonnées sur le disque" -#: src/cryptsetup.c:3372 +#: src/cryptsetup.c:3458 msgid "reencrypt LUKS2 device" msgstr "rechiffrer le périphérique LUKS2" -#: src/cryptsetup.c:3373 +#: src/cryptsetup.c:3459 msgid "erase all keyslots (remove encryption key)" msgstr "supprimer tous les emplacements de clés (supprime la clé de chiffrement)" -#: src/cryptsetup.c:3374 +#: src/cryptsetup.c:3460 msgid "convert LUKS from/to LUKS2 format" msgstr "convertir LUKS depuis/vers le format LUKS2" -#: src/cryptsetup.c:3375 +#: src/cryptsetup.c:3461 msgid "set permanent configuration options for LUKS2" msgstr "définir les options de configuration permanentes pour LUKS2" -#: src/cryptsetup.c:3376 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3462 src/cryptsetup.c:3463 msgid " []" msgstr " []" -#: src/cryptsetup.c:3376 +#: src/cryptsetup.c:3462 msgid "formats a LUKS device" msgstr "formater un périphérique LUKS" -#: src/cryptsetup.c:3377 +#: src/cryptsetup.c:3463 msgid "add key to LUKS device" msgstr "ajouter une clé au périphérique LUKS" -#: src/cryptsetup.c:3378 src/cryptsetup.c:3379 src/cryptsetup.c:3380 +#: src/cryptsetup.c:3464 src/cryptsetup.c:3465 src/cryptsetup.c:3466 msgid " []" msgstr " []" -#: src/cryptsetup.c:3378 +#: src/cryptsetup.c:3464 msgid "removes supplied key or key file from LUKS device" msgstr "retire du périphérique LUKS la clé ou le fichier de clé fourni" -#: src/cryptsetup.c:3379 +#: src/cryptsetup.c:3465 msgid "changes supplied key or key file of LUKS device" msgstr "modifie la clé ou le fichier de clé fourni pour le périphérique LUKS" -#: src/cryptsetup.c:3380 +#: src/cryptsetup.c:3466 msgid "converts a key to new pbkdf parameters" msgstr "converti une clé vers les nouveaux paramètres pbkdf" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid " " msgstr " " -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid "wipes key with number from LUKS device" msgstr "efface de façon sécurisée la clé avec le numéro du périphérique LUKS" -#: src/cryptsetup.c:3382 +#: src/cryptsetup.c:3468 msgid "print UUID of LUKS device" msgstr "afficher l'UUID du périphérique LUKS" -#: src/cryptsetup.c:3383 +#: src/cryptsetup.c:3469 msgid "tests for LUKS partition header" msgstr "teste si a un en-tête de partition LUKS" -#: src/cryptsetup.c:3384 +#: src/cryptsetup.c:3470 msgid "dump LUKS partition information" msgstr "affiche les informations LUKS de la partition" -#: src/cryptsetup.c:3385 +#: src/cryptsetup.c:3471 msgid "dump TCRYPT device information" msgstr "affiche les informations du périphérique TCRYPT" -#: src/cryptsetup.c:3386 +#: src/cryptsetup.c:3472 msgid "dump BITLK device information" msgstr "affiche les informations du périphérique BITLK" -#: src/cryptsetup.c:3387 +#: src/cryptsetup.c:3473 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "Suspendre le périphérique LUKS et effacer de façon sécurisée la clé (toutes les entrées/sorties sont suspendues)" -#: src/cryptsetup.c:3388 +#: src/cryptsetup.c:3474 msgid "Resume suspended LUKS device" msgstr "Remettre en service le périphérique LUKS suspendu" -#: src/cryptsetup.c:3389 +#: src/cryptsetup.c:3475 msgid "Backup LUKS device header and keyslots" msgstr "Sauvegarder l'en-tête et les emplacements de clés du périphérique LUKS" -#: src/cryptsetup.c:3390 +#: src/cryptsetup.c:3476 msgid "Restore LUKS device header and keyslots" msgstr "Restaurer l'en-tête et les emplacements de clés du périphérique LUKS" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid " " msgstr " " -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid "Manipulate LUKS2 tokens" msgstr "Manipuler les jetons LUKS2" -#: src/cryptsetup.c:3409 src/veritysetup.c:417 src/integritysetup.c:498 +#: src/cryptsetup.c:3495 src/veritysetup.c:426 src/integritysetup.c:511 msgid "" "\n" " is one of:\n" @@ -2333,7 +2374,7 @@ "\n" " est l'une de :\n" -#: src/cryptsetup.c:3415 +#: src/cryptsetup.c:3501 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2345,7 +2386,7 @@ "\touvrir : create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tfermer : remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3419 +#: src/cryptsetup.c:3505 #, c-format msgid "" "\n" @@ -2360,7 +2401,7 @@ " est le numéro de l'emplacement de clé LUKS à modifier\n" " est un fichier optionnel contenant la nouvelle clé pour l'action luksAddKey\n" -#: src/cryptsetup.c:3426 +#: src/cryptsetup.c:3512 #, c-format msgid "" "\n" @@ -2369,7 +2410,7 @@ "\n" "Le format de métadonnées compilé par défaut est %s (pour l'action luksFormat).\n" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3517 #, c-format msgid "" "\n" @@ -2386,7 +2427,7 @@ "PBKDF par défaut pour LUKS2 : %s\n" "\tTemps d'itération: %d, Mémoire requise: %d ko, Threads parallèles: %d\n" -#: src/cryptsetup.c:3442 +#: src/cryptsetup.c:3528 #, c-format msgid "" "\n" @@ -2401,451 +2442,451 @@ "\tplain: %s, Clé: %d bits, Hachage mot de passe: %s\n" "\tLUKS: %s, Clé: %d bits, Hachage en-tête LUKS: %s, RNG: %s\n" -#: src/cryptsetup.c:3451 +#: src/cryptsetup.c:3537 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: La taille de clé par défaut en mode XTS (deux clés internes) sera doublée.\n" -#: src/cryptsetup.c:3467 src/veritysetup.c:575 src/integritysetup.c:642 +#: src/cryptsetup.c:3555 src/veritysetup.c:587 src/integritysetup.c:665 #, c-format msgid "%s: requires %s as arguments" msgstr "%s : exige %s comme arguments." -#: src/cryptsetup.c:3500 src/veritysetup.c:462 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3587 src/veritysetup.c:472 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "Afficher ce message d'aide" -#: src/cryptsetup.c:3501 src/veritysetup.c:463 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3588 src/veritysetup.c:473 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "Afficher, en résumé, la syntaxe d'invocation" -#: src/cryptsetup.c:3502 src/veritysetup.c:464 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3589 src/veritysetup.c:474 src/integritysetup.c:555 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "Afficher la version du paquet" -#: src/cryptsetup.c:3506 src/veritysetup.c:468 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3593 src/veritysetup.c:478 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "Options d'aide :" -#: src/cryptsetup.c:3507 src/veritysetup.c:469 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3594 src/veritysetup.c:479 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "Afficher des messages d'erreur plus détaillés" -#: src/cryptsetup.c:3508 src/veritysetup.c:470 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3595 src/veritysetup.c:480 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "Afficher les messages de débogage" -#: src/cryptsetup.c:3509 +#: src/cryptsetup.c:3596 msgid "Show debug messages including JSON metadata" msgstr "Montrer les messages de débogage incluant les métadonnées JSON" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3597 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "L'algorithme de chiffrement utilisé pour chiffrer le disque (voir /proc/crypto)" -#: src/cryptsetup.c:3511 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3598 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "L'algorithme de hachage utilisé pour créer la clé de chiffrement à partir de la phrase secrète" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3599 msgid "Verifies the passphrase by asking for it twice" msgstr "Vérifier la phrase secrète en la demandant deux fois" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3600 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "Lire la clef depuis un fichier" -#: src/cryptsetup.c:3514 +#: src/cryptsetup.c:3601 msgid "Read the volume (master) key from file." msgstr "Lire la clé (maîtresse) du volume depuis un fichier." -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3602 msgid "Dump volume (master) key instead of keyslots info" msgstr "Lister les informations de la clé (maîtresse) de volume au lieu des autres emplacements de clefs" -#: src/cryptsetup.c:3516 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "La taille de la clé de chiffrement" -#: src/cryptsetup.c:3516 src/cryptsetup.c:3579 src/integritysetup.c:562 -#: src/integritysetup.c:566 src/integritysetup.c:570 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup.c:3666 src/integritysetup.c:579 +#: src/integritysetup.c:583 src/integritysetup.c:587 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "BITS" -#: src/cryptsetup.c:3517 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3604 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "Limite la lecture d'un fichier de clé" -#: src/cryptsetup.c:3517 src/cryptsetup.c:3518 src/cryptsetup.c:3519 -#: src/cryptsetup.c:3520 src/cryptsetup.c:3523 src/cryptsetup.c:3576 -#: src/cryptsetup.c:3577 src/cryptsetup.c:3585 src/cryptsetup.c:3586 -#: src/veritysetup.c:473 src/veritysetup.c:474 src/veritysetup.c:475 -#: src/veritysetup.c:478 src/veritysetup.c:479 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:3604 src/cryptsetup.c:3605 src/cryptsetup.c:3606 +#: src/cryptsetup.c:3607 src/cryptsetup.c:3610 src/cryptsetup.c:3663 +#: src/cryptsetup.c:3664 src/cryptsetup.c:3672 src/cryptsetup.c:3673 +#: 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 "octets" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3605 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "Nombre d'octets à ignorer dans le fichier de clé" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3606 msgid "Limits the read from newly added keyfile" msgstr "Limite la lecture d'un nouveau fichier de clé ajouté" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3607 msgid "Number of bytes to skip in newly added keyfile" msgstr "Nombre d'octets à ignorer dans le fichier de clé nouvellement ajouté" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3608 msgid "Slot number for new key (default is first free)" msgstr "Numéro de l'emplacement pour la nouvelle clé (par défaut, le premier disponible)" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3609 msgid "The size of the device" msgstr "La taille du périphérique" -#: src/cryptsetup.c:3522 src/cryptsetup.c:3524 src/cryptsetup.c:3525 -#: src/cryptsetup.c:3531 src/integritysetup.c:552 src/integritysetup.c:559 +#: src/cryptsetup.c:3609 src/cryptsetup.c:3611 src/cryptsetup.c:3612 +#: src/cryptsetup.c:3618 src/integritysetup.c:569 src/integritysetup.c:576 msgid "SECTORS" msgstr "SECTEURS" -#: src/cryptsetup.c:3523 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3610 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "Utiliser uniquement la taille demandée du périphérique (ignore le reste du périphérique). DANGEREUX !" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3611 msgid "The start offset in the backend device" msgstr "Le décalage de départ dans le périphérique sous-jacent" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3612 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Combien de secteurs de données chiffrées à ignorer au début" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3613 msgid "Create a readonly mapping" msgstr "Crée une association en lecture seule" -#: src/cryptsetup.c:3527 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3614 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "Ne pas demander confirmation" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3615 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Délai d'expiration de la demande interactive de phrase secrète (en secondes)" -#: src/cryptsetup.c:3528 src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3615 src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "s" -#: src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "Mise à jour de la ligne de progression (en secondes)" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3617 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "Nombre de tentatives possibles pour entrer la phrase secrète" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3618 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Utiliser une limite de secteurs pour aligner les données – pour luksFormat" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3619 msgid "File with LUKS header and keyslots backup" msgstr "Fichier contenant une sauvegarde de l'en-tête LUKS et des emplacements de clés" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3620 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "Utiliser /dev/random pour générer la clé de volume" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3621 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "Utiliser /dev/urandom pour générer la clé de volume" -#: src/cryptsetup.c:3535 +#: src/cryptsetup.c:3622 msgid "Share device with another non-overlapping crypt segment" msgstr "Partager le périphérique avec un autre segment chiffré sans recouvrement" -#: src/cryptsetup.c:3536 src/veritysetup.c:482 +#: src/cryptsetup.c:3623 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "UUID du périphérique à utiliser" -#: src/cryptsetup.c:3537 src/integritysetup.c:579 +#: src/cryptsetup.c:3624 src/integritysetup.c:599 msgid "Allow discards (aka TRIM) requests for device" msgstr "Autoriser les demandes d'abandon (TRIM) pour le périphérique" -#: src/cryptsetup.c:3538 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3625 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "Périphérique ou fichier avec un en-tête LUKS séparé" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3626 msgid "Do not activate device, just check passphrase" msgstr "Ne pas activer le périphérique. Vérifie simplement le phrase secrète" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3627 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Utilise l'en-tête caché (périphérique TCRYPT caché)" -#: src/cryptsetup.c:3541 +#: src/cryptsetup.c:3628 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "Le périphérique est un lecteur TCRYPT système (avec secteur d'amorçage)" -#: src/cryptsetup.c:3542 +#: src/cryptsetup.c:3629 msgid "Use backup (secondary) TCRYPT header" msgstr "Utiliser l'en-tête TCRYPT de secours (secondaire)" -#: src/cryptsetup.c:3543 +#: src/cryptsetup.c:3630 msgid "Scan also for VeraCrypt compatible device" msgstr "Recherche aussi des périphériques compatibles avec VeraCrypt" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3631 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Multiplicateur d'Itération Personnel pour le périphérique compatible avec VeraCrypt" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3632 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Interroger le Multiplicateur d'Itération Personnel pour le périphérique compatible avec VeraCrypt" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3633 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "Type de métadonnées du périphérique : luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3634 msgid "Disable password quality check (if enabled)" msgstr "Désactive la vérification de la qualité du mot de passe (si activé)" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3635 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Utilise l'option de compatibilité de performance dm-crypt same_cpu_crypt" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3636 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Utilise l'option de compatibilité de performance dm-crypt submit_from_crypt_cpus" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3637 msgid "Bypass dm-crypt workqueue and process read requests synchronously" msgstr "Passer outre la queue de travail de dm-crypt et traiter les requêtes en lecture de manière synchrone" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3638 msgid "Bypass dm-crypt workqueue and process write requests synchronously" msgstr "Passer outre la queue de travail de dm-crypt et traiter les requêtes en écriture de manière synchrone" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3639 msgid "Device removal is deferred until the last user closes it" msgstr "La suppression du périphérique est différée jusqu'à ce que le dernier utilisateur le ferme" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3640 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "Utiliser un verrou global pour sérialiser PBKDF qui utilise beaucoup de mémoire (évite le OOM)" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3641 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "Temps d'itération de PBKDF pour LUKS (en ms)" -#: src/cryptsetup.c:3554 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3641 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "ms" -#: src/cryptsetup.c:3555 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3642 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "Algorithme PBKDF (pour LUKS2): argon2i, argon2id, pbkdf2" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "Limite de coût mémoire PBKDF" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "kilooctets" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "Coût parallèle PBKDF" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "threads" -#: src/cryptsetup.c:3558 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3645 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "Coût d'itération PBKDF (forcé, désactive l'étalon)" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3646 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Priorité de l'emplacement de clé: ignore, normal, prefer" -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3647 msgid "Disable locking of on-disk metadata" msgstr "Désactiver le verrouillage des métadonnées sur le disque" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3648 msgid "Disable loading volume keys via kernel keyring" msgstr "Désactiver le chargement des clés de volume via le porte-clé du noyau" -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3649 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Algorithme d'intégrité des données (uniquement LUKS2)" -#: src/cryptsetup.c:3563 src/integritysetup.c:573 +#: src/cryptsetup.c:3650 src/integritysetup.c:590 msgid "Disable journal for integrity device" msgstr "Désactiver le journal pour le périphérique d'intégrité" -#: src/cryptsetup.c:3564 src/integritysetup.c:547 +#: src/cryptsetup.c:3651 src/integritysetup.c:564 msgid "Do not wipe device after format" msgstr "Ne pas effacer le périphérique après le formatage" -#: src/cryptsetup.c:3565 src/integritysetup.c:577 +#: src/cryptsetup.c:3652 src/integritysetup.c:594 msgid "Use inefficient legacy padding (old kernels)" msgstr "Utiliser le rembourrage historique inefficace (vieux noyaux)" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3653 msgid "Do not ask for passphrase if activation by token fails" msgstr "Ne pas demander le mot de passe si l'activation par jeton échoue" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3654 msgid "Token number (default: any)" msgstr "Numéro de jeton (défaut: n'importe lequel)" -#: src/cryptsetup.c:3568 +#: src/cryptsetup.c:3655 msgid "Key description" msgstr "Description de clé" -#: src/cryptsetup.c:3569 +#: src/cryptsetup.c:3656 msgid "Encryption sector size (default: 512 bytes)" msgstr "Taille du secteur de chiffrement (défaut: 512 octets)" -#: src/cryptsetup.c:3570 +#: src/cryptsetup.c:3657 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "Utiliser le IV (vecteur d'initialisation) compté en taille de secteurs (pas en multiple de 512 octets)" -#: src/cryptsetup.c:3571 +#: src/cryptsetup.c:3658 msgid "Set activation flags persistent for device" msgstr "Définir les fanions d'activation comme permanents pour le périphérique" -#: src/cryptsetup.c:3572 +#: src/cryptsetup.c:3659 msgid "Set label for the LUKS2 device" msgstr "Définir l'étiquette pour le périphérique LUKS2" -#: src/cryptsetup.c:3573 +#: src/cryptsetup.c:3660 msgid "Set subsystem label for the LUKS2 device" msgstr "Définir l'étiquette de sous-système pour le périphérique LUKS2" -#: src/cryptsetup.c:3574 +#: src/cryptsetup.c:3661 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "Créer ou déverser un emplacement de clé LUKS2 non lié (aucun segment de donnée assigné)" -#: src/cryptsetup.c:3575 +#: src/cryptsetup.c:3662 msgid "Read or write the json from or to a file" msgstr "Lire ou écrire le json depuis ou vers un fichier" -#: src/cryptsetup.c:3576 +#: src/cryptsetup.c:3663 msgid "LUKS2 header metadata area size" msgstr "Taille de la zone de métadonnées de l'en-tête LUKS2" -#: src/cryptsetup.c:3577 +#: src/cryptsetup.c:3664 msgid "LUKS2 header keyslots area size" msgstr "Taille de la zone des emplacements de clés de l'en-tête LUKS2" -#: src/cryptsetup.c:3578 +#: src/cryptsetup.c:3665 msgid "Refresh (reactivate) device with new parameters" msgstr "Rafraîchir (réactiver) le périphérique avec de nouveaux paramètres" -#: src/cryptsetup.c:3579 +#: src/cryptsetup.c:3666 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "Emplacement de clé LUKS2: La taille de la clé de chiffrement" -#: src/cryptsetup.c:3580 +#: src/cryptsetup.c:3667 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "Emplacement de clé LUKS2: Le chiffrement utilisé pour le chiffrement de l'emplacement de clé" -#: src/cryptsetup.c:3581 +#: src/cryptsetup.c:3668 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "Chiffrer le périphérique LUKS2 (chiffrement sur place)." -#: src/cryptsetup.c:3582 +#: src/cryptsetup.c:3669 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "Déchiffrer le périphérique LUKS2 (supprime le chiffrement)" -#: src/cryptsetup.c:3583 +#: src/cryptsetup.c:3670 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "Initialiser le rechiffrement LUKS2 uniquement dans les métadonnées." -#: src/cryptsetup.c:3584 +#: src/cryptsetup.c:3671 msgid "Resume initialized LUKS2 reencryption only." msgstr "Redémarrer uniquement le rechiffrement LUKS2 initialisé." -#: src/cryptsetup.c:3585 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3672 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "Réduire la taille des données du périphérique (déplace le décalage des données). DANGEREUX !" -#: src/cryptsetup.c:3586 +#: src/cryptsetup.c:3673 msgid "Maximal reencryption hotzone size." msgstr "Taille maximale de la zone chaude de rechiffrement." -#: src/cryptsetup.c:3587 +#: src/cryptsetup.c:3674 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "Rechiffre le type de résilience de la zone chaude (checksum,journal,none)" -#: src/cryptsetup.c:3588 +#: src/cryptsetup.c:3675 msgid "Reencryption hotzone checksums hash" msgstr "Rechiffrer le hachage des sommes de contrôle de la zone chaude" -#: src/cryptsetup.c:3589 +#: src/cryptsetup.c:3676 msgid "Override device autodetection of dm device to be reencrypted" msgstr "Outrepasser l'auto-détection du périphérique pour le périphérique dm à rechiffrer" -#: src/cryptsetup.c:3605 src/veritysetup.c:505 src/integritysetup.c:595 +#: src/cryptsetup.c:3692 src/veritysetup.c:515 src/integritysetup.c:615 msgid "[OPTION...] " msgstr "[OPTION...] " -#: src/cryptsetup.c:3656 src/veritysetup.c:539 src/integritysetup.c:606 +#: src/cryptsetup.c:3747 src/veritysetup.c:551 src/integritysetup.c:626 msgid "Argument missing." msgstr "Il manque l'argument ." -#: src/cryptsetup.c:3725 src/veritysetup.c:570 src/integritysetup.c:637 +#: src/cryptsetup.c:3817 src/veritysetup.c:582 src/integritysetup.c:660 msgid "Unknown action." msgstr "Action inconnue." -#: src/cryptsetup.c:3735 +#: src/cryptsetup.c:3827 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "Les options --refresh et --test-passphrase sont mutuellement exclusives." -#: src/cryptsetup.c:3740 +#: src/cryptsetup.c:3832 msgid "Option --deferred is allowed only for close command." msgstr "L'option --deferred est permise uniquement avec la commande close." -#: src/cryptsetup.c:3745 +#: src/cryptsetup.c:3837 msgid "Option --shared is allowed only for open of plain device." msgstr "L'option --shared est permise uniquement pour ouvrir un périphérique ordinaire." -#: src/cryptsetup.c:3750 src/integritysetup.c:654 +#: src/cryptsetup.c:3842 src/integritysetup.c:677 msgid "Option --allow-discards is allowed only for open operation." msgstr "L'option --allow-discards est permise uniquement pour une opération d'ouverture." -#: src/cryptsetup.c:3755 +#: src/cryptsetup.c:3847 msgid "Option --persistent is allowed only for open operation." msgstr "L'option --persistent est permise uniquement pour une opération d'ouverture." -#: src/cryptsetup.c:3760 +#: src/cryptsetup.c:3852 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "L'option --serialize-memory-hard-pbkdf est permise uniquement pour une opération d'ouverture." -#: src/cryptsetup.c:3765 +#: src/cryptsetup.c:3857 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "L'option --persistent n'est pas permise avec --test-passphrase." -#: src/cryptsetup.c:3775 +#: src/cryptsetup.c:3867 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2853,259 +2894,259 @@ "L'option --key-size est permise seulement avec les actions luksFormat, luksAddKey,\n" "open et benchmark. Pour limiter la lecture depuis un fichier de clé, utilisez --keyfile-size=(octets)." -#: src/cryptsetup.c:3781 +#: src/cryptsetup.c:3873 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "L'option --integrity est autorisée uniquement avec luksFormat (LUKS2)." -#: src/cryptsetup.c:3786 +#: src/cryptsetup.c:3878 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "L'option --integrity-no-wipe peut uniquement être utilisée pour une action de formatage avec l'extension d'intégrité." -#: src/cryptsetup.c:3792 +#: src/cryptsetup.c:3884 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "Les options --label et --subsystem sont permises uniquement pour les opérations luksFormat et config LUKS2." -#: src/cryptsetup.c:3798 +#: src/cryptsetup.c:3890 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "L'option --test-passphrase est autorisée uniquement pour ouvrir des périphériques LUKS, TCRYPT et BITLK." -#: src/cryptsetup.c:3803 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3895 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "La taille de la clé doit être un multiple de 8 bits" -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3901 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "Emplacement de clé non valide." -#: src/cryptsetup.c:3816 +#: src/cryptsetup.c:3908 msgid "Option --key-file takes precedence over specified key file argument." msgstr "L'option --key-file est prioritaire par rapport à un fichier de clé spécifié en argument." -#: src/cryptsetup.c:3823 src/veritysetup.c:582 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3915 src/veritysetup.c:594 src/integritysetup.c:686 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "Nombre négatif non autorisé pour l'option." -#: src/cryptsetup.c:3827 +#: src/cryptsetup.c:3919 msgid "Only one --key-file argument is allowed." msgstr "Un seul argument --key-file est autorisé." -#: src/cryptsetup.c:3831 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3923 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "Seule une des deux possibilités --use-[u]random est autorisée." -#: src/cryptsetup.c:3835 +#: src/cryptsetup.c:3927 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "L'option --use-[u]random est autorisée seulement avec luksFormat." -#: src/cryptsetup.c:3839 +#: src/cryptsetup.c:3931 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "L'option --uuid est autorisée seulement avec luksFormat et luksUUID." -#: src/cryptsetup.c:3843 +#: src/cryptsetup.c:3935 msgid "Option --align-payload is allowed only for luksFormat." msgstr "L'option --align-payload est autorisée uniquement avec luksFormat." -#: src/cryptsetup.c:3847 +#: src/cryptsetup.c:3939 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Les options --luks2-metadata-size et --opt-luks2-keyslots-size sont permises uniquement pour luksFormat avec LUKS2." -#: src/cryptsetup.c:3852 +#: src/cryptsetup.c:3944 msgid "Invalid LUKS2 metadata size specification." msgstr "Spécification de taille de métadonnées LUKS2 invalide." -#: src/cryptsetup.c:3856 +#: src/cryptsetup.c:3948 msgid "Invalid LUKS2 keyslots size specification." msgstr "Spécification de taille d'emplacements de clés LUKS2 invalide." -#: src/cryptsetup.c:3860 +#: src/cryptsetup.c:3952 msgid "Options --align-payload and --offset cannot be combined." msgstr "Les options --align-payload et --offset ne peuvent pas être combinées." -#: src/cryptsetup.c:3866 +#: src/cryptsetup.c:3958 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "L'option --skip est supportée uniquement pour ouvrir des périphériques ordinaires et loopaes." -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3965 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "L'option --offset est supportée uniquement pour ouvrir des périphériques ordinaires et loopaes, luksFormat et le rechiffrement de périphérique." -#: src/cryptsetup.c:3879 +#: src/cryptsetup.c:3971 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "Les options --tcrypt-hidden, --tcrypt-system ou --tcrypt-backup sont supportées seulement pour un périphérique TCRYPT." -#: src/cryptsetup.c:3884 +#: src/cryptsetup.c:3976 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "L'option --tcrypt-hidden ne peut pas être combinée avec --allow-discards." -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:3981 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "L'option --veracrypt est uniquement supportée pour un périphérique de type TCRYPT." -#: src/cryptsetup.c:3895 +#: src/cryptsetup.c:3987 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "Argument invalide fourni pour le paramètre --veracrypt-pim." -#: src/cryptsetup.c:3899 +#: src/cryptsetup.c:3991 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "L'option --veracrypt-pim est uniquement supportée pour un périphérique compatible avec VeraCrypt." -#: src/cryptsetup.c:3907 +#: src/cryptsetup.c:3999 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "L'option --veracrypt-query-pim est uniquement supportée pour un périphérique compatible avec VeraCrypt." -#: src/cryptsetup.c:3911 +#: src/cryptsetup.c:4003 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "Les options --veracrypt-pim et --veracrypt-query-pim sont mutuellement exclusives." -#: src/cryptsetup.c:3918 +#: src/cryptsetup.c:4010 msgid "Option --priority can be only ignore/normal/prefer." msgstr "L'option --priority peut uniquement être ignore/normal/prefer." -#: src/cryptsetup.c:3923 src/cryptsetup.c:3961 +#: src/cryptsetup.c:4015 src/cryptsetup.c:4053 msgid "Keyslot specification is required." msgstr "Une spécification d'emplacement de clé est requise." -#: src/cryptsetup.c:3928 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4020 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "La fonction de dérivation d'une clé basée sur un mot de passe (PBKDF = Password-Based Key Derivation Function) peut uniquement être pbkdf2 ou argon2i/argon2id." -#: src/cryptsetup.c:3933 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4025 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "Les itérations forcées de PBKDF ne peuvent pas être combinées avec l'option de temps d'itération." -#: src/cryptsetup.c:3939 +#: src/cryptsetup.c:4031 msgid "Sector size option is not supported for this command." msgstr "L'option de taille de secteur n'est pas supportée pour cette commande." -#: src/cryptsetup.c:3951 +#: src/cryptsetup.c:4043 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." msgstr "L'option des secteurs IV (vecteur d'initialisation) de grande taille est supportée uniquement à l'ouverture de périphériques de type simple avec une taille de secteur supérieure à 512 octets." -#: src/cryptsetup.c:3956 +#: src/cryptsetup.c:4048 msgid "Key size is required with --unbound option." msgstr "La taille de clé est requise avec l'option --unbound." -#: src/cryptsetup.c:3966 +#: src/cryptsetup.c:4058 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "L'option --unbound peut uniquement être utilisée avec les actions luksAddKey et luksDump." -#: src/cryptsetup.c:3971 +#: src/cryptsetup.c:4063 msgid "Option --refresh may be used only with open action." msgstr "L'option --refresh peut uniquement être utilisée avec l'action open." -#: src/cryptsetup.c:3982 +#: src/cryptsetup.c:4074 msgid "Cannot disable metadata locking." msgstr "Impossible de désactiver le verrouillage des métadonnées." -#: src/cryptsetup.c:3992 +#: src/cryptsetup.c:4085 msgid "Invalid max reencryption hotzone size specification." msgstr "La spécification de la taille maximale de la zone chaude de rechiffrement est invalide." -#: src/cryptsetup.c:4000 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4093 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "La taille de périphérique spécifiée est invalide." -#: src/cryptsetup.c:4003 +#: src/cryptsetup.c:4096 msgid "Maximum device reduce size is 1 GiB." msgstr "La taille maximum réduite pour le périphérique est 1 GiB." -#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4099 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "La taille réduite doit être un multiple d'un secteur de 512 octets." -#: src/cryptsetup.c:4011 +#: src/cryptsetup.c:4104 msgid "Invalid data size specification." msgstr "La taille des données spécifiée est invalide." -#: src/cryptsetup.c:4016 +#: src/cryptsetup.c:4109 msgid "Reduce size overflow." msgstr "Débordement de la taille de réduction." -#: src/cryptsetup.c:4020 +#: src/cryptsetup.c:4113 msgid "LUKS2 decryption requires option --header." msgstr "Le déchiffrement LUKS2 requiert l'option --header." -#: src/cryptsetup.c:4024 +#: src/cryptsetup.c:4117 msgid "Device size must be multiple of 512 bytes sector." msgstr "La taille du périphérique doit être un multiple d'un secteur de 512 octets." -#: src/cryptsetup.c:4028 +#: src/cryptsetup.c:4121 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "Les options --reduce-device-size et --data-size ne peuvent pas être combinées." -#: src/cryptsetup.c:4032 +#: src/cryptsetup.c:4125 msgid "Options --device-size and --size cannot be combined." msgstr "Les options --device-size et --size ne peuvent pas être combinées." -#: src/cryptsetup.c:4036 +#: src/cryptsetup.c:4129 msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." msgstr "Les options --keyslot-cipher et --keyslot-key-size doivent être utilisées ensembles." -#: src/veritysetup.c:67 +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "Chaîne d'aléa spécifiée invalide." -#: src/veritysetup.c:98 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "Impossible de créer l'image de hachage %s en écriture." -#: src/veritysetup.c:108 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "Impossible de créer l'image FEC %s en écriture." -#: src/veritysetup.c:182 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "Chaîne de hachage racine invalide." -#: src/veritysetup.c:190 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "Fichier de signature %s invalide." -#: src/veritysetup.c:197 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "Impossible de lire le fichier de signature %s." -#: src/veritysetup.c:397 +#: src/veritysetup.c:406 msgid " " msgstr " " -#: src/veritysetup.c:397 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:492 msgid "format device" msgstr "formater le périphérique" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid " " msgstr " " -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid "verify device" msgstr "vérifier le périphérique" -#: src/veritysetup.c:399 +#: src/veritysetup.c:408 msgid " " msgstr " " -#: src/veritysetup.c:401 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:495 msgid "show active device status" msgstr "afficher le statut du périphérique actif" -#: src/veritysetup.c:402 +#: src/veritysetup.c:411 msgid "" msgstr "" -#: src/veritysetup.c:402 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:496 msgid "show on-disk information" msgstr "afficher les informations sur le disque" -#: src/veritysetup.c:421 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3120,7 +3161,7 @@ " est le périphérique contenant les données de vérification\n" " hachage du nœud racine sur \n" -#: src/veritysetup.c:428 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3131,134 +3172,139 @@ "Paramètres compilés par défaut dans dm-verity :\n" "\tHachage: %s, Bloc données (octets): %u, Bloc hachage (octets): %u, Taille aléa: %u, Format hachage: %u\n" -#: src/veritysetup.c:471 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "Ne pas utiliser le superbloc de verity" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Type de format (1: normal ; 0: Chrome OS)" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "number" msgstr "nombre" -#: src/veritysetup.c:473 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "Taille de bloc sur le périphérique de données" -#: src/veritysetup.c:474 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "Taille de bloc sur le périphérique de hachage" -#: src/veritysetup.c:475 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "Octets de parité FEC" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "Le nombre de blocs dans le fichier de données" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "blocks" msgstr "blocs" -#: src/veritysetup.c:477 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "Chemin vers le périphérique avec les données de correction d'erreurs" -#: src/veritysetup.c:477 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:566 msgid "path" msgstr "chemin" -#: src/veritysetup.c:478 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "Décalage de départ sur le périphérique de hachage" -#: src/veritysetup.c:479 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "Décalage de départ sur le périphérique FEC" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "Algorithme de hachage" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "string" msgstr "chaîne" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "Salt" msgstr "Aléa" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "hex string" msgstr "chaîne hexa" -#: src/veritysetup.c:483 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "Chemin du fichier de signature du hachage racine" -#: src/veritysetup.c:484 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "Redémarrer le noyau si une corruption est détectée" -#: src/veritysetup.c:485 +#: src/veritysetup.c:495 msgid "Panic kernel if corruption is detected" msgstr "Faire paniquer le noyau si une corruption est détectée" -#: src/veritysetup.c:486 +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "Ignore la corruption, elle est seulement enregistrée dans le journal" -#: src/veritysetup.c:487 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "Ne pas vérifier les blocs mis à zéro" -#: src/veritysetup.c:488 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "Vérifier le bloc de données uniquement à la première lecture" -#: src/veritysetup.c:588 +#: src/veritysetup.c:600 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "L'option --ignore-corruption, --restart-on-corruption ou --ignore-zero-blocks est seulement permise pour une opération d'ouverture." -#: src/veritysetup.c:593 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "L'option --root-hash-signature peut uniquement être utilisée avec l'opération open." -#: src/veritysetup.c:598 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "Les options --ignore-corruption et --restart-on-corruption ne peuvent être utilisées ensembles." -#: src/veritysetup.c:603 +#: src/veritysetup.c:615 msgid "Option --panic-on-corruption and --restart-on-corruption cannot be used together." msgstr "Les options --panic-on-corruption et --restart-on-corruption ne peuvent être utilisées ensembles." -#: src/integritysetup.c:84 src/utils_password.c:305 +#: src/integritysetup.c:85 +#, c-format +msgid "Invalid key size. Maximum is %u bytes." +msgstr "La taille de la clé n'est pas valide. Le maximum est %u octets." + +#: src/integritysetup.c:95 src/utils_password.c:339 #, c-format msgid "Cannot read keyfile %s." msgstr "Impossible de lire le fichier de clé %s." -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:99 src/utils_password.c:344 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "Échec à la lecture de %d octets du fichier de clé %s." -#: src/integritysetup.c:254 +#: src/integritysetup.c:266 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Formaté avec une taille de balise de %u, intégrité interne %s.\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:492 src/integritysetup.c:496 msgid "" msgstr "" -#: src/integritysetup.c:480 +#: src/integritysetup.c:493 msgid " " msgstr " " -#: src/integritysetup.c:502 +#: src/integritysetup.c:515 #, c-format msgid "" "\n" @@ -3269,403 +3315,409 @@ " est le périphérique à créer sous %s\n" " est le périphérique contenant les données avec les balises d'intégrité\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 "" "\n" "Paramètres compilés par défaut dans dm-integrity :\n" "\tAlgorithme de somme de contrôle : %s\n" +"\tTaille maximale du fichier de clé : %dko\n" -#: src/integritysetup.c:549 +#: src/integritysetup.c:566 msgid "Path to data device (if separated)" msgstr "Chemin vers le périphérique de données (si séparé)" -#: src/integritysetup.c:551 +#: src/integritysetup.c:568 msgid "Journal size" msgstr "Taille du journal" -#: src/integritysetup.c:552 +#: src/integritysetup.c:569 msgid "Interleave sectors" msgstr "Secteurs d'entrelacement" -#: src/integritysetup.c:553 +#: src/integritysetup.c:570 msgid "Journal watermark" msgstr "Filigrane du journal" -#: src/integritysetup.c:553 +#: src/integritysetup.c:570 msgid "percent" msgstr "pourcent" -#: src/integritysetup.c:554 +#: src/integritysetup.c:571 msgid "Journal commit time" msgstr "Temps pour écrire le journal" -#: src/integritysetup.c:554 src/integritysetup.c:556 +#: src/integritysetup.c:571 src/integritysetup.c:573 msgid "ms" msgstr "ms" -#: src/integritysetup.c:555 +#: src/integritysetup.c:572 msgid "Number of 512-byte sectors per bit (bitmap mode)." msgstr "Nombre de secteurs de 512 octets par bit (mode champ de bit)." -#: src/integritysetup.c:556 +#: src/integritysetup.c:573 msgid "Bitmap mode flush time" msgstr "Temps de purge du mode champ de bit" -#: src/integritysetup.c:557 +#: src/integritysetup.c:574 msgid "Tag size (per-sector)" msgstr "Taille de balise (par secteur)" -#: src/integritysetup.c:558 +#: src/integritysetup.c:575 msgid "Sector size" msgstr "Taille de secteur" -#: src/integritysetup.c:559 +#: src/integritysetup.c:576 msgid "Buffers size" msgstr "Taille des tampons" -#: src/integritysetup.c:561 +#: src/integritysetup.c:578 msgid "Data integrity algorithm" msgstr "Algorithme d'intégrité des données" -#: src/integritysetup.c:562 +#: src/integritysetup.c:579 msgid "The size of the data integrity key" msgstr "La taille de la clé d'intégrité des données" -#: src/integritysetup.c:563 +#: src/integritysetup.c:580 msgid "Read the integrity key from a file" msgstr "Lire la clef d'intégrité depuis un fichier" -#: src/integritysetup.c:565 +#: src/integritysetup.c:582 msgid "Journal integrity algorithm" msgstr "Algorithme d'intégrité du journal" -#: src/integritysetup.c:566 +#: src/integritysetup.c:583 msgid "The size of the journal integrity key" msgstr "La taille de la clé du journal d'intégrité" -#: src/integritysetup.c:567 +#: src/integritysetup.c:584 msgid "Read the journal integrity key from a file" msgstr "Lire la clé du journal d'intégrité depuis un fichier" -#: src/integritysetup.c:569 +#: src/integritysetup.c:586 msgid "Journal encryption algorithm" msgstr "Algorithme de chiffrement du journal" -#: src/integritysetup.c:570 +#: src/integritysetup.c:587 msgid "The size of the journal encryption key" msgstr "La taille de la clé de chiffrement du journal" -#: src/integritysetup.c:571 +#: src/integritysetup.c:588 msgid "Read the journal encryption key from a file" msgstr "Lire la clé de chiffrement du journal depuis un fichier" -#: src/integritysetup.c:574 +#: src/integritysetup.c:591 msgid "Recovery mode (no journal, no tag checking)" msgstr "Mode récupération (pas de journal, pas de vérification des balises)" -#: src/integritysetup.c:575 +#: src/integritysetup.c:592 msgid "Use bitmap to track changes and disable journal for integrity device" msgstr "Utiliser un champ de bits pour garder une trace des changements et désactiver le journal sur le périphérique d'intégrité" -#: src/integritysetup.c:576 +#: src/integritysetup.c:593 msgid "Recalculate initial tags automatically." msgstr "Recalculer les balises initiales automatiquement." -#: src/integritysetup.c:649 +#: src/integritysetup.c:596 +msgid "Do not protect superblock with HMAC (old kernels)" +msgstr "Ne pas protéger le superbloc avec HMAC (anciens noyaux)" + +#: src/integritysetup.c:597 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "Autoriser le recalcul des volumes avec des clés HMAC (anciens noyaux)" + +#: src/integritysetup.c:672 msgid "Option --integrity-recalculate can be used only for open action." msgstr "L'option --integrity-recalculate peut uniquement être utilisée avec l'action open." -#: 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 "Les options --journal-size, --interleave-sectors, --sector-size, --tag-size et --no-wipe peuvent uniquement être utilisée avec l'action de format." -#: src/integritysetup.c:675 +#: src/integritysetup.c:698 msgid "Invalid journal size specification." msgstr "La spécification de la taille du journal est invalide." -#: src/integritysetup.c:680 +#: src/integritysetup.c:703 msgid "Both key file and key size options must be specified." msgstr "Les options du fichier de clé et de la taille de la clé doivent être spécifiées toutes les deux." -#: src/integritysetup.c:683 -msgid "Integrity algorithm must be specified if integrity key is used." -msgstr "L'algorithme d'intégrité doit être spécifié si la clé d'intégrité est utilisée." - -#: src/integritysetup.c:688 +#: src/integritysetup.c:708 msgid "Both journal integrity key file and key size options must be specified." msgstr "Les options du fichier de clé de l'intégrité du journal et de la taille de la clé doivent être spécifiées toutes les deux." -#: src/integritysetup.c:691 +#: src/integritysetup.c:711 msgid "Journal integrity algorithm must be specified if journal integrity key is used." msgstr "L'algorithme d'intégrité du journal doit être spécifié si la clé d'intégrité du journal est utilisée." -#: src/integritysetup.c:696 +#: src/integritysetup.c:716 msgid "Both journal encryption key file and key size options must be specified." msgstr "Les options du fichier de clé de chiffrement du journal et de la taille de la clé doivent être spécifiées toutes les deux." -#: src/integritysetup.c:699 +#: src/integritysetup.c:719 msgid "Journal encryption algorithm must be specified if journal encryption key is used." msgstr "L'algorithme de chiffrement du journal doit être spécifié si la clé de chiffrement du journal est utilisée." -#: src/integritysetup.c:703 +#: src/integritysetup.c:723 msgid "Recovery and bitmap mode options are mutually exclusive." msgstr "Les options de mode récupération et champ de bits sont mutuellement exclusives." -#: src/integritysetup.c:707 +#: src/integritysetup.c:727 msgid "Journal options cannot be used in bitmap mode." msgstr "Les options de journal ne peuvent pas être utilisées en mode champ de bits." -#: src/integritysetup.c:711 +#: src/integritysetup.c:731 msgid "Bitmap options can be used only in bitmap mode." msgstr "Les options de champ de bits peuvent uniquement être utilisées en mode champ de bits." -#: src/cryptsetup_reencrypt.c:172 +#: src/cryptsetup_reencrypt.c:190 msgid "Reencryption already in-progress." msgstr "Re-chiffrement déjà en cours." -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "Impossible d'ouvrir exclusivement %s : périphérique utilisé." -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "La réservation de la mémoire alignée a échoué." -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "Impossible de lire le périphérique %s." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "Marque le périphérique LUKS1 %s comme inutilisable." -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "Activation du fanion de re-chiffrement hors-ligne de LUKS2 sur le périphérique %s." -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "Impossible d'écrire le périphérique %s." -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "Impossible d'écrire le journal de re-chiffrement." -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "Impossible de lire le journal de re-chiffrement." -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "Fichier journal %s existe. Reprise du re-chiffrement.\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "Activation du périphérique temporaire en utilisant l'ancien en-tête LUKS." -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "Activation du périphérique temporaire un utilisant le nouvel en-tête LUKS." -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "Échec de l'activation des périphériques temporaires." -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "Impossible de définir les offsets des données." -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "Impossible de définir la taille des métadonnées." -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "Nouvel en-tête LUKS créé pour le périphérique %s." -#: 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 "Cette version de cryptsetup-reencrypt ne gère pas le nouveau type de jeton interne %s." -#: src/cryptsetup_reencrypt.c:655 +#: src/cryptsetup_reencrypt.c:673 msgid "Failed to read activation flags from backup header." msgstr "Échec lors de la lecture des fanions d'activation depuis l'en-tête de sauvegarde." -#: src/cryptsetup_reencrypt.c:659 +#: src/cryptsetup_reencrypt.c:677 msgid "Failed to write activation flags to new header." msgstr "Échec lors de l'écriture des fanions d'activation dans le nouvel en-tête." -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "Échec lors de la lecture des exigences de l'en-tête de sauvegarde." -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "Sauvegarde de l'en-tête %s du périphérique %s créée." -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "La création de la sauvegarde des en-têtes LUKS a échoué." -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "Impossible de rétablir l'en-tête %s sur le périphérique %s." -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "En-tête %s rétabli sur le périphérique %s." -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "Impossible d'ouvrir le périphérique LUKS temporaire." -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "Impossible d'obtenir la taille du périphérique." -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "Erreur E/S pendant le re-chiffrement." -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "Le UUID fourni est invalide." -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "Impossible d'ouvrir le journal de re-chiffrement." -#: 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 "Pas de déchiffrement en cours. Le UUID fourni ne peut être utilisé que pour reprendre un déchiffrement suspendu." -#: src/cryptsetup_reencrypt.c:1504 +#: src/cryptsetup_reencrypt.c:1522 #, c-format msgid "Changed pbkdf parameters in keyslot %i." msgstr "Les paramètres pbkdf ont été changés dans l'emplacement de clé %i." -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "Taille de bloc de re-chiffrement" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "MiB" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "Ne pas changer la clé, pas de re-chiffrement de la zone de donnée" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "Lire la nouvelle clé (maîtresse) du volume depuis un fichier" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "Temps d'itération de PBKDF2 pour LUKS (en ms)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "Utiliser direct-io pour accéder aux périphériques" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "Utiliser fsync après chaque bloc" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "Mettre le journal à jour après chaque bloc" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "Utiliser uniquement cet emplacement (les autres seront désactivés)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "Créer un nouvel en-tête sur le périphérique non chiffré" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "Déchiffrer le périphérique de manière permanente (supprime le chiffrement)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "Le UUID utilisé pour poursuivre le déchiffrement" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Type de métadonnées LUKS: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[OPTION...] " -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "Le re-chiffrement va changer : %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "clé de volume" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "change hachage en " -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr ", change chiffrement en " -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "Argument requis." -#: 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 "Seules les valeurs entre 1 MiB et 64 MiB sont permises pour la taille des blocs de re-chiffrement." -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "La taille maximum réduite pour le périphérique est 64 MiB." -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "L'option --new doit être utilisée avec --reduce-device-size ou --header." -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "L'option --keep-key ne peut être utilisée que avec --hash, --iter-time ou --pbkdf-force-iterations²." -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "L'option --new ne peut pas être utilisée avec --decrypt." -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "L'option --decrypt est incompatible avec les paramètres spécifiés." -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "L'option --uuid ne peut être utilisée qu'avec --decrypt." -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Type luks invalide. Utilisez « luks », « luks1 » ou « luks2 »." @@ -3706,32 +3758,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "La commande a échoué avec le code %i (%s).\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "Emplacement de clef %i créé." -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "Emplacement de clé %i déverrouillé." -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "Emplacement de clé %i supprimé." -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "Jeton %i créé." -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "Jeton %i supprimé." -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3739,55 +3791,55 @@ "\n" "Effacement interrompu." -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "ATTENTION: Le périphérique %s contient déjà une signature pour une partition « %s ».\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "ATTENTION: Le périphérique %s contient déjà une signature pour un superblock « %s ».\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "Impossible d'initialiser les sondes de la signature du périphérique." -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "Impossible d'exécuter « stat » sur le périphérique %s." -#: 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 "Le périphérique %s est utilisé. Impossible de continuer avec l'opération de formatage." -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "Impossible d'ouvrir le fichier %s en mode lecture/écriture." -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "La signature de partition « %s » existante (offset: % octets) sur le périphérique %s sera effacée." -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "La signature de superbloc « %s » existante (offset: % octets) sur le périphérique %s sera effacée." -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "Impossible d'effacer la signature du périphérique." -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "Impossible de sonder le périphérique %s pour une signature." -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3795,7 +3847,7 @@ "\n" "Rechiffrement interrompu." -#: src/utils_password.c:43 src/utils_password.c:75 +#: src/utils_password.c:43 src/utils_password.c:76 #, c-format msgid "Cannot check password quality: %s" msgstr "Ne peut vérifier la qualité du mot de passe : %s" @@ -3814,46 +3866,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "Échec de la vérification de la qualité du mot de passe : Mauvais mot de passe (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:228 src/utils_password.c:242 msgid "Error reading passphrase from terminal." msgstr "Erreur de lecture de la phrase secrète depuis la console." -#: src/utils_password.c:206 +#: src/utils_password.c:240 msgid "Verify passphrase: " msgstr "Vérifiez la phrase secrète : " -#: src/utils_password.c:213 +#: src/utils_password.c:247 msgid "Passphrases do not match." msgstr "Les phrases secrètes ne sont pas identiques." -#: src/utils_password.c:250 +#: src/utils_password.c:284 msgid "Cannot use offset with terminal input." msgstr "Le décalage n'est pas possible si l'entrée provient de la console." -#: src/utils_password.c:253 +#: src/utils_password.c:287 #, c-format msgid "Enter passphrase: " msgstr "Saisissez la phrase secrète : " -#: src/utils_password.c:256 +#: src/utils_password.c:290 #, c-format msgid "Enter passphrase for %s: " msgstr "Saisissez la phrase secrète pour %s : " -#: src/utils_password.c:287 +#: src/utils_password.c:321 msgid "No key available with this passphrase." msgstr "Aucune clé disponible avec cette phrase secrète." -#: src/utils_password.c:289 +#: src/utils_password.c:323 msgid "No usable keyslot is available." msgstr "Aucun emplacement de clé utilisable est disponible." -#: src/utils_password.c:328 +#: src/utils_password.c:365 #, c-format msgid "Cannot open keyfile %s for write." msgstr "Impossible d'ouvrir le fichier de clé %s en écriture." -#: src/utils_password.c:335 +#: src/utils_password.c:372 #, c-format msgid "Cannot write to keyfile %s." msgstr "Impossible d'écrire dans le fichier de clé %s." @@ -3896,6 +3948,15 @@ msgid "Failed to write JSON file." msgstr "Erreur lors de l'écriture du fichier JSON." +#~ msgid "WARNING: Locking directory %s/%s is missing!\n" +#~ msgstr "ATTENTION: Le répertoire verrou %s/%s est manquant !\n" + +#~ msgid "Invalid size parameters for verity device." +#~ msgstr "Mauvais paramètres de taille pour le périphérique verity." + +#~ msgid "Integrity algorithm must be specified if integrity key is used." +#~ msgstr "L'algorithme d'intégrité doit être spécifié si la clé d'intégrité est utilisée." + #~ msgid "Wrong key size." #~ msgstr "Mauvaise taille de clé." diff -Nru cryptsetup-2.3.4/po/ja.po cryptsetup-2.3.6/po/ja.po --- cryptsetup-2.3.4/po/ja.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/ja.po 2021-05-28 04:57:08.000000000 -0500 @@ -1,14 +1,14 @@ # Japanese messages for cryptsetup. # Copyright (C) 2019, 2020 Free Software Foundation, Inc. # This file is put in the public domain, to the extent permitted under applicable law. -# Hiroshi Takekawa , , 2019, 2020 +# Hiroshi Takekawa , , 2019, 2020, 2021 # msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.4-rc0\n" +"Project-Id-Version: cryptsetup 2.3.6-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-08-27 21:34+0200\n" -"PO-Revision-Date: 2020-09-01 18:35+0900\n" +"POT-Creation-Date: 2021-05-21 17:33+0200\n" +"PO-Revision-Date: 2021-05-23 20:54+0900\n" "Last-Translator: Hiroshi Takekawa \n" "Language-Team: Japanese \n" "Language: ja\n" @@ -17,62 +17,62 @@ "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/libdevmapper.c:405 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "device-mapper を初期化できません、non-root で実行します。" -#: lib/libdevmapper.c:408 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "device-mapper を初期化できません。dm_mod モジュールはロードされてますか?" -#: lib/libdevmapper.c:1149 +#: lib/libdevmapper.c:1180 msgid "Requested deferred flag is not supported." msgstr "指定された延期フラグはサポートされていません。" -#: lib/libdevmapper.c:1216 +#: lib/libdevmapper.c:1249 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "デバイス %s の DM-UUID は短縮されています。" -#: lib/libdevmapper.c:1547 +#: lib/libdevmapper.c:1580 msgid "Unknown dm target type." msgstr "不明な dm target タイプです。" -#: lib/libdevmapper.c:1660 lib/libdevmapper.c:1665 lib/libdevmapper.c:1725 -#: lib/libdevmapper.c:1728 +#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766 +#: lib/libdevmapper.c:1769 msgid "Requested dm-crypt performance options are not supported." msgstr "指定された dm-crypt パフォーマンスオプションはサポートされていません。" -#: lib/libdevmapper.c:1672 lib/libdevmapper.c:1676 +#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "指定された dm-verity のデータ破壊時の対応についてのオプションはサポートされていません。" -#: lib/libdevmapper.c:1680 +#: lib/libdevmapper.c:1721 msgid "Requested dm-verity FEC options are not supported." msgstr "指定された dm-verity の誤り訂正(FEC)オプションはサポートされていません。" -#: lib/libdevmapper.c:1684 +#: lib/libdevmapper.c:1725 msgid "Requested data integrity options are not supported." msgstr "指定されたデータの無改ざん確認のオプションはサポートされていません。" -#: lib/libdevmapper.c:1686 +#: lib/libdevmapper.c:1727 msgid "Requested sector_size option is not supported." msgstr "指定された sector_size オプションはサポートされていません。" -#: lib/libdevmapper.c:1691 +#: lib/libdevmapper.c:1732 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "指定された改ざん確認タグの自動再計算はサポートされていません。" -#: lib/libdevmapper.c:1695 lib/libdevmapper.c:1731 lib/libdevmapper.c:1734 +#: lib/libdevmapper.c:1736 lib/libdevmapper.c:1772 lib/libdevmapper.c:1775 #: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Discard/TRIM はサポートしていません。" -#: lib/libdevmapper.c:1699 +#: lib/libdevmapper.c:1740 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "要求された dm-integrity のビットマップモードはサポートされていません。" -#: lib/libdevmapper.c:2663 +#: lib/libdevmapper.c:2713 #, c-format msgid "Failed to query dm-%s segment." msgstr "dm-%s のクエリーに失敗しました。" @@ -114,7 +114,7 @@ msgid "Cannot initialize crypto backend." msgstr "暗号バックエンドの初期化ができません。" -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "ハッシュアルゴリズム %s がサポートされていません。" @@ -128,7 +128,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "デバイスタイプがわかりません。互換性のないデバイスのアクティベーションをしようとしていませんか?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "この操作は LUKS デバイスでしかサポートされていません。" @@ -136,7 +136,7 @@ msgid "This operation is supported only for LUKS2 device." msgstr "この操作は LUKS2 デバイスでしかサポートされていません。" -#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2347 msgid "All key slots full." msgstr "キースロットがいっぱいです。" @@ -150,7 +150,7 @@ msgid "Key slot %d is full, please select another one." msgstr "キースロット %d は使われています。別の番号を選んでください。" -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "デバイスサイズが論理ブロックサイズのアライメントに合いません。" @@ -159,7 +159,7 @@ msgid "Header detected but device %s is too small." msgstr "ヘッダが検出されましたがデバイス %s が小さすぎます。" -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "この操作はこのデバイスタイプではサポートされていません。" @@ -167,17 +167,13 @@ 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 #, c-format msgid "Unsupported LUKS version %d." msgstr "LUKS バージョン %d はサポートされていません。" -#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 -msgid "Detached metadata device is not supported for this crypt type." -msgstr "分離したメタデータデバイスはこの暗号タイプではサポートされていません。" - -#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628 -#: lib/setup.c:2777 lib/setup.c:4517 +#: lib/setup.c:1427 lib/setup.c:2547 lib/setup.c:2619 lib/setup.c:2631 +#: lib/setup.c:2785 lib/setup.c:4532 #, c-format msgid "Device %s is not active." msgstr "デバイス %s はアクティブではありません。" @@ -191,7 +187,7 @@ msgid "Invalid plain crypt parameters." msgstr "不正な plain crypt のパラメータ。" -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 msgid "Invalid key size." msgstr "不正なキーサイズ。" @@ -199,12 +195,16 @@ msgid "UUID is not supported for this crypt type." msgstr "UUID はこの暗号タイプではサポートされていません。" +#: lib/setup.c:1539 lib/setup.c:1959 +msgid "Detached metadata device is not supported for this crypt type." +msgstr "分離したメタデータデバイスはこの暗号タイプではサポートされていません。" + #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1238 src/cryptsetup.c:3945 +#: src/cryptsetup.c:1296 src/cryptsetup.c:4037 msgid "Unsupported encryption sector size." msgstr "サポートされていない暗号化セクタサイズです。" -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "デバイスサイズが要求されたセクタサイズのアライメントに合いません。" @@ -248,8 +248,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "警告: LUKS2 キースロット領域サイズが % バイトに変更されました。\n" -#: lib/setup.c:1882 lib/utils_device.c:834 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:2358 lib/luks2/luks2_reencrypt.c:3383 #, c-format msgid "Device %s is too small." msgstr "デバイス %s のサイズが小さすぎます。" @@ -282,16 +282,16 @@ msgid "Can't format VERITY without device." msgstr "VERITY としてフォーマットするにはデバイスが必要です。" -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "VERITY ハッシュタイプ %d はサポートしていません。" -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "サポートしていない VERITY ブロックサイズです。" -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "サポートしていない VERITY ハッシュオフセットです。" @@ -321,236 +321,236 @@ msgid "Unknown crypt device type %s requested." msgstr "不明な暗号デバイスタイプ %s が指定されました。" -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "デバイス %s のパラメータはサポートしていません。" -#: 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:2410 +#: lib/luks2/luks2_reencrypt.c:2753 #, c-format msgid "Mismatching parameters on device %s." msgstr "デバイス %s のパラメータがミスマッチしています。" -#: lib/setup.c:2661 +#: lib/setup.c:2664 msgid "Crypt devices mismatch." msgstr "Crypt デバイスが一致しません。" -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3161 #, c-format msgid "Failed to reload device %s." msgstr "デバイス %s のリロードに失敗しました。" -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "デバイス %s のサスペンドに失敗しました。" -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3096 lib/luks2/luks2_reencrypt.c:3165 #, c-format msgid "Failed to resume device %s." msgstr "デバイス %s のリジュームに失敗しました。" -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "デバイス %s のリロード中に致命的なエラー(デバイス %s の上で)。" -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "デバイス %s を dm-error にスイッチできません。" -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "ループデバイスはリサイズできません。" -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "デバイスの UUID を本当に変更してもいいですか?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "ヘッダのバックアップファイルの中味が LUKS ヘッダと互換性がありません。" -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "ボリューム %s はアクティブではありません。" -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "ボリューム %s は既に停止されています。" -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "デバイス %s の停止はサポートされていません。" -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "デバイス %s 停止中にエラー。" -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "ボリューム %s は停止されていません。" - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "デバイス %s は再開をサポートしていません。" -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "デバイス %s の再開中にエラー。" -#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4314 lib/setup.c:4327 -#: lib/setup.c:4335 lib/setup.c:4348 lib/setup.c:4698 lib/setup.c:5844 +#: lib/setup.c:3164 lib/setup.c:3212 lib/setup.c:3282 +#, c-format +msgid "Volume %s is not suspended." +msgstr "ボリューム %s は停止されていません。" + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5862 msgid "Volume key does not match the volume." msgstr "ボリュームキーがボリュームに合いません。" -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "キースロットを追加できません。全てのスロットが無効でボリュームキーが渡されませんでした。" -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "新しいキースロットを交換できませんでした。" -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "キースロット %d は不正です。" -#: lib/setup.c:3675 src/cryptsetup.c:1584 src/cryptsetup.c:1929 +#: lib/setup.c:3679 src/cryptsetup.c:1634 src/cryptsetup.c:1979 #, c-format msgid "Keyslot %d is not active." msgstr "キースロット %d は非アクティブです。" -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "デバイスヘッダがデータ領域に重なっています。" -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "既に再暗号化中です。デバイスをアクティベートできません。" -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2253 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2852 msgid "Failed to get reencryption lock." msgstr "再暗号化ロックを取得できません。" -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2871 msgid "LUKS2 reencryption recovery failed." msgstr "LUKS2 の再暗号化は既に初期化されました。" -#: lib/setup.c:4127 lib/setup.c:4384 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "デバイスタイプが正しく初期化されていません。" -#: lib/setup.c:4175 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "デバイス %s は既に存在します。" -#: lib/setup.c:4182 +#: lib/setup.c:4192 #, c-format msgid "Cannot use device %s, name is invalid or still in use." msgstr "デバイス %s を使えません。名前が不正か使用中です。" -#: lib/setup.c:4301 +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "正しくないボリュームキーがプレーンデバイスに指定されました。" -#: lib/setup.c:4410 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "正しくないルートハッシュが verity デバイスに指定されました。" -#: lib/setup.c:4417 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "ルートハッシュ署名が必要です。" -#: lib/setup.c:4426 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "署名をカーネルに渡すのに必要なカーネルキーリングをカーネルがサポートしていません。" -#: lib/setup.c:4443 lib/setup.c:5920 +#: lib/setup.c:4458 lib/setup.c:5938 msgid "Failed to load key in kernel keyring." msgstr "キーをカーネルキーリングにロードできません。" -#: lib/setup.c:4496 lib/setup.c:4512 lib/luks2/luks2_json_metadata.c:2306 -#: src/cryptsetup.c:2676 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2744 #, c-format msgid "Device %s is still in use." msgstr "デバイス %s は使用中です。" -#: lib/setup.c:4521 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "デバイス %s は不正です。" -#: lib/setup.c:4637 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "ボリュームキーのバッファが小さすぎます。" -#: lib/setup.c:4645 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "プレーンデバイス向けのボリュームキーが取得できません。" -#: lib/setup.c:4662 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "verity デバイスのルートハッシュが読み出せません。" -#: lib/setup.c:4664 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "この操作は %s 暗号化デバイスではサポートされていません。" -#: lib/setup.c:4870 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "このデバイスタイプはダンプ操作をサポートしていません。" -#: lib/setup.c:5195 +#: lib/setup.c:5213 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "データオフセットが %u バイトの倍数である必要があります。" -#: lib/setup.c:5480 +#: lib/setup.c:5498 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "使用中のデバイス %s を変換できません。" -#: lib/setup.c:5777 +#: lib/setup.c:5795 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "新しいボリュームキー向けのキースロット %u を確保できません。" -#: lib/setup.c:5850 +#: lib/setup.c:5868 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "デフォルト LUKS2 キースロットパラメータを初期化できません。" -#: lib/setup.c:5856 +#: lib/setup.c:5874 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "ダイジェストするためのキースロット %d が確保できません。" -#: lib/setup.c:5987 +#: lib/setup.c:6005 msgid "Kernel keyring is not supported by the kernel." msgstr "カーネルがカーネルキーリングをサポートしていません。" -#: lib/setup.c:5997 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6015 lib/luks2/luks2_reencrypt.c:2968 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "キーリングからパスフレーズが読み出せません (エラー %d)。" -#: lib/setup.c:6021 +#: lib/setup.c:6039 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "グローバル memory-hard アクセス直列化ロックが取れません。" @@ -578,8 +578,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "指定されたキーファイルオフセットにシークできません。" -#: 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 msgid "Out of memory while reading passphrase." msgstr "パスフレーズ読み込み中にメモリが不足しました。" @@ -599,56 +599,56 @@ msgid "Cannot read requested amount of data." msgstr "指定されたサイズのデータを読み込めません。" -#: 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 #, c-format msgid "Device %s does not exist or access denied." msgstr "デバイス %s は存在しないかアクセスが拒否されました。" -#: lib/utils_device.c:197 +#: lib/utils_device.c:200 #, c-format msgid "Device %s is not compatible." msgstr "デバイス %s は互換性がありません。" -#: lib/utils_device.c:532 +#: lib/utils_device.c:544 #, c-format msgid "Ignoring bogus optimal-io size for data device (%u bytes)." msgstr "データデバイスのおかしな(bogus) optimal-io サイズ (%u バイト) は無視します。" -#: lib/utils_device.c:648 +#: lib/utils_device.c:666 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "デバイス %s が小さすぎます。少なくとも % バイト必要です。" -#: lib/utils_device.c:729 +#: lib/utils_device.c:747 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "デバイス %s は使用中で使えません (既にマップされているかマウントされています)。" -#: lib/utils_device.c:733 +#: lib/utils_device.c:751 #, c-format msgid "Cannot use device %s, permission denied." msgstr "デバイス %s が使えません、拒否されました。" -#: lib/utils_device.c:736 +#: lib/utils_device.c:754 #, c-format msgid "Cannot get info about device %s." msgstr "デバイス %s についての情報が取得できません。" -#: lib/utils_device.c:759 +#: lib/utils_device.c:777 msgid "Cannot use a loopback device, running as non-root user." msgstr "ループバックデバイスが使えません、非 root ユーザで実行していませんか。" -#: lib/utils_device.c:769 +#: lib/utils_device.c:787 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "ループデバイスのアタッチできません (autoclear 付きのループデバイスが必要です)。" -#: lib/utils_device.c:815 +#: lib/utils_device.c:833 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "指定されたオフセットはデバイス %s の実際のサイズを超えています。" -#: lib/utils_device.c:823 +#: lib/utils_device.c:841 #, c-format msgid "Device %s has zero size." msgstr "デバイス %s のサイズが 0 です。" @@ -722,16 +722,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "警告: ロックに使うディレクトリ %s/%s がありません!\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "ロックディレクトリ %s/%s がコンパイル時に指定されたパーミッションで作成されます。" #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "ロックを中止します。ロックに使うパス %s/%s が使用できません (%s はディレクトリではありません)。" -#: 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 msgid "Cannot seek to device offset." msgstr "デバイスオフセットまで seek できません。" @@ -758,7 +758,7 @@ msgstr "暗号の指定は [暗号]-[モード]-[初期ベクタ] という形式であるべきです。" #: lib/luks1/keyencryption.c:97 lib/luks1/keymanage.c:344 -#: lib/luks1/keymanage.c:635 lib/luks1/keymanage.c:1080 +#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1094 #: lib/luks2/luks2_json_metadata.c:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." @@ -778,12 +778,12 @@ msgstr "キースロットを暗号化中にI/Oエラーが発生しました。" #: 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:1263 -#: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "デバイス %s を開けません。" @@ -804,13 +804,13 @@ msgid "LUKS keyslot %u is invalid." msgstr "LUKS キースロット %u は不正です。" -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 -#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1445 -#: src/cryptsetup.c:1571 src/cryptsetup.c:1628 src/cryptsetup.c:1684 -#: src/cryptsetup.c:1751 src/cryptsetup.c:1854 src/cryptsetup.c:1918 -#: src/cryptsetup.c:2148 src/cryptsetup.c:2343 src/cryptsetup.c:2403 -#: src/cryptsetup.c:2469 src/cryptsetup.c:2633 src/cryptsetup.c:3291 -#: src/cryptsetup.c:3300 src/cryptsetup_reencrypt.c:1388 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1495 +#: src/cryptsetup.c:1621 src/cryptsetup.c:1678 src/cryptsetup.c:1734 +#: src/cryptsetup.c:1801 src/cryptsetup.c:1904 src/cryptsetup.c:1968 +#: src/cryptsetup.c:2198 src/cryptsetup.c:2409 src/cryptsetup.c:2471 +#: src/cryptsetup.c:2537 src/cryptsetup.c:2701 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3386 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "デバイス %s は有効な LUKS デバイスではありません。" @@ -834,7 +834,7 @@ msgid "Backup file does not contain valid LUKS header." msgstr "バックアップファイルが有効な LUKS ヘッダを含んでいません。" -#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549 +#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:556 #: lib/luks2/luks2_json_metadata.c:1190 #, c-format msgid "Cannot open header backup file %s." @@ -874,101 +874,101 @@ msgid "Non standard key size, manual repair required." msgstr "標準的でないキーサイズなので、手動の修復が必要です。" -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "標準的でないキースロットアライメントなので、手動の修復が必要です。" -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "キースロットを修復中です。" -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "キースロット %i: オフセットを修復 (%u -> %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "キースロット %i: のストライプを修復 (%u -> %u)." -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "キースロット %i: パーティションの印(signature)がおかしいです。" -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "キースロット %i: ソルトを消しました。" -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "LUKS ヘッダを書きこんでいます。" -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "修復に失敗しました。" -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "要求された LUKS ハッシュ %s はサポートしていません。" -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1145 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1188 msgid "No known problems detected for LUKS header." msgstr "LUKS ヘッダに既知の不具合は検出されませんでした。" -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "デバイス %s の LUKS ヘッダを更新中にエラーが発生しました。" -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "デバイス %s の LUKS ヘッダを更新後の再読み込み中にエラーが発生しました。" -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "LUKS ヘッダのデータへのオフセットは 0 かヘッダサイズより大きくなければいけません。" -#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825 -#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1009 -#: src/cryptsetup.c:2796 +#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832 +#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2864 msgid "Wrong LUKS UUID format provided." msgstr "LUKS UUID の形式が間違っています。" -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "LUKS ヘッダを作成できません: ランダムなソルトを読み込めません。" -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "LUKS ヘッダを作成できません: ヘッダのハッシュが求められません (ハッシュには %s を使用)。" -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "キースロット %d が使用中なので、パージしてください。" -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "キースロット %d のストライプが少なすぎます。ヘッダを細工でもしましたか?" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "キースロットをオープンできません (ハッシュ %s を使用)。" -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "キースロット %d は不正です。0 から %d の間を選んでください。" -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "デバイス %s をワイプできません。" @@ -1004,11 +1004,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "PBKDF2 ハッシュアルゴリズム %s が利用できないのでスキップします。" -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1022 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059 msgid "Required kernel crypto interface not available." msgstr "必要なカーネル crypto インターフェースが使用できません。" -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1024 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "algif_skcipher カーネルモジュールをロードしてください。" @@ -1034,146 +1034,160 @@ msgid "This function is not supported without TCRYPT header load." msgstr "この機能は TCRYPT ヘッダの読み込みなしではサポートしません。" -#: 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 "ボリュームマスターキーを解釈中に予期しないメタデータエントリタイプ '%u' が見つかりました。" -#: 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 "ボリュームマスターキーを解釈中に予期しない文字列 ('%s') が見つかりました。" -#: 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 "ボリュームマスターキーを解釈中に予期しないメタデータエントリー値 '%u' が見つかりました。" -#: lib/bitlk/bitlk.c:479 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "%s から BITLK シグネチャを読み込めませんでした。" -#: lib/bitlk/bitlk.c:485 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "BITLK デバイスのシグネチャが不正また不明です。" + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "BITLK version 1 はサポートされていません。" -#: lib/bitlk/bitlk.c:491 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "BITLK デバイスのブートシグネチャが不正また不明です。" -#: lib/bitlk/bitlk.c:503 -msgid "Invalid or unknown signature for BITLK device." -msgstr "BITLK デバイスのシグネチャが不正また不明です。" - -#: lib/bitlk/bitlk.c:515 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "サポートされていないセクタサイズ % です。" -#: lib/bitlk/bitlk.c:523 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "%s から BITLK ヘッダを読み出すのに失敗しました。" -#: lib/bitlk/bitlk.c:548 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "%s から BITLK FVE メタデータを読み込めませんでした。" -#: lib/bitlk/bitlk.c:599 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "不明かサポートされていない暗号化タイプです。" -#: lib/bitlk/bitlk.c:632 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "%s から BITLK メタデータエントリを読み込めませんでした。" -#: lib/bitlk/bitlk.c:926 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "外部キーを解釈中に予期しないメタデータエントリタイプ '%u' が見つかりました。" + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "外部キーを解釈中に予期しないメタデータエントリー値 '%u' が見つかりました。" + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "スタートアップキーを解釈中に予期しないメタデータエントリが見つかりました。" + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "この操作はサポートされていません。" -#: lib/bitlk/bitlk.c:934 +#: lib/bitlk/bitlk.c:1079 msgid "Unexpected key data size." msgstr "予期しないキーデータサイズです。" -#: lib/bitlk/bitlk.c:988 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "この BITLK デバイスはサポートされてない状態にあるためアクティベートできません。" -#: lib/bitlk/bitlk.c:994 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "タイプ '%s' の BITLK デバイスはアクティベートできません。" -#: lib/bitlk/bitlk.c:1076 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "部分的に復号された BITLK デバイスのアクティベーションはサポートされていません。" -#: lib/bitlk/bitlk.c:1212 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "カーネルの dm-crypt が BITLK IV をサポートしていないためデバイスをアクティベートできません。" -#: lib/bitlk/bitlk.c:1216 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "カーネルの dm-crypt が BITLK Elephant diffuser をサポートしていないためデバイスをアクティベートできません。" -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "Verity デバイス %s はディスク上のヘッダを使いません。" -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "デバイス %s が有効な VERITY デバイスではありません。" -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "VERITY バージョン %d はサポートされていません。" -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "VERITY ヘッダが壊れています。" -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "デバイス %s の VERITY UUID フォーマットが間違っています。" -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "デバイス %s の verity ヘッダを更新中にエラー。" -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "ルートハッシュ署名の検証はサポートしていません。" -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "FEC デバイスのエラーが修復できません。" -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "FEC デバイスに %u 個の修復可能なエラーが見つかりました。" -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "カーネルが dm-verity マッピングをサポートしていません。" -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "カーネルが dm-verity 署名オプションをサポートしていません。" -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "アクティベーションされた Verity デバイスが破損が見つかりました。" @@ -1182,41 +1196,37 @@ msgid "Spare area is not zeroed at position %." msgstr "ポジション % にあるスペア領域が 0 埋めされていません。" -#: 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 msgid "Device offset overflow." msgstr "デバイスオフセットオーバーフロー。" -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "検証がポジション % で失敗しました。" -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "verity デバイスのパラメータサイズが不正です。" - -#: 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 msgid "Verification of data area failed." msgstr "データ領域の検証に失敗しました。" -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "ルートハッシュの検証に失敗しました。" -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "ハッシュ領域を生成中に I/O エラー。" -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "ハッシュ領域の作成に失敗しました。" -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "警告: カーネルはデータブロックサイズがページサイズ (%u) を超えているとアクティベートできません。" @@ -1225,51 +1235,59 @@ msgid "Failed to allocate RS context." msgstr "Reed-Solomon 処理のためのコンテキストが確保できません。" -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "バッファを確保できませんでした。" -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Reed-Solomon ブロック % バイト %d を読み込めませんでした。" -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "Reed-Solomon ブロック % のパリティを読み込めませんでした。" -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "ブロック % のパリティが修復できませんでした。" -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "Reed-Solomon ブロック % のパリティの書き込みに失敗しました。" -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "ブロックサイズが FEC と合っていません。" -#: 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 "FEC セグメント長が不正です。" + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "デバイス %s のサイズが不明です。" -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355 msgid "Kernel does not support dm-integrity mapping." msgstr "カーネルが dm-integrity マッピングをサポートしていません。" -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "カーネルが dm-integrity 固定メタデータアラインメントをサポートしていません。" +#: 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:967 #: lib/luks2/luks2_json_metadata.c:1252 #, c-format @@ -1292,7 +1310,7 @@ msgid "Requested data offset is too small." msgstr "要求されたデータオフセットが小さすぎます。" -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "警告: キースロット領域 (% バイト) がとても小さいため、利用可能な LUKS2 キースロット数が制限されます。\n" @@ -1376,7 +1394,7 @@ msgid "Reencryption in-progress. Cannot deactivate device." msgstr "再暗号化が実行中なのでデバイスのデアクティベートできません。. Cannot deactivate device." -#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3206 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "サスペンドされたデバイス %s を dm-error ターゲットで置き換えられません。" @@ -1485,7 +1503,7 @@ #: 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:3046 msgid "Failed to initialize old segment storage wrapper." msgstr "古いセグメントのストレージラッパの初期化に失敗しました。" @@ -1497,7 +1515,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "現在のホットゾーンのチェックサムを読み込めません。" -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3054 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "% から始めるホットゾーンエリアを読み込めません。" @@ -1540,209 +1558,209 @@ msgid "Failed to set new keyslots area size." msgstr "新しいキースロットエリアサイズを設定できません。" -#: lib/luks2/luks2_reencrypt.c:2318 +#: lib/luks2/luks2_reencrypt.c:2320 #, c-format msgid "Data shift is not aligned to requested encryption sector size (% bytes)." msgstr "データシフトが要求された暗号化セクタサイズにアラインされていません(% bytes)。" -#: lib/luks2/luks2_reencrypt.c:2339 +#: lib/luks2/luks2_reencrypt.c:2341 #, c-format msgid "Data device is not aligned to requested encryption sector size (% bytes)." msgstr "データデバイスが要求された暗号化セクタサイズにアラインされていません(% bytes)." -#: lib/luks2/luks2_reencrypt.c:2360 +#: lib/luks2/luks2_reencrypt.c:2362 #, c-format msgid "Data shift (% sectors) is less than future data offset (% 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:2368 lib/luks2/luks2_reencrypt.c:2795 +#: lib/luks2/luks2_reencrypt.c:2816 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "デバイス %s を排他モードでオープンでません (既にマップされているかマウントされています)。" -#: lib/luks2/luks2_reencrypt.c:2534 +#: lib/luks2/luks2_reencrypt.c:2536 msgid "Device not marked for LUKS2 reencryption." msgstr "デバイスは LUKS2 再暗号化向けにマークされていません。" -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2542 lib/luks2/luks2_reencrypt.c:3311 msgid "Failed to load LUKS2 reencryption context." msgstr "LUKS2 再暗号化コンテキストをロードできません。" -#: lib/luks2/luks2_reencrypt.c:2619 +#: lib/luks2/luks2_reencrypt.c:2621 msgid "Failed to get reencryption state." msgstr "再暗号化状態を取得できません。" -#: lib/luks2/luks2_reencrypt.c:2623 +#: lib/luks2/luks2_reencrypt.c:2625 msgid "Device is not in reencryption." msgstr "デバイス %s は再暗号化中ではありません。" -#: lib/luks2/luks2_reencrypt.c:2630 +#: lib/luks2/luks2_reencrypt.c:2632 msgid "Reencryption process is already running." msgstr "既に再暗号化中です。" -#: lib/luks2/luks2_reencrypt.c:2632 +#: lib/luks2/luks2_reencrypt.c:2634 msgid "Failed to acquire reencryption lock." msgstr "再暗号化ロックを取得できません。" -#: lib/luks2/luks2_reencrypt.c:2650 +#: lib/luks2/luks2_reencrypt.c:2652 msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "再暗号化を開始できません。再暗号化のリカバリを先にしてください。" -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2766 msgid "Active device size and requested reencryption size don't match." msgstr "実際のデバイスサイズと要求された再暗号化サイズが一致しません。" -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2780 msgid "Illegal device size requested in reencryption parameters." msgstr "再暗号化のパラメータとして不正なデバイスサイズが要求されました。" -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "既に再暗号化中です。復元を実行できません。" -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2922 msgid "LUKS2 reencryption already initialized in metadata." msgstr "メタデータの LUKS2 の再暗号化は既に初期化されました。" -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2929 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "メタデータの LUKS2 再暗号化に失敗しました。" -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3020 msgid "Failed to set device segments for next reencryption hotzone." msgstr "デバイスセグメントの次の再暗号化ホットゾーンの設定に失敗しました。" -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3062 msgid "Failed to write reencryption resilience metadata." msgstr "再暗号化した耐性用メタデータを書き込めません。" -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3069 msgid "Decryption failed." msgstr "復号に失敗しました。" -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3074 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "% から始まるホットゾーンエリアに書き込めません。" -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3079 msgid "Failed to sync data." msgstr "データを sync できません。" -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3087 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "現在のホットゾーンの再暗号化完了後にメタデータが更新できません。" -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3154 msgid "Failed to write LUKS2 metadata." msgstr "LUKS2 メタデータが書き込めません。" -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3177 msgid "Failed to wipe backup segment data." msgstr "バックアップセグメントデータを消せません。" -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3190 msgid "Failed to disable reencryption requirement flag." msgstr "再暗号化の要求(requirement)フラグを禁止できません。" -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3198 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "% から % セクタのチャンクの再暗号化中に致命的なエラー。" -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3207 msgid "Do not resume the device unless replaced with error target manually." msgstr "手動でエラーターゲットに置き換えた場合以外はデバイスのレジュームをしないでください。" -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3256 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "再暗号化を開始できません。予期しない再暗号化状態です。" -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3262 msgid "Missing or invalid reencrypt context." msgstr "ないか不正な再暗号化コンテキストです。" -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3269 msgid "Failed to initialize reencryption device stack." msgstr "再暗号化デバイススタックの初期化に失敗しました。" -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3288 lib/luks2/luks2_reencrypt.c:3324 msgid "Failed to update reencryption context." msgstr "再暗号化コンテキストが更新できません。" -#: lib/luks2/luks2_token.c:262 +#: lib/luks2/luks2_token.c:263 msgid "No free token slot." msgstr "空きトークンスロットがありません。" -#: lib/luks2/luks2_token.c:269 +#: lib/luks2/luks2_token.c:270 #, c-format msgid "Failed to create builtin token %s." msgstr "ビルトイントークン %s が作成できません。" -#: src/cryptsetup.c:166 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "tty 入力以外ではパスフレーズ認証できません。" -#: src/cryptsetup.c:229 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "キースロットの暗号化パラメータは LUKS2 デバイスでしか設定できません。" -#: src/cryptsetup.c:259 src/cryptsetup.c:971 src/cryptsetup.c:1281 -#: src/cryptsetup.c:3157 src/cryptsetup_reencrypt.c:723 -#: src/cryptsetup_reencrypt.c:793 +#: src/cryptsetup.c:291 src/cryptsetup.c:1006 src/cryptsetup.c:1339 +#: src/cryptsetup.c:3245 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "未知の暗号スペックです。" -#: src/cryptsetup.c:267 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "警告: --hash パラメータは plain モードでキーファイルが指定されていると無視されます。\n" -#: src/cryptsetup.c:275 +#: 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 "警告: --keyfile-size オプションは無視されて、読み込みサイズは暗号鍵のサイズと同じになります。\n" -#: src/cryptsetup.c:315 +#: src/cryptsetup.c:347 #, c-format msgid "Detected device signature(s) on %s. Proceeding further may damage existing data." msgstr "%s にデバイス署名が検出されました。既にあるデータを破壊しかねません。" -#: src/cryptsetup.c:321 src/cryptsetup.c:1102 src/cryptsetup.c:1154 -#: src/cryptsetup.c:1258 src/cryptsetup.c:1331 src/cryptsetup.c:1986 -#: src/cryptsetup.c:2694 src/cryptsetup.c:2817 src/integritysetup.c:233 +#: src/cryptsetup.c:353 src/cryptsetup.c:1145 src/cryptsetup.c:1197 +#: src/cryptsetup.c:1316 src/cryptsetup.c:1389 src/cryptsetup.c:2036 +#: src/cryptsetup.c:2762 src/cryptsetup.c:2886 src/integritysetup.c:242 msgid "Operation aborted.\n" msgstr "中止されました。\n" -#: src/cryptsetup.c:389 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "オプション --key-file が必要です。" -#: src/cryptsetup.c:442 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "VeraCrypt PIM を入力してください: " -#: src/cryptsetup.c:451 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "不正な PIM: 解釈できません。" -#: src/cryptsetup.c:454 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "不正 PIM の値で 0 です。" -#: src/cryptsetup.c:457 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "不正な PIM の値: 範囲外です。" -#: src/cryptsetup.c:480 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "このパスフレーズではデバイスヘッダが検出されませんでした。" -#: src/cryptsetup.c:549 +#: src/cryptsetup.c:582 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "デバイス %s は有効な BITLK デバイスではありません。" -#: src/cryptsetup.c:584 +#: src/cryptsetup.c:617 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1752,68 +1770,68 @@ "暗号化されたパーティションにパスフレーズなしでアクセス可能にます。\n" "このダンプは暗号化された安全な所に保存してください。" -#: src/cryptsetup.c:681 +#: src/cryptsetup.c:714 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "デバイス %s はまたアクティブで後から削除される予定になっています。.\n" -#: src/cryptsetup.c:709 +#: src/cryptsetup.c:742 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "アクティブなデバイスをリサイズするにはボリュームキーがキーリングに必要ですが、--disable-keyring が指定されています。" -#: src/cryptsetup.c:850 +#: src/cryptsetup.c:885 msgid "Benchmark interrupted." msgstr "ベンチマークが中止されました。" -#: src/cryptsetup.c:871 +#: src/cryptsetup.c:906 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s 計測値なし\n" -#: src/cryptsetup.c:873 +#: src/cryptsetup.c:908 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u 回/秒 (%zu ビットの鍵)\n" -#: src/cryptsetup.c:887 +#: src/cryptsetup.c:922 #, c-format msgid "%-10s N/A\n" msgstr "%-10s 計測値なし\n" -#: src/cryptsetup.c:889 +#: 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 "%-10s %4u 回, %5u KB使用, %1u スレッド (%zu のビットの鍵) (%u ms 計測)\n" -#: src/cryptsetup.c:913 +#: src/cryptsetup.c:948 msgid "Result of benchmark is not reliable." msgstr "ベンチマークの結果は信頼できません。" -#: src/cryptsetup.c:963 +#: src/cryptsetup.c:998 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# テストはストレージI/Oがなくメモリ上のもののため目安です。\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:983 +#: src/cryptsetup.c:1018 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*s Algorithm | キー | 暗号化 | 復号化\n" -#: src/cryptsetup.c:987 +#: src/cryptsetup.c:1022 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "暗号 %s (キーサイズ %i ビット) は利用できません。" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:1006 +#: src/cryptsetup.c:1041 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "# Algorithm | キー | 暗号化 | 復号化\n" -#: src/cryptsetup.c:1015 +#: src/cryptsetup.c:1052 msgid "N/A" msgstr "計測値なし" -#: src/cryptsetup.c:1095 +#: src/cryptsetup.c:1138 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1821,19 +1839,19 @@ "デバイスは再暗号化のリカバリを必要としていなそうです。\n" "本当にやりますか?" -#: src/cryptsetup.c:1101 +#: src/cryptsetup.c:1144 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "本当に LUKS2 再暗号化リカバリを行いますか?" -#: src/cryptsetup.c:1110 +#: src/cryptsetup.c:1153 msgid "Enter passphrase for reencryption recovery: " msgstr "再暗号化のリカバリのためのパスフレーズを入力してください: " -#: src/cryptsetup.c:1153 +#: src/cryptsetup.c:1196 msgid "Really try to repair LUKS device header?" msgstr "本当に LUKS デバイスヘッダの復元を試みていいですか?" -#: src/cryptsetup.c:1172 src/integritysetup.c:146 +#: src/cryptsetup.c:1215 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" @@ -1841,104 +1859,108 @@ "整合性チェックサムの初期化のためにデバイスのデータを消去しています。\n" "CTRL+c で中止できます (初期化されなかったデバイスのチェックサムは正しくなくなります)。\n" -#: src/cryptsetup.c:1194 src/integritysetup.c:168 +#: src/cryptsetup.c:1237 src/integritysetup.c:179 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "一時的デバイス %s を非アクティブにできません。" -#: src/cryptsetup.c:1243 +#: src/cryptsetup.c:1301 msgid "Integrity option can be used only for LUKS2 format." msgstr "整合性オプションは LUKS2 形式でしか使えません。" -#: src/cryptsetup.c:1248 src/cryptsetup.c:1308 +#: src/cryptsetup.c:1306 src/cryptsetup.c:1366 msgid "Unsupported LUKS2 metadata size options." msgstr "サポートされていない LUKS2 メタデータのサイズオプションです。" -#: src/cryptsetup.c:1265 +#: src/cryptsetup.c:1315 +msgid "Header file does not exist, do you want to create it?" +msgstr "ヘッダファイルがありません。作成しますか?" + +#: src/cryptsetup.c:1323 #, c-format msgid "Cannot create header file %s." msgstr "ヘッダファイル %s を作成できません。" -#: src/cryptsetup.c:1288 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:1346 src/integritysetup.c:205 src/integritysetup.c:213 +#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303 +#: src/integritysetup.c:313 msgid "No known integrity specification pattern detected." msgstr "サポートしている整合性確認方式が検出されませんでした。" -#: src/cryptsetup.c:1301 +#: src/cryptsetup.c:1359 #, c-format msgid "Cannot use %s as on-disk header." msgstr "%s を on-disk ヘッダとして使えません。" -#: src/cryptsetup.c:1325 src/integritysetup.c:227 +#: src/cryptsetup.c:1383 src/integritysetup.c:236 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "%s のデータを上書きします。戻せません。" -#: src/cryptsetup.c:1366 src/cryptsetup.c:1700 src/cryptsetup.c:1767 -#: src/cryptsetup.c:1869 src/cryptsetup.c:1935 src/cryptsetup_reencrypt.c:553 +#: src/cryptsetup.c:1416 src/cryptsetup.c:1750 src/cryptsetup.c:1817 +#: src/cryptsetup.c:1919 src/cryptsetup.c:1985 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "pbkdf パラメータを設定できません。" -#: src/cryptsetup.c:1451 +#: src/cryptsetup.c:1501 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "分離された LUKS ヘッダでのみ少ないデータオフセットが使えます。" -#: src/cryptsetup.c:1462 src/cryptsetup.c:1773 +#: src/cryptsetup.c:1512 src/cryptsetup.c:1823 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "キースロットのない LUKS のボリュームキーサイズが決定できないので、--key-size を使ってください。" -#: src/cryptsetup.c:1500 +#: src/cryptsetup.c:1550 msgid "Device activated but cannot make flags persistent." msgstr "デバイスはアクティベートされましたが、フラグを恒常的なものにできません。" -#: src/cryptsetup.c:1581 src/cryptsetup.c:1651 +#: src/cryptsetup.c:1631 src/cryptsetup.c:1701 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "キースロット %d は削除対象として選択されました。" -#: src/cryptsetup.c:1593 src/cryptsetup.c:1654 +#: src/cryptsetup.c:1643 src/cryptsetup.c:1704 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "これは最後のキースロットです。このキーがなくなるとデバイスは使用不能になります。" -#: src/cryptsetup.c:1594 +#: src/cryptsetup.c:1644 msgid "Enter any remaining passphrase: " msgstr "残っているパスフレーズを入力してください: " -#: src/cryptsetup.c:1595 src/cryptsetup.c:1656 +#: src/cryptsetup.c:1645 src/cryptsetup.c:1706 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "操作は中止されました。キースロットは消去されていません。\n" -#: src/cryptsetup.c:1633 +#: src/cryptsetup.c:1683 msgid "Enter passphrase to be deleted: " msgstr "削除するキーのパスフレーズを入力してください: " -#: src/cryptsetup.c:1714 src/cryptsetup.c:1788 src/cryptsetup.c:1822 +#: src/cryptsetup.c:1764 src/cryptsetup.c:1838 src/cryptsetup.c:1872 msgid "Enter new passphrase for key slot: " msgstr "キースロットの新しいパスフレーズを入力してください: " -#: src/cryptsetup.c:1805 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1855 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "有効なパスフレーズをどれか入力してください: " -#: src/cryptsetup.c:1873 +#: src/cryptsetup.c:1923 msgid "Enter passphrase to be changed: " msgstr "変更するキーのパスフレーズを入力してください: " -#: src/cryptsetup.c:1889 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1939 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "新しいキーのパスフレーズを入力してください: " -#: src/cryptsetup.c:1939 +#: src/cryptsetup.c:1989 msgid "Enter passphrase for keyslot to be converted: " msgstr "変換されるキースロットのパスフレーズを入力してください: " -#: src/cryptsetup.c:1963 +#: src/cryptsetup.c:2013 msgid "Only one device argument for isLuks operation is supported." msgstr "isLuks は一つのデバイス引数しかサポートしていません。" -#: src/cryptsetup.c:2013 +#: src/cryptsetup.c:2063 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -1948,12 +1970,12 @@ "暗号化されたパーティションにパスフレーズなしでアクセス可能になります。\n" "このダンプは暗号化された安全な所に保存してください。" -#: src/cryptsetup.c:2078 +#: src/cryptsetup.c:2128 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "キースロット %d は unbound キーを含んでいません。" -#: src/cryptsetup.c:2084 +#: src/cryptsetup.c:2134 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -1961,30 +1983,40 @@ "unbound キーを使ったヘッダダンプは取り扱いに注意すべき情報です。\n" "このダンプは暗号化された安全な所に保存してください。" -#: src/cryptsetup.c:2219 src/cryptsetup.c:2240 +#: src/cryptsetup.c:2223 src/cryptsetup.c:2252 +#, c-format +msgid "%s is not active %s device name." +msgstr "%s はアクティブな %s デバイスではありません。" + +#: src/cryptsetup.c:2247 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "%s はアクティブな LUKS デバイス名ではないか、ヘッダがありません。" + +#: src/cryptsetup.c:2285 src/cryptsetup.c:2306 msgid "Option --header-backup-file is required." msgstr "オプション --header-backup-file が必要です。" -#: src/cryptsetup.c:2270 +#: src/cryptsetup.c:2336 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s は cryptsetup で管理されているデバイスではありません。" -#: src/cryptsetup.c:2281 +#: src/cryptsetup.c:2347 #, c-format msgid "Refresh is not supported for device type %s" msgstr "リフレッシュはデバイスタイプ %s ではサポートされていません。" -#: src/cryptsetup.c:2323 +#: src/cryptsetup.c:2389 #, c-format msgid "Unrecognized metadata device type %s." msgstr "%s は認識できないメタデータデータタイプです。" -#: src/cryptsetup.c:2326 +#: src/cryptsetup.c:2392 msgid "Command requires device and mapped name as arguments." msgstr "コマンドはデバイスとマップされた名前を引数として必要とします。" -#: src/cryptsetup.c:2348 +#: src/cryptsetup.c:2414 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -1993,95 +2025,95 @@ "この処理はデバイス %s の全てのキースロットを消去します。\n" "デバイスのデータは使用できなくなります。" -#: src/cryptsetup.c:2355 +#: src/cryptsetup.c:2421 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "処理は中止されました。キースロットは消去されません。\n" -#: src/cryptsetup.c:2392 +#: src/cryptsetup.c:2460 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "不正な LUKS タイプです。luks1 と luks2 しかサポートしていません。" -#: src/cryptsetup.c:2410 +#: src/cryptsetup.c:2478 #, c-format msgid "Device is already %s type." msgstr "デバイスは既にタイプ %s です。" -#: src/cryptsetup.c:2415 +#: src/cryptsetup.c:2483 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "この処理は %s から %s フォーマットに変換します。\n" -#: src/cryptsetup.c:2421 +#: src/cryptsetup.c:2489 msgid "Operation aborted, device was NOT converted.\n" msgstr "処理は中止されました。デバイスは変換されませんでした。\n" -#: src/cryptsetup.c:2461 +#: src/cryptsetup.c:2529 msgid "Option --priority, --label or --subsystem is missing." msgstr "オプション --priority, --label か --subsystem がありません。" -#: src/cryptsetup.c:2495 src/cryptsetup.c:2528 src/cryptsetup.c:2551 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2596 src/cryptsetup.c:2619 #, c-format msgid "Token %d is invalid." msgstr "トークン %d は不正です。" -#: src/cryptsetup.c:2498 src/cryptsetup.c:2554 +#: src/cryptsetup.c:2566 src/cryptsetup.c:2622 #, c-format msgid "Token %d in use." msgstr "トークン %d は使用中です。" -#: src/cryptsetup.c:2505 +#: src/cryptsetup.c:2573 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "luks2-キーリングトークン %d を追加できませんでした。" -#: src/cryptsetup.c:2514 src/cryptsetup.c:2576 +#: src/cryptsetup.c:2582 src/cryptsetup.c:2644 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "トークン %d をキースロット %d に割りあてられませんでした。" -#: src/cryptsetup.c:2531 +#: src/cryptsetup.c:2599 #, c-format msgid "Token %d is not in use." msgstr "トークン %d は使われていません。" -#: src/cryptsetup.c:2566 +#: src/cryptsetup.c:2634 msgid "Failed to import token from file." msgstr "ファイルからトークンをインポートできません。" -#: src/cryptsetup.c:2591 +#: src/cryptsetup.c:2659 #, c-format msgid "Failed to get token %d for export." msgstr "トークン %d をエクスポートのために取得できませんでした。" -#: src/cryptsetup.c:2606 +#: src/cryptsetup.c:2674 msgid "--key-description parameter is mandatory for token add action." msgstr "--key-description はトークン追加には必須です。" -#: src/cryptsetup.c:2612 src/cryptsetup.c:2620 +#: src/cryptsetup.c:2680 src/cryptsetup.c:2688 msgid "Action requires specific token. Use --token-id parameter." msgstr "トークンを必要としています。--token-id を使用してください。" -#: src/cryptsetup.c:2625 +#: src/cryptsetup.c:2693 #, c-format msgid "Invalid token operation %s." msgstr "%s は不正なトークン処理です。" -#: src/cryptsetup.c:2680 +#: src/cryptsetup.c:2748 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "データデバイス %2s のアクティブな dm デバイス '%1s'を自動検出しました。\n" -#: src/cryptsetup.c:2684 +#: src/cryptsetup.c:2752 #, c-format msgid "Device %s is not a block device.\n" msgstr "デバイス %s は有効なブロックデバイスではありません。\n" -#: src/cryptsetup.c:2686 +#: src/cryptsetup.c:2754 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "デバイス %s のホルダ(holders)を自動検出できません。" -#: src/cryptsetup.c:2688 +#: src/cryptsetup.c:2756 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2094,233 +2126,242 @@ "アクティベートされていたらデータが破壊されるかもしれません。\n" "再暗号化をオンラインで行う場合は --active-name を代わりに使ってください。\n" -#: src/cryptsetup.c:2768 +#: src/cryptsetup.c:2836 msgid "Invalid LUKS device type." msgstr "LUKS デバイスタイプが不正です。" -#: src/cryptsetup.c:2773 +#: src/cryptsetup.c:2841 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." msgstr "データデバイスサイズの縮小(--reduce-device-size)なしに分離ヘッダ(--header)による暗号化はできません。" -#: src/cryptsetup.c:2778 +#: src/cryptsetup.c:2846 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "要求されたデータオフセットは --reduce-device-size パラメータの半分以下である必要があります。" -#: src/cryptsetup.c:2787 +#: src/cryptsetup.c:2855 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "--reduce-device-size の値を --offset % (セクタ) の倍にします。\n" -#: src/cryptsetup.c:2791 +#: src/cryptsetup.c:2859 msgid "Encryption is supported only for LUKS2 format." msgstr "暗号化は LUKS2 形式でしか使えません。" -#: src/cryptsetup.c:2813 +#: src/cryptsetup.c:2882 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "LUKS デバイスが %s に検出されました。もう一度 LUKS デバイスを暗号化したいのですか?" -#: src/cryptsetup.c:2828 +#: src/cryptsetup.c:2900 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "テンポラリヘッダファイル %s は既に存在しているので、中止します。" -#: src/cryptsetup.c:2830 src/cryptsetup.c:2837 +#: src/cryptsetup.c:2902 src/cryptsetup.c:2909 #, c-format msgid "Cannot create temporary header file %s." msgstr "テンポラリヘッダファイル %s を作成できません。" -#: src/cryptsetup.c:2901 +#: src/cryptsetup.c:2976 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "%s/%s がアクティブでオンライン暗号化可能です。\n" -#: src/cryptsetup.c:3065 src/cryptsetup.c:3071 +#: src/cryptsetup.c:3013 +msgid "LUKS2 decryption is supported with detached header device only." +msgstr "LUKS2 復号は detached ヘッダデバイスしかサポートしていません。" + +#: src/cryptsetup.c:3146 src/cryptsetup.c:3152 msgid "Not enough free keyslots for reencryption." msgstr "再暗号化に必要な空きキースロットがありません。" -#: src/cryptsetup.c:3091 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3172 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "キーファイルは --key-slot と使うか、1 つのキースロットだけアクティブの時にしか使えません。" -#: src/cryptsetup.c:3100 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3181 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "キースロット %d のパスフレーズを入力してください: " -#: src/cryptsetup.c:3108 +#: src/cryptsetup.c:3190 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "キースロット %u のパスフレーズを入力してください: " -#: src/cryptsetup.c:3283 +#: src/cryptsetup.c:3236 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "データの暗号化用の暗号アルゴリズムを %s にします。\n" + +#: src/cryptsetup.c:3369 msgid "Command requires device as argument." msgstr "コマンドはデバイスを引数として必要とします。" -#: src/cryptsetup.c:3305 +#: src/cryptsetup.c:3391 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "現在 LUKS2 形式しかサポートされていません。LUKS1 には cryptsetup-reencrypt を使ってください。" -#: src/cryptsetup.c:3317 +#: src/cryptsetup.c:3403 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "古いオフライン再暗号化が実行中です。cryptsetup-reencrypt を使ってください。" -#: src/cryptsetup.c:3327 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3413 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "整合性プロファイルつきのデバイスの再暗号化はサポートされていません。" -#: src/cryptsetup.c:3335 +#: src/cryptsetup.c:3421 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "LUKS2 再暗号化が既に初期化済なので操作を中止します。" -#: src/cryptsetup.c:3339 +#: src/cryptsetup.c:3425 msgid "LUKS2 device is not in reencryption." msgstr "LUKS2 デバイスは再暗号化中ではありません。" -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3452 msgid " [--type ] []" msgstr "<デバイス> [--type <タイプ>] [<名前>]" -#: src/cryptsetup.c:3366 src/veritysetup.c:399 src/integritysetup.c:480 +#: src/cryptsetup.c:3452 src/veritysetup.c:408 src/integritysetup.c:493 msgid "open device as " msgstr "デバイスを <名前> としてオープン" -#: src/cryptsetup.c:3367 src/cryptsetup.c:3368 src/cryptsetup.c:3369 -#: src/veritysetup.c:400 src/veritysetup.c:401 src/integritysetup.c:481 -#: src/integritysetup.c:482 +#: src/cryptsetup.c:3453 src/cryptsetup.c:3454 src/cryptsetup.c:3455 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494 +#: src/integritysetup.c:495 msgid "" msgstr "<名前>" -#: src/cryptsetup.c:3367 src/veritysetup.c:400 src/integritysetup.c:481 +#: src/cryptsetup.c:3453 src/veritysetup.c:409 src/integritysetup.c:494 msgid "close device (remove mapping)" msgstr "デバイスをクローズします (マッピングを削除します)" -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3454 msgid "resize active device" msgstr "アクティブデバイスをリサイズ" -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3455 msgid "show device status" msgstr "デバイスステータスを表示" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "[--cipher ]" msgstr "[--cipher <暗号>]" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "benchmark cipher" msgstr "暗号ベンチマーク" -#: src/cryptsetup.c:3371 src/cryptsetup.c:3372 src/cryptsetup.c:3373 -#: src/cryptsetup.c:3374 src/cryptsetup.c:3375 src/cryptsetup.c:3382 -#: src/cryptsetup.c:3383 src/cryptsetup.c:3384 src/cryptsetup.c:3385 -#: src/cryptsetup.c:3386 src/cryptsetup.c:3387 src/cryptsetup.c:3388 -#: src/cryptsetup.c:3389 src/cryptsetup.c:3390 +#: src/cryptsetup.c:3457 src/cryptsetup.c:3458 src/cryptsetup.c:3459 +#: src/cryptsetup.c:3460 src/cryptsetup.c:3461 src/cryptsetup.c:3468 +#: src/cryptsetup.c:3469 src/cryptsetup.c:3470 src/cryptsetup.c:3471 +#: src/cryptsetup.c:3472 src/cryptsetup.c:3473 src/cryptsetup.c:3474 +#: src/cryptsetup.c:3475 src/cryptsetup.c:3476 msgid "" msgstr "<デバイス>" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3457 msgid "try to repair on-disk metadata" msgstr "on-disk メタデータを修復しようとしています" -#: src/cryptsetup.c:3372 +#: src/cryptsetup.c:3458 msgid "reencrypt LUKS2 device" msgstr "LUKS2 デバイスを再暗号化" -#: src/cryptsetup.c:3373 +#: src/cryptsetup.c:3459 msgid "erase all keyslots (remove encryption key)" msgstr "全てのキースロットを消去します (暗号鍵も削除します)" -#: src/cryptsetup.c:3374 +#: src/cryptsetup.c:3460 msgid "convert LUKS from/to LUKS2 format" msgstr "LUKS2 から LUKS もしくは LUKS から LUKS2 形式に変換します" -#: src/cryptsetup.c:3375 +#: src/cryptsetup.c:3461 msgid "set permanent configuration options for LUKS2" msgstr "LUKS2 の permanent configuration オプションを設定します" -#: src/cryptsetup.c:3376 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3462 src/cryptsetup.c:3463 msgid " []" msgstr "<デバイス> [<新しいキーファイル>]" -#: src/cryptsetup.c:3376 +#: src/cryptsetup.c:3462 msgid "formats a LUKS device" msgstr "LUKS デバイスをフォーマットします" -#: src/cryptsetup.c:3377 +#: src/cryptsetup.c:3463 msgid "add key to LUKS device" msgstr "LUKS デバイスにキーを追加します" -#: src/cryptsetup.c:3378 src/cryptsetup.c:3379 src/cryptsetup.c:3380 +#: src/cryptsetup.c:3464 src/cryptsetup.c:3465 src/cryptsetup.c:3466 msgid " []" msgstr "<デバイス> [<キーファイル>]" -#: src/cryptsetup.c:3378 +#: src/cryptsetup.c:3464 msgid "removes supplied key or key file from LUKS device" msgstr "与えられたキーかキーファイルを LUKS デバイスから削除します。" -#: src/cryptsetup.c:3379 +#: src/cryptsetup.c:3465 msgid "changes supplied key or key file of LUKS device" msgstr "与えられた LUKS デバイスのキーかキーファイルを変更します" -#: src/cryptsetup.c:3380 +#: src/cryptsetup.c:3466 msgid "converts a key to new pbkdf parameters" msgstr "キーを新しい pbkdf パラメータに変換します" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid " " msgstr "<デバイス> <キースロット>" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid "wipes key with number from LUKS device" msgstr "<キースロット>のキーを LUKS デバイスから削除します" -#: src/cryptsetup.c:3382 +#: src/cryptsetup.c:3468 msgid "print UUID of LUKS device" msgstr "LUKS デバイスの UUID を表示" -#: src/cryptsetup.c:3383 +#: src/cryptsetup.c:3469 msgid "tests for LUKS partition header" msgstr "<デバイス> の LUKS パーティションヘッダをテストします" -#: src/cryptsetup.c:3384 +#: src/cryptsetup.c:3470 msgid "dump LUKS partition information" msgstr "LUKS パーティション情報をダンプします" -#: src/cryptsetup.c:3385 +#: src/cryptsetup.c:3471 msgid "dump TCRYPT device information" msgstr "TCRYPT デバイス情報をダンプします" -#: src/cryptsetup.c:3386 +#: src/cryptsetup.c:3472 msgid "dump BITLK device information" msgstr "BITLK デバイス情報をダンプします" -#: src/cryptsetup.c:3387 +#: src/cryptsetup.c:3473 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "LUKS デバイスを停止してキーを削除します (全てのI/Oは停止します)" -#: src/cryptsetup.c:3388 +#: src/cryptsetup.c:3474 msgid "Resume suspended LUKS device" msgstr "停止していた LUKS デバイスを再開します" -#: src/cryptsetup.c:3389 +#: src/cryptsetup.c:3475 msgid "Backup LUKS device header and keyslots" msgstr "LUKS デバイスヘッダとキースロットをバックアップします" -#: src/cryptsetup.c:3390 +#: src/cryptsetup.c:3476 msgid "Restore LUKS device header and keyslots" msgstr "LUKS デバイスヘッダとキースロットをリストアします" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid " " msgstr " <デバイス>" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid "Manipulate LUKS2 tokens" msgstr "LUKS2 トークンを操作します" -#: src/cryptsetup.c:3409 src/veritysetup.c:417 src/integritysetup.c:498 +#: src/cryptsetup.c:3495 src/veritysetup.c:426 src/integritysetup.c:511 msgid "" "\n" " is one of:\n" @@ -2328,7 +2369,7 @@ "\n" " は以下のうちの一つです:\n" -#: src/cryptsetup.c:3415 +#: src/cryptsetup.c:3501 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2340,7 +2381,7 @@ "\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3419 +#: src/cryptsetup.c:3505 #, c-format msgid "" "\n" @@ -2355,7 +2396,7 @@ "<キースロット> は変更する LUKS キースロット番号\n" "<キーファイル> は luskAddKey でオプションで与えられる新しいキーのキーファイル\n" -#: src/cryptsetup.c:3426 +#: src/cryptsetup.c:3512 #, c-format msgid "" "\n" @@ -2364,7 +2405,7 @@ "\n" "デフォルトのコンパイル時に決められたメタデータ形式は %s です(luksFormat で使われます)。\n" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3517 #, c-format msgid "" "\n" @@ -2381,7 +2422,7 @@ "デフォルト LUKS2 向け PBKDF: %s\n" "\t繰り返す時間: %d, 使うメモリ: %dkB, 並列スレッド: %d\n" -#: src/cryptsetup.c:3442 +#: src/cryptsetup.c:3528 #, c-format msgid "" "\n" @@ -2396,451 +2437,451 @@ "\tplain: %s, キー: %d ビット, パスワードハッシュ: %s\n" "\tLUKS: %s, キー: %d ビット, LUKS ヘッダハッシュ: %s, 乱数生成: %s\n" -#: src/cryptsetup.c:3451 +#: src/cryptsetup.c:3537 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: XTS モードのデフォルトキーサイズは (2つの内部キーがあるため) 倍になります。\n" -#: src/cryptsetup.c:3467 src/veritysetup.c:575 src/integritysetup.c:642 +#: src/cryptsetup.c:3555 src/veritysetup.c:587 src/integritysetup.c:665 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: は %s を引数で与える必要があります" -#: src/cryptsetup.c:3500 src/veritysetup.c:462 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3587 src/veritysetup.c:472 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "このヘルプを表示します" -#: src/cryptsetup.c:3501 src/veritysetup.c:463 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3588 src/veritysetup.c:473 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "コンパクトな使用法表示をします" -#: src/cryptsetup.c:3502 src/veritysetup.c:464 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3589 src/veritysetup.c:474 src/integritysetup.c:555 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "パッケージのバージョンを表示" -#: src/cryptsetup.c:3506 src/veritysetup.c:468 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3593 src/veritysetup.c:478 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "ヘルプオプション:" -#: src/cryptsetup.c:3507 src/veritysetup.c:469 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3594 src/veritysetup.c:479 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "より詳細なエラーメッセージを表示" -#: src/cryptsetup.c:3508 src/veritysetup.c:470 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3595 src/veritysetup.c:480 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "デバッグメッセージを表示" -#: src/cryptsetup.c:3509 +#: src/cryptsetup.c:3596 msgid "Show debug messages including JSON metadata" msgstr "JSON メタデータを含むデバッグメッセージを表示" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3597 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "ディスクを暗号化するのに用いられる暗号 (/proc/crypto を参照のこと)" -#: src/cryptsetup.c:3511 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3598 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "パスフレーズから暗号鍵を作るのに使われるハッシュ" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3599 msgid "Verifies the passphrase by asking for it twice" msgstr "パスフレーズは2回入力してもらって検証します" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3600 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "ファイルからキーを読む" -#: src/cryptsetup.c:3514 +#: src/cryptsetup.c:3601 msgid "Read the volume (master) key from file." msgstr "ボリューム(マスター)キーをファイルから読む。" -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3602 msgid "Dump volume (master) key instead of keyslots info" msgstr "ボリューム(マスター)キーをキースロット情報の代わりにダンプします" -#: src/cryptsetup.c:3516 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "暗号鍵のサイズ" -#: src/cryptsetup.c:3516 src/cryptsetup.c:3579 src/integritysetup.c:562 -#: src/integritysetup.c:566 src/integritysetup.c:570 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup.c:3666 src/integritysetup.c:579 +#: src/integritysetup.c:583 src/integritysetup.c:587 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "ビット" -#: src/cryptsetup.c:3517 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3604 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "キーファイルから読み込みの制限" -#: src/cryptsetup.c:3517 src/cryptsetup.c:3518 src/cryptsetup.c:3519 -#: src/cryptsetup.c:3520 src/cryptsetup.c:3523 src/cryptsetup.c:3576 -#: src/cryptsetup.c:3577 src/cryptsetup.c:3585 src/cryptsetup.c:3586 -#: src/veritysetup.c:473 src/veritysetup.c:474 src/veritysetup.c:475 -#: src/veritysetup.c:478 src/veritysetup.c:479 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:3604 src/cryptsetup.c:3605 src/cryptsetup.c:3606 +#: src/cryptsetup.c:3607 src/cryptsetup.c:3610 src/cryptsetup.c:3663 +#: src/cryptsetup.c:3664 src/cryptsetup.c:3672 src/cryptsetup.c:3673 +#: 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 "バイト" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3605 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "キーファイルでスキップするバイト数" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3606 msgid "Limits the read from newly added keyfile" msgstr "新しく追加するキーファイルの読み込みの制限" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3607 msgid "Number of bytes to skip in newly added keyfile" msgstr "新しく追加するキーファイルでスキップするバイト数" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3608 msgid "Slot number for new key (default is first free)" msgstr "新しいキーのスロット番号 (デフォルトは最初の空き)" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3609 msgid "The size of the device" msgstr "デバイスのサイズ" -#: src/cryptsetup.c:3522 src/cryptsetup.c:3524 src/cryptsetup.c:3525 -#: src/cryptsetup.c:3531 src/integritysetup.c:552 src/integritysetup.c:559 +#: src/cryptsetup.c:3609 src/cryptsetup.c:3611 src/cryptsetup.c:3612 +#: src/cryptsetup.c:3618 src/integritysetup.c:569 src/integritysetup.c:576 msgid "SECTORS" msgstr "セクタ" -#: src/cryptsetup.c:3523 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3610 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "指定されたデバイスサイズ分だけ使います (デバイスの残りは無視します). 危険!" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3611 msgid "The start offset in the backend device" msgstr "バックエンドデバイスの開始オフセット" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3612 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "最初の暗号化データのセクタを何セクタスキップするか" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3613 msgid "Create a readonly mapping" msgstr "読み込み専用のマッピングを作成" -#: src/cryptsetup.c:3527 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3614 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "確認をしません" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3615 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "パスフレーズの対話的入力のタイムアウト (秒単位)" -#: src/cryptsetup.c:3528 src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3615 src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "秒" -#: src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "進捗線の更新(秒単位)" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3617 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "パスフレーズの再試行の回数" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3618 msgid "Align payload at sector boundaries - for luksFormat" msgstr "luksFormat 向けにペイロードを セクタ境界に合わせます" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3619 msgid "File with LUKS header and keyslots backup" msgstr "LUKS ヘッダとキースロットバックアップのファイル" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3620 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "ボリュームキーの生成に /dev/random を使います" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3621 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "ボリュームキーの生成に /dev/urandom (擬似乱数)を使います" -#: src/cryptsetup.c:3535 +#: src/cryptsetup.c:3622 msgid "Share device with another non-overlapping crypt segment" msgstr "オーバーラップしない暗号セグメントのあるデバイスと共有します" -#: src/cryptsetup.c:3536 src/veritysetup.c:482 +#: src/cryptsetup.c:3623 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "使用するデバイスの UUID" -#: src/cryptsetup.c:3537 src/integritysetup.c:579 +#: src/cryptsetup.c:3624 src/integritysetup.c:599 msgid "Allow discards (aka TRIM) requests for device" msgstr "デバイスに discards (TRIM) 処理を許可します" -#: src/cryptsetup.c:3538 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3625 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "デバイスかファイルにある分離された LUKS ヘッダ" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3626 msgid "Do not activate device, just check passphrase" msgstr "デバイスをアクティベートせず、パスフレーズだけ確認する" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3627 msgid "Use hidden header (hidden TCRYPT device)" msgstr "隠されたヘッダを使う (隠された TCRYPT デバイス)" -#: src/cryptsetup.c:3541 +#: src/cryptsetup.c:3628 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "デバイスはシステム TCRYPT ドライブ (ブートローダの対応が必要)" -#: src/cryptsetup.c:3542 +#: src/cryptsetup.c:3629 msgid "Use backup (secondary) TCRYPT header" msgstr "バックアップ (セカンダリ) TCRYPT ヘッダを使います" -#: src/cryptsetup.c:3543 +#: src/cryptsetup.c:3630 msgid "Scan also for VeraCrypt compatible device" msgstr "VeraCrypt 互換デバイスも探します" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3631 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "VeraCrypt 互換デバイス向けの Personal Iteration Multiplier" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3632 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "VeraCrypt互換デバイス向けの Query Personal Iteration Multiplier" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3633 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "デバイスメタデータのタイプ: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3634 msgid "Disable password quality check (if enabled)" msgstr "パスワードの質の確認を無効にする (もし有効なら)" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3635 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "dm-crypt の same_cpu_crypt performance compatibility オプションを使う" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3636 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "dm-crypt の submit_from_crypt_cpus performance compatibility オプションを使う" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3637 msgid "Bypass dm-crypt workqueue and process read requests synchronously" msgstr "dm-crypt の workqueue をバイパスし読み込み要求を同期処理する" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3638 msgid "Bypass dm-crypt workqueue and process write requests synchronously" msgstr "dm-crypt の workqueue をバイパスし書き込み要求を同期処理する" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3639 msgid "Device removal is deferred until the last user closes it" msgstr "デバイスの削除はデバイス上のリソースを使う人がいなくなるまで遅延されます" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3640 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "OOM Killer を回避するために PBKDF メモリのシリアライズにグローバルロックを使います" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3641 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "LUKS 向けの PBKDF の繰り返し時間 (ms単位)" -#: src/cryptsetup.c:3554 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3641 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "ミリ秒" -#: src/cryptsetup.c:3555 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3642 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "LUKS2 向けの PBKDF アルゴリズム: argon2i, argon2id, pbkdf2" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "PBKDF メモリコスト制限" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "キロバイト" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "PBKDF 並列コスト" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "スレッド" -#: src/cryptsetup.c:3558 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3645 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "PBKDF 繰り返しコスト (強制する, ベンチマークしない)" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3646 msgid "Keyslot priority: ignore, normal, prefer" msgstr "キースロット優先度: ignore, normal, prefer" -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3647 msgid "Disable locking of on-disk metadata" msgstr "ディスク上のメタデータのロックをしない" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3648 msgid "Disable loading volume keys via kernel keyring" msgstr "ボリュームキーの読み込みをカーネルキーリング経由で行わない" -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3649 msgid "Data integrity algorithm (LUKS2 only)" msgstr "データ改ざん検出アルゴリズム (LUKS2 のみ)" -#: src/cryptsetup.c:3563 src/integritysetup.c:573 +#: src/cryptsetup.c:3650 src/integritysetup.c:590 msgid "Disable journal for integrity device" msgstr "データ改ざん検出が有効なデバイスのジャーナリングを禁止します" -#: src/cryptsetup.c:3564 src/integritysetup.c:547 +#: src/cryptsetup.c:3651 src/integritysetup.c:564 msgid "Do not wipe device after format" msgstr "フォーマット後にデバイスのデータを消去しない" -#: src/cryptsetup.c:3565 src/integritysetup.c:577 +#: src/cryptsetup.c:3652 src/integritysetup.c:594 msgid "Use inefficient legacy padding (old kernels)" msgstr "非効率的なレガシーパディングを使う (古いカーネル)" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3653 msgid "Do not ask for passphrase if activation by token fails" msgstr "トークンによるアクティベーションが失敗したらパスフレーズを入力させません" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3654 msgid "Token number (default: any)" msgstr "トークンナンバー (デフォルト: 任意)" -#: src/cryptsetup.c:3568 +#: src/cryptsetup.c:3655 msgid "Key description" msgstr "キーデスクリプション" -#: src/cryptsetup.c:3569 +#: src/cryptsetup.c:3656 msgid "Encryption sector size (default: 512 bytes)" msgstr "暗号化セクタサイズ (デフォルト: 512 バイト)" -#: src/cryptsetup.c:3570 +#: src/cryptsetup.c:3657 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "セクタサイズ (512バイトとは限らない) のIVを使う" -#: src/cryptsetup.c:3571 +#: src/cryptsetup.c:3658 msgid "Set activation flags persistent for device" msgstr "デバイスのアクティベーションフラグを持続的にします" -#: src/cryptsetup.c:3572 +#: src/cryptsetup.c:3659 msgid "Set label for the LUKS2 device" msgstr "LUKS2 デバイスのラベルを設定" -#: src/cryptsetup.c:3573 +#: src/cryptsetup.c:3660 msgid "Set subsystem label for the LUKS2 device" msgstr "LUKS2 デバイスにサブシステムレベルを設定します" -#: src/cryptsetup.c:3574 +#: src/cryptsetup.c:3661 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "unbound (データセグメントが割り当てられていない) LUKS2 キースロットを作成またはダンプ" -#: src/cryptsetup.c:3575 +#: src/cryptsetup.c:3662 msgid "Read or write the json from or to a file" msgstr "json をファイルに読み書きする" -#: src/cryptsetup.c:3576 +#: src/cryptsetup.c:3663 msgid "LUKS2 header metadata area size" msgstr "LUKS2 ヘッダメタデータ領域サイズ" -#: src/cryptsetup.c:3577 +#: src/cryptsetup.c:3664 msgid "LUKS2 header keyslots area size" msgstr "LUKS2 ヘッダキースロット領域サイズ" -#: src/cryptsetup.c:3578 +#: src/cryptsetup.c:3665 msgid "Refresh (reactivate) device with new parameters" msgstr "デバイスを新しいパラメータデリフレッシュ(再アクティベート)する" -#: src/cryptsetup.c:3579 +#: src/cryptsetup.c:3666 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "LUKS2 キースロット: 暗号鍵のサイズ" -#: src/cryptsetup.c:3580 +#: src/cryptsetup.c:3667 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "LUKS2 キースロット: キースロットの暗号化に使う暗号" -#: src/cryptsetup.c:3581 +#: src/cryptsetup.c:3668 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "LUKS2 デバイスを暗号化 (in-place で暗号化)" -#: src/cryptsetup.c:3582 +#: src/cryptsetup.c:3669 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "LUKS2 デバイスを復号 (つまり暗号化をやめる)" -#: src/cryptsetup.c:3583 +#: src/cryptsetup.c:3670 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "LUKS2 再暗号化をメタデータだけ初期化。" -#: src/cryptsetup.c:3584 +#: src/cryptsetup.c:3671 msgid "Resume initialized LUKS2 reencryption only." msgstr "初期化済 LUKS2 再暗号化だけ再開。" -#: src/cryptsetup.c:3585 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3672 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "データデバイスサイズを減らす (データオフセットを移動する). 危険!" -#: src/cryptsetup.c:3586 +#: src/cryptsetup.c:3673 msgid "Maximal reencryption hotzone size." msgstr "最大再暗号化ホットゾーンサイズ" -#: src/cryptsetup.c:3587 +#: src/cryptsetup.c:3674 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "再暗号化ホットゾーン弾性(resilience)タイプe (checksum,journal,none)" -#: src/cryptsetup.c:3588 +#: src/cryptsetup.c:3675 msgid "Reencryption hotzone checksums hash" msgstr "再暗号化ホットゾーンチェックサムハッシュ" -#: src/cryptsetup.c:3589 +#: src/cryptsetup.c:3676 msgid "Override device autodetection of dm device to be reencrypted" msgstr "再暗号化する dm デバイスの自動検出を上書きする" -#: src/cryptsetup.c:3605 src/veritysetup.c:505 src/integritysetup.c:595 +#: src/cryptsetup.c:3692 src/veritysetup.c:515 src/integritysetup.c:615 msgid "[OPTION...] " msgstr "[オプション...] <アクション> <アクション特有>" -#: src/cryptsetup.c:3656 src/veritysetup.c:539 src/integritysetup.c:606 +#: src/cryptsetup.c:3747 src/veritysetup.c:551 src/integritysetup.c:626 msgid "Argument missing." msgstr "<アクション> がありません。" -#: src/cryptsetup.c:3725 src/veritysetup.c:570 src/integritysetup.c:637 +#: src/cryptsetup.c:3817 src/veritysetup.c:582 src/integritysetup.c:660 msgid "Unknown action." msgstr "未知のアクションです。" -#: src/cryptsetup.c:3735 +#: src/cryptsetup.c:3827 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "--refresh と --test-passphrase は同時には使えません。" -#: src/cryptsetup.c:3740 +#: src/cryptsetup.c:3832 msgid "Option --deferred is allowed only for close command." msgstr "--deferred は close でしか使えません。" -#: src/cryptsetup.c:3745 +#: src/cryptsetup.c:3837 msgid "Option --shared is allowed only for open of plain device." msgstr "--shared は plain デバイスの open にしか使えません。" -#: src/cryptsetup.c:3750 src/integritysetup.c:654 +#: src/cryptsetup.c:3842 src/integritysetup.c:677 msgid "Option --allow-discards is allowed only for open operation." msgstr "--allow-discards は open でしか使えません。" -#: src/cryptsetup.c:3755 +#: src/cryptsetup.c:3847 msgid "Option --persistent is allowed only for open operation." msgstr "--persistent は open でしか使えません。" -#: src/cryptsetup.c:3760 +#: src/cryptsetup.c:3852 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "--serialize-memory-hard-pbkdf は open でしか使えません。" -#: src/cryptsetup.c:3765 +#: src/cryptsetup.c:3857 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "--persistent は --test-passphrase と一緒には使えません。" -#: src/cryptsetup.c:3775 +#: src/cryptsetup.c:3867 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2848,259 +2889,259 @@ "--key-size は luksFormat か luksAddKey で --unbound をつけた場合か、\n" "open, benchmark の時しか使えません。キーファイルについて制限をつけたい場合は --keyfile-size=(バイト) を使ってください。" -#: src/cryptsetup.c:3781 +#: src/cryptsetup.c:3873 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "--integrity は luksFormat (LUKS2) でしか使えません。" -#: src/cryptsetup.c:3786 +#: src/cryptsetup.c:3878 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "--integrity-no-wipe は format で integrity extension 付きの時しか使えません。" -#: src/cryptsetup.c:3792 +#: src/cryptsetup.c:3884 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "--label と --subsystem は luksFormat で config LUKS2 operations にしか使えません。" -#: src/cryptsetup.c:3798 +#: src/cryptsetup.c:3890 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "--test-passphrase は LUKS か TCRYPT か BITLK デバイスの open にしか使えません。." -#: src/cryptsetup.c:3803 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3895 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "キーサイズは 8bit の倍数でなければなりません" -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3901 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "キースロットは不正です。" -#: src/cryptsetup.c:3816 +#: src/cryptsetup.c:3908 msgid "Option --key-file takes precedence over specified key file argument." msgstr "--key-file は他で指定されたキーファイルを上書きします。" -#: src/cryptsetup.c:3823 src/veritysetup.c:582 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3915 src/veritysetup.c:594 src/integritysetup.c:686 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "オプションに負の数を与えられません。" -#: src/cryptsetup.c:3827 +#: src/cryptsetup.c:3919 msgid "Only one --key-file argument is allowed." msgstr "--key-file は一つしか使えません。" -#: src/cryptsetup.c:3831 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3923 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "--use-[u]random は一つしか使えません。" -#: src/cryptsetup.c:3835 +#: src/cryptsetup.c:3927 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "--use-[u]random は luksFormat にしか使えません。" -#: src/cryptsetup.c:3839 +#: src/cryptsetup.c:3931 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "--uuid は luksFormat か luksUUID でしか使えません。" -#: src/cryptsetup.c:3843 +#: src/cryptsetup.c:3935 msgid "Option --align-payload is allowed only for luksFormat." msgstr "--align-payload は luksFormat でしか使えません。" -#: src/cryptsetup.c:3847 +#: src/cryptsetup.c:3939 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "--luks2-metadata-size と --opt-luks2-keyslots-size は LUKS2 で luksFormat でしか使えません。" -#: src/cryptsetup.c:3852 +#: src/cryptsetup.c:3944 msgid "Invalid LUKS2 metadata size specification." msgstr "不正なLUKS2 メタデータサイズです。" -#: src/cryptsetup.c:3856 +#: src/cryptsetup.c:3948 msgid "Invalid LUKS2 keyslots size specification." msgstr "不正な LUKS2 キースロットサイズです。" -#: src/cryptsetup.c:3860 +#: src/cryptsetup.c:3952 msgid "Options --align-payload and --offset cannot be combined." msgstr "--align-payload と --offset は一緒に使えません。" -#: src/cryptsetup.c:3866 +#: src/cryptsetup.c:3958 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "--skip は plain か loopaes デバイスの open にしか使えません。" -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3965 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "--offset は plain か loopaes デバイスの open、luksFormat と再暗号化にしか使えません。" -#: src/cryptsetup.c:3879 +#: src/cryptsetup.c:3971 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "--tcrypt-hidden と --tcrypt-system と --tcrypt-backup は TCRYPT デバイスしか使えません。" -#: src/cryptsetup.c:3884 +#: src/cryptsetup.c:3976 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "--tcrypt-hidden は --allow-discards と一緒に使えません。" -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:3981 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "--veracrypt は TCRYPT デバイスでしか使えません。" -#: src/cryptsetup.c:3895 +#: src/cryptsetup.c:3987 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "--veracrypt-pim の引数が不正です。" -#: src/cryptsetup.c:3899 +#: src/cryptsetup.c:3991 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "--veracrypt-pim は VeraCrypt 互換デバイスにしか使えません。" -#: src/cryptsetup.c:3907 +#: src/cryptsetup.c:3999 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "--veracrypt-query-pim は VeraCrypt 互換デバイスにしか使えません。" -#: src/cryptsetup.c:3911 +#: src/cryptsetup.c:4003 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "--veracrypt-pim と --veracrypt-query-pim はどちらかしか使えません。" -#: src/cryptsetup.c:3918 +#: src/cryptsetup.c:4010 msgid "Option --priority can be only ignore/normal/prefer." msgstr "--priority の引数は ignore/normal/prefer のいずれかのみです。" -#: src/cryptsetup.c:3923 src/cryptsetup.c:3961 +#: src/cryptsetup.c:4015 src/cryptsetup.c:4053 msgid "Keyslot specification is required." msgstr "キースロットの指定が必要です。" -#: src/cryptsetup.c:3928 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4020 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "パスワードからキーを作る関数 (PBKDF) は pbkdf2 argon2i argon2id のいずれかのみです。" -#: src/cryptsetup.c:3933 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4025 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "PBKDF の繰り返し回数の強制と繰り返し時間指定オプションは共存できません。" -#: src/cryptsetup.c:3939 +#: src/cryptsetup.c:4031 msgid "Sector size option is not supported for this command." msgstr "このコマンドでセクタサイズオプションはサポートされていません。" -#: src/cryptsetup.c:3951 +#: src/cryptsetup.c:4043 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." msgstr "大きな IV セクタオプションは plain タイプでセクタサイズが 512 バイトより大きいものをオープンする時しかサポートしていません。" -#: src/cryptsetup.c:3956 +#: src/cryptsetup.c:4048 msgid "Key size is required with --unbound option." msgstr "--unbound にはキーサイズが必要です。" -#: src/cryptsetup.c:3966 +#: src/cryptsetup.c:4058 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "--unbound は luksAddKey か luksDump でしか使えません。" -#: src/cryptsetup.c:3971 +#: src/cryptsetup.c:4063 msgid "Option --refresh may be used only with open action." msgstr "--refresh は open でしか使えません。" -#: src/cryptsetup.c:3982 +#: src/cryptsetup.c:4074 msgid "Cannot disable metadata locking." msgstr "メタデータロックを禁止できません。" -#: src/cryptsetup.c:3992 +#: src/cryptsetup.c:4085 msgid "Invalid max reencryption hotzone size specification." msgstr "再暗号化ホットゾーン最大サイズの指定が不正です。" -#: src/cryptsetup.c:4000 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4093 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "デバイスサイズの指定が不正です。" -#: src/cryptsetup.c:4003 +#: src/cryptsetup.c:4096 msgid "Maximum device reduce size is 1 GiB." msgstr "デバイスを減らせる最大値は 1 GiB です。" -#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4099 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "減らすサイズは 512 バイトセクタの倍数である必要があります。" -#: src/cryptsetup.c:4011 +#: src/cryptsetup.c:4104 msgid "Invalid data size specification." msgstr "データサイズの指定が不正です。" -#: src/cryptsetup.c:4016 +#: src/cryptsetup.c:4109 msgid "Reduce size overflow." msgstr "減らすサイズのオーバーフロー。" -#: src/cryptsetup.c:4020 +#: src/cryptsetup.c:4113 msgid "LUKS2 decryption requires option --header." msgstr "LUKS2 復号には --header が必要です。" -#: src/cryptsetup.c:4024 +#: src/cryptsetup.c:4117 msgid "Device size must be multiple of 512 bytes sector." msgstr "デバイスサイズは 512 バイトセクタの倍数である必要があります。" -#: src/cryptsetup.c:4028 +#: src/cryptsetup.c:4121 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "--reduce-device-size と --data-size は一緒に使えません。" -#: src/cryptsetup.c:4032 +#: src/cryptsetup.c:4125 msgid "Options --device-size and --size cannot be combined." msgstr "--device-size と --size は一緒に使えません。" -#: src/cryptsetup.c:4036 +#: src/cryptsetup.c:4129 msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." msgstr "--keyslot-cipher と --keyslot-key-size は同時に使う必要があります。" -#: src/veritysetup.c:67 +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "不正なソルト文字列が指定されました。" -#: src/veritysetup.c:98 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "ハッシュイメージ %s を書けるように作成できませんでした。" -#: src/veritysetup.c:108 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "FEC イメージ %s を書けるように作成できませんでした。" -#: src/veritysetup.c:182 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "不正なルートハッシュ文字列が指定されました。" -#: src/veritysetup.c:190 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "署名ファイル %s が不正です。" -#: src/veritysetup.c:197 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "署名ファイル %s を読み込めませんでした。" -#: src/veritysetup.c:397 +#: src/veritysetup.c:406 msgid " " msgstr "<データデバイス> <ハッシュデバイス>" -#: src/veritysetup.c:397 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:492 msgid "format device" msgstr "デバイスをフォーマット" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid " " msgstr "<データデバイス> <ハッシュデバイス> <ルートハッシュ>" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid "verify device" msgstr "デバイスを検証" -#: src/veritysetup.c:399 +#: src/veritysetup.c:408 msgid " " msgstr "<データデバイス> <名前> <ハッシュデバイス> <ルートハッシュ>" -#: src/veritysetup.c:401 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:495 msgid "show active device status" msgstr "アクティブデバイスのステータスを表示" -#: src/veritysetup.c:402 +#: src/veritysetup.c:411 msgid "" msgstr "<ハッシュデバイス>" -#: src/veritysetup.c:402 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:496 msgid "show on-disk information" msgstr "ディスク上の情報を表示" -#: src/veritysetup.c:421 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3115,7 +3156,7 @@ "<ハッシュデバイス> は検証用データが入るデバイス\n" "<ルートハッシュ> は <ハッシュデバイス> のルートノードのハッシュ\n" -#: src/veritysetup.c:428 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3126,134 +3167,139 @@ "コンパイル時に決めた dm-verity のデフォルトパラメータ:\n" "\tハッシュ: %s, データブロック (バイト): %u, ハッシュブロック (バイト): %u, ソルトサイズ: %u, ハッシュフォーマット: %u\n" -#: src/veritysetup.c:471 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "verity スーパーブロックを使いません" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "フォーマットタイプ (1 - ノーマル, 0 - Chrome OS 形式)" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "number" msgstr "数字" -#: src/veritysetup.c:473 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "データデバイスのブロックサイズ" -#: src/veritysetup.c:474 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "ハッシュデバイスのブロックサイズ" -#: src/veritysetup.c:475 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "FEC パリティバイト" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "データファイルのブロック数" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "blocks" msgstr "ブロック" -#: src/veritysetup.c:477 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "誤り訂正用データが格納されるデバイスのパス" -#: src/veritysetup.c:477 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:566 msgid "path" msgstr "パス" -#: src/veritysetup.c:478 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "ハッシュデバイスの開始オフセット" -#: src/veritysetup.c:479 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "FEC デバイスの開始オフセット" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "ハッシュアルゴリズム" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "string" msgstr "文字列" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "Salt" msgstr "ソルト" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "hex string" msgstr "16進数文字列" -#: src/veritysetup.c:483 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "ルートハッシュ署名ファイルのパス" -#: src/veritysetup.c:484 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "破損が検出されたらカーネルを再起動する" -#: src/veritysetup.c:485 +#: src/veritysetup.c:495 msgid "Panic kernel if corruption is detected" msgstr "破損が検出されたらカーネルパニックさせる" -#: src/veritysetup.c:486 +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "破損はログするだけで再起動まではしない" -#: src/veritysetup.c:487 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "0 埋めされたブロックは検証しない" -#: src/veritysetup.c:488 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "最初に読む時一度だけデータブロックを検証する" -#: src/veritysetup.c:588 +#: src/veritysetup.c:600 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "--ignore-corruption, --restart-on-corruption, --ignore-zero-blocks は open 時にか使えません。" -#: src/veritysetup.c:593 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "--root-hash-signature は open でしか使えません。" -#: src/veritysetup.c:598 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "--ignore-corruption と --restart-on-corruption は同時に使えません。" -#: src/veritysetup.c:603 +#: src/veritysetup.c:615 msgid "Option --panic-on-corruption and --restart-on-corruption cannot be used together." msgstr "--panic-on-corruption と --restart-on-corruption は同時に使えません。" -#: src/integritysetup.c:84 src/utils_password.c:305 +#: src/integritysetup.c:85 +#, c-format +msgid "Invalid key size. Maximum is %u bytes." +msgstr "不正なキーサイズです。最大は %u バイトです。" + +#: src/integritysetup.c:95 src/utils_password.c:339 #, c-format msgid "Cannot read keyfile %s." msgstr "キーファイル %s を読みこめませんでした。" -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:99 src/utils_password.c:344 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "%d バイトをキーファイル %s から読みこめませんでした。" -#: src/integritysetup.c:254 +#: src/integritysetup.c:266 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "タグサイズ %u、内部整合性は %s でフォーマットされました。\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:492 src/integritysetup.c:496 msgid "" msgstr "<整合性デバイス>" -#: src/integritysetup.c:480 +#: src/integritysetup.c:493 msgid " " msgstr "<整合性デバイス> <名前>" -#: src/integritysetup.c:502 +#: src/integritysetup.c:515 #, c-format msgid "" "\n" @@ -3264,403 +3310,409 @@ "<名前> は %s に作られるデバイス\n" "<整合性デバイス> は整合性タグを格納するデバイス\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 "" "\n" "コンパイル時に決められたデフォルトの dm-integrity のパラメータ:\n" "\tチェックサムアルゴリズム: %s\n" +" 最大キーファイルサイズ: %dkB\n" -#: 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 "ビットあたりの 512 バイトセクタ (bitmap モード)。" -#: src/integritysetup.c:556 +#: src/integritysetup.c:573 msgid "Bitmap mode flush time" msgstr "Bitmap モードのフラッシュ時間" -#: 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 msgid "The size of the data integrity key" msgstr "データ整合性キーのサイズ" -#: src/integritysetup.c:563 +#: src/integritysetup.c:580 msgid "Read the integrity key from a file" msgstr "整合性キーをファイルから読み込む" -#: src/integritysetup.c:565 +#: src/integritysetup.c:582 msgid "Journal integrity algorithm" msgstr "ジャーナル整合性アルゴリズム" -#: src/integritysetup.c:566 +#: src/integritysetup.c:583 msgid "The size of the journal integrity key" msgstr "ジャーナル整合性キーのサイズ" -#: src/integritysetup.c:567 +#: src/integritysetup.c:584 msgid "Read the journal integrity key from a file" msgstr "ジャーナル整合性キーをファイルから読み込む" -#: src/integritysetup.c:569 +#: src/integritysetup.c:586 msgid "Journal encryption algorithm" msgstr "ジャーナル暗号化アルゴリズム" -#: src/integritysetup.c:570 +#: src/integritysetup.c:587 msgid "The size of the journal encryption key" msgstr "ジャーナル暗号化キーのサイズ" -#: src/integritysetup.c:571 +#: src/integritysetup.c:588 msgid "Read the journal encryption key from a file" msgstr "ジャーナル暗号化キーをファイルから読み込む" -#: 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 "変更の追跡に bitmap を使いジャーナルの整合性デバイスの無効にします" -#: 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 "スーパーブロックを HMAC で保護しません(古いカーネル)" + +#: src/integritysetup.c:597 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "ボリュームの HMAC キーによる再計算を許可(古いカーネル)" + +#: src/integritysetup.c:672 msgid "Option --integrity-recalculate can be used only for open action." msgstr "--integrity-recalculate は open でしか使えません。" -#: 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 "--journal-size, --interleave-sectors, --sector-size, --tag-size, --no-wipe は format でしか使えません。" -#: src/integritysetup.c:675 +#: src/integritysetup.c:698 msgid "Invalid journal size specification." msgstr "不正なジャーナルサイズの指定です。" -#: 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 "リカバリと bitmap モードオプションは同時には使えません。" -#: src/integritysetup.c:707 +#: src/integritysetup.c:727 msgid "Journal options cannot be used in bitmap mode." msgstr "ジャーナルオプションは bitmap モードでは使えません。" -#: src/integritysetup.c:711 +#: src/integritysetup.c:731 msgid "Bitmap options can be used only in bitmap mode." msgstr "bitmap オプションは bitmap モードでしか使えません。" -#: src/cryptsetup_reencrypt.c:172 +#: src/cryptsetup_reencrypt.c:190 msgid "Reencryption already in-progress." msgstr "既に再暗号化中です。" -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "デバイスが使用中のため %s を排他的にオープンできません。" -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "アライメントつきメモリの確保ができませんでした。" -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "デバイス %s を読めません。" -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "LUKS1 デバイス %s を使用不可としてマークします。" -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "LUKS2 offline reencrypt フラグをデバイス %s に設定します。" -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "デバイス %s に書き込めません。" -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "再暗号化ログファイルに書きこめません。" -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "再暗号化ログファイルを読み込めません。" -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "ログファイル %s が既にあるので再暗号化を再開します。\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "古い LUKS ヘッダを使っているテンポラリデバイスを有効にします。" -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "新しい LUKS ヘッダを使っているテンポラリデバイスを有効にします。" -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "テンポラリデバイスの有効化に失敗しました。" -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "データオフセットの設定に失敗しました。" -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "メタデータサイズの設定に失敗しました。" -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "デバイス %s の新しい LUKS ヘッダを作成しました。" -#: 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 "このバージョンの cryptsetup-reencrypt は新しい内部トークンタイプ %s を扱えません。" -#: 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 msgid "Failed to write activation flags to new header." msgstr "アクティベーションフラグを新しいヘッダに書き込めません。" -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "バックアップヘッダから要求(requirements)を読み込めません。" -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "%s ヘッダバックアップデバイス %s が作成されました。" -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "LUKS バックアップヘッダが作成できません。" -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "デバイス %2s の %1s ヘッダが復元できません。" -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "デバイス %2s の %1s ヘッダを復元しました。" -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "テンポラリ LUKS デバイスをオープンできません。" -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "デバイスサイズを取得できません。" -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "再暗号化中に I/O エラーが発生しました。" -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "与えられた UUID が不正です。" -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "再暗号化ログファイルを開けません。" -#: 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 "復号を実行中ではありません。与えられた UUID は中止された復号を再開するためだけに使えます。" -#: src/cryptsetup_reencrypt.c:1504 +#: src/cryptsetup_reencrypt.c:1522 #, c-format msgid "Changed pbkdf parameters in keyslot %i." msgstr "キースロット %i の pbkdf パラメータを変更しました。" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "再暗号化のブロックサイズ" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "MiB" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "キーを変えず、データ領域の再暗号化を行わない" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "新しいボリューム(マスター)キーをファイルから読み込む" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "LUKS 向け PBKDF2 の繰り返し時間 (ミリ秒単位)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "デバイスアクセス時に direct-io を使う" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "ブロック毎に fsync() する" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "ログファイルをブロック毎に更新する" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "このスロットだけ使う (残りは無効化されます)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "暗号化されていないデバイスに新しいヘッダを作成する" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "デバイスを恒久的に復号状態にする (つまり暗号化をやめる)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "復号の再開に使う UUID" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "メタデータタイプ: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[オプション...] <デバイス>" -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "再暗号化で以下が変わります: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "ボリュームキー" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "ハッシュ" -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr "暗号(cipher)" -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "引数が必要です。" -#: 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 "再暗号化のブロックサイズは 1 MiB から 64 MiB までの値しか使えません。" -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "デバイスを減らせる最大値は 64 MiB です。" -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "--new は --reduce-device-size か --header と一緒に使う必要があります" -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "--keep-key は --hash か --iter-time か --pbkdf-force-iterations と使う必要があります。" -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "--new は --decrypt と一緒に使えません。" -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "--decrypt は指定されたパラメータと互換性がありません。" -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "--uuid は --decrypt と一緒にしか使えません。" -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "不正な luks タイプです。'luks', 'luks1', 'luks2' のいずれかを使ってください。" @@ -3701,32 +3753,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "コマンド失敗:コード %i (%s)\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "キースロット %i が作成されました。" -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "キースロット %i がアンロックされました。" -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "キースロット %i が削除されました。" -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "トークン %i が作成されました。" -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "トークン %i が削除されました。" -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3734,55 +3786,55 @@ "\n" "ワイプが中断されました。" -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "警告: デバイス %s が既に '%s' パーティションシグネチャを含んでいます。\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "警告: デバイス %s が既に '%s' のスーパーブロックシグネチャを含んでいます。\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "デバイスシグネチャ検出の初期化に失敗しました。" -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "デバイス %s の stat() に失敗しました。" -#: 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 "デバイス %s は使用中です。フォーマットを始められません。" -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "ファイル %s を読み書き可能なモードでオープンできません。" -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "今ある '%s' パーティションのシグネチャ(オフセット: % バイト、デバイス %s)は消去されます。" -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "今ある '%s' スーパーブロックのシグネチャ(オフセット: % バイト、デバイス %s)は消去されます。" -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "デバイスシグネチャを消せません。" -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "デバイス %s のシグネチャが検出できません。" -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3790,7 +3842,7 @@ "\n" "再暗号化が中断されました。" -#: src/utils_password.c:43 src/utils_password.c:75 +#: src/utils_password.c:43 src/utils_password.c:76 #, c-format msgid "Cannot check password quality: %s" msgstr "パスワードの質を確認できません: %s" @@ -3809,46 +3861,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "パスワードの質が確認できません: 質の悪いパスフレーズ (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:228 src/utils_password.c:242 msgid "Error reading passphrase from terminal." msgstr "端末からパスフレーズを読み込めません。" -#: src/utils_password.c:206 +#: src/utils_password.c:240 msgid "Verify passphrase: " msgstr "同じパスフレーズを入力してください: " -#: src/utils_password.c:213 +#: src/utils_password.c:247 msgid "Passphrases do not match." msgstr "パスフレーズが一致しません。" -#: src/utils_password.c:250 +#: src/utils_password.c:284 msgid "Cannot use offset with terminal input." msgstr "端末からの入力でオフセットは使用できません。" -#: src/utils_password.c:253 +#: src/utils_password.c:287 #, c-format msgid "Enter passphrase: " msgstr "パスフレーズを入力してください: " -#: src/utils_password.c:256 +#: src/utils_password.c:290 #, c-format msgid "Enter passphrase for %s: " msgstr "%s のパスフレーズを入力してください: " -#: src/utils_password.c:287 +#: src/utils_password.c:321 msgid "No key available with this passphrase." msgstr "このパスフレーズで使用可能なキーはありません。" -#: 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 #, c-format msgid "Cannot open keyfile %s for write." msgstr "キーファイル %s を書き込み用にオープンできません。" -#: src/utils_password.c:335 +#: src/utils_password.c:372 #, c-format msgid "Cannot write to keyfile %s." msgstr "キーファイル %s に書き込めません。" diff -Nru cryptsetup-2.3.4/po/pl.po cryptsetup-2.3.6/po/pl.po --- cryptsetup-2.3.4/po/pl.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/pl.po 2021-05-28 04:57:08.000000000 -0500 @@ -1,14 +1,14 @@ # Polish translation for cryptsetup. # Copyright (C) 2010 Free Software Foundation, Inc. # This file is put in the public domain. -# Jakub Bogusz , 2010-2020. +# Jakub Bogusz , 2010-2021. # msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.4-rc0\n" +"Project-Id-Version: cryptsetup 2.3.6-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-08-27 21:34+0200\n" -"PO-Revision-Date: 2020-09-01 18:30+0200\n" +"POT-Creation-Date: 2021-05-21 17:33+0200\n" +"PO-Revision-Date: 2021-05-22 19:00+0200\n" "Last-Translator: Jakub Bogusz \n" "Language-Team: Polish \n" "Language: pl\n" @@ -18,62 +18,62 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -#: lib/libdevmapper.c:405 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "Nie można zainicjować device-mappera w czasie działania jako nie-root." -#: lib/libdevmapper.c:408 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "Nie można zainicjować device-mappera. Czy moduł jądra dm_mod jest wczytany?" -#: lib/libdevmapper.c:1149 +#: lib/libdevmapper.c:1180 msgid "Requested deferred flag is not supported." msgstr "Żądana flaga odroczona nie jest obsługiwana." -#: lib/libdevmapper.c:1216 +#: lib/libdevmapper.c:1249 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "DM-UUID dla urządzenia %s został skrócony." -#: lib/libdevmapper.c:1547 +#: lib/libdevmapper.c:1580 msgid "Unknown dm target type." msgstr "Nieznany typ celu dm." -#: lib/libdevmapper.c:1660 lib/libdevmapper.c:1665 lib/libdevmapper.c:1725 -#: lib/libdevmapper.c:1728 +#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766 +#: lib/libdevmapper.c:1769 msgid "Requested dm-crypt performance options are not supported." msgstr "Żądane opcje dm-crypta dotyczące wydajności nie są obsługiwane." -#: lib/libdevmapper.c:1672 lib/libdevmapper.c:1676 +#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Żądane opcje dm-verity dotyczące obsługi uszkodzenia danych nie są obsługiwane." -#: lib/libdevmapper.c:1680 +#: lib/libdevmapper.c:1721 msgid "Requested dm-verity FEC options are not supported." msgstr "Żądane opcje FEC dm-verity nie są obsługiwane." -#: lib/libdevmapper.c:1684 +#: lib/libdevmapper.c:1725 msgid "Requested data integrity options are not supported." msgstr "Żądane opcje integralności danych nie są obsługiwane." -#: lib/libdevmapper.c:1686 +#: lib/libdevmapper.c:1727 msgid "Requested sector_size option is not supported." msgstr "Żądana opcja sector_size nie jest obsługiwana." -#: lib/libdevmapper.c:1691 +#: lib/libdevmapper.c:1732 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "Żądane automatyczne przeliczenie znaczników integralności nie jest obsługiwane." -#: lib/libdevmapper.c:1695 lib/libdevmapper.c:1731 lib/libdevmapper.c:1734 +#: lib/libdevmapper.c:1736 lib/libdevmapper.c:1772 lib/libdevmapper.c:1775 #: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Porzucenie/TRIM nie jest obsługiwane." -#: lib/libdevmapper.c:1699 +#: lib/libdevmapper.c:1740 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "Żądany tryb bitmapy dm-integrity nie jest obsługiwany." -#: lib/libdevmapper.c:2663 +#: lib/libdevmapper.c:2713 #, c-format msgid "Failed to query dm-%s segment." msgstr "Nie udało się odpytać segmentu dm-%s." @@ -115,7 +115,7 @@ msgid "Cannot initialize crypto backend." msgstr "Nie można zainicjować backendu kryptograficznego." -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "Algorytm skrótu %s nie jest obsługiwany." @@ -129,7 +129,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "Nie można określić rodzaju urządzenia. Niezgodny sposób uaktywniania urządzenia?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "Ta operacja jest obsługiwana tylko dla urządzeń LUKS." @@ -137,7 +137,7 @@ msgid "This operation is supported only for LUKS2 device." msgstr "Ta operacja jest obsługiwana tylko dla urządzeń LUKS2." -#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2347 msgid "All key slots full." msgstr "Wszyskie miejsca na klucze są pełne." @@ -151,7 +151,7 @@ msgid "Key slot %d is full, please select another one." msgstr "Miejsce na klucz %d jest pełne, proszę wybrać inne." -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "Rozmiar urządzenia nie jest wyrównany do rozmiaru bloku logicznego urządzenia." @@ -160,7 +160,7 @@ msgid "Header detected but device %s is too small." msgstr "Wykryto nagłówek, ale urządzenie %s jest zbyt małe." -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "Ta operacja nie jest obsługiwana dla tego rodzaju urządzenia." @@ -168,17 +168,13 @@ msgid "Illegal operation with reencryption in-progress." msgstr "Niedozwolona operacja w trakcie ponownego szyfrowania." -#: lib/setup.c:832 lib/luks1/keymanage.c:475 +#: lib/setup.c:832 lib/luks1/keymanage.c:482 #, c-format msgid "Unsupported LUKS version %d." msgstr "Nieobsługiwana wersja LUKS %d." -#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 -msgid "Detached metadata device is not supported for this crypt type." -msgstr "Osobne urządzenie metadanych nie jest obsługiwane dla tego rodzaju szyfrowania." - -#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628 -#: lib/setup.c:2777 lib/setup.c:4517 +#: lib/setup.c:1427 lib/setup.c:2547 lib/setup.c:2619 lib/setup.c:2631 +#: lib/setup.c:2785 lib/setup.c:4532 #, c-format msgid "Device %s is not active." msgstr "Urządzenie %s nie jest aktywne." @@ -192,7 +188,7 @@ msgid "Invalid plain crypt parameters." msgstr "Błędne parametry szyfru plain." -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 msgid "Invalid key size." msgstr "Błędny rozmiar klucza." @@ -200,12 +196,16 @@ msgid "UUID is not supported for this crypt type." msgstr "UUID nie jest obsługiwany dla tego rodzaju szyfrowania." +#: lib/setup.c:1539 lib/setup.c:1959 +msgid "Detached metadata device is not supported for this crypt type." +msgstr "Osobne urządzenie metadanych nie jest obsługiwane dla tego rodzaju szyfrowania." + #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1238 src/cryptsetup.c:3945 +#: src/cryptsetup.c:1296 src/cryptsetup.c:4037 msgid "Unsupported encryption sector size." msgstr "Nieobsługiwany rozmiar sektora szyfrowania." -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "Rozmiar urządzenia nie jest wyrównany do żądanego rozmiaru sektura." @@ -249,8 +249,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "UWAGA: rozmiar obszaru kluczy LUKS2 zmienił się na % (w bajtach).\n" -#: lib/setup.c:1882 lib/utils_device.c:834 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:2358 lib/luks2/luks2_reencrypt.c:3383 #, c-format msgid "Device %s is too small." msgstr "Urządzenie %s jest zbyt małe." @@ -283,16 +283,16 @@ msgid "Can't format VERITY without device." msgstr "Nie można sformatować VERITY bez urządzenia." -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "Nieobsługiwany typ hasza VERITY %d." -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "Nieobsługiwany rozmiar bloku VERITY." -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "Nieobsługiwany offset hasza VERITY." @@ -322,236 +322,236 @@ msgid "Unknown crypt device type %s requested." msgstr "Nieznany typ żądanego urządzenia szyfrującego %s." -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "Nieobsługiwane parametry urządzenia %s." -#: 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:2410 +#: lib/luks2/luks2_reencrypt.c:2753 #, c-format msgid "Mismatching parameters on device %s." msgstr "Niezgodne parametry dla urządzenia %s." -#: lib/setup.c:2661 +#: lib/setup.c:2664 msgid "Crypt devices mismatch." msgstr "Urządzenia szyfrowane nie zgadzają się." -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3161 #, c-format msgid "Failed to reload device %s." msgstr "Nie udało się przeładować urządzenia %s." -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "Nie udało się wstrzymać urządzenia %s." -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3096 lib/luks2/luks2_reencrypt.c:3165 #, c-format msgid "Failed to resume device %s." msgstr "Nie udało wznowić urządzenia %s." -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "Błąd krytyczny przy przeładowywaniu urządzenia %s (w oparciu o urządzenie %s)." -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "Nie udało się przełączyć urządzenia %s na dm-error." -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "Nie można zmienić rozmiaru urządzenia loopback." -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "Czy na pewno zmienić UUID urządzenia?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "Plik nagłówka kopii zapasowej nie zawiera zgodnego nagłówka LUKS." -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "Wolumen %s nie jest aktywny." -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "Wolumen %s już został wstrzymany." -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "Wstrzymywanie nie jest obsługiwane dla urządzenia %s." -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "Błąd podczas wstrzymywania urządzenia %s." -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "Wolumen %s nie jest wstrzymany." - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "Wznawianie nie jest obsługiwane dla urządzenia %s." -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "Błąd podczas wznawiania urządzenia %s." -#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4314 lib/setup.c:4327 -#: lib/setup.c:4335 lib/setup.c:4348 lib/setup.c:4698 lib/setup.c:5844 +#: lib/setup.c:3164 lib/setup.c:3212 lib/setup.c:3282 +#, c-format +msgid "Volume %s is not suspended." +msgstr "Wolumen %s nie jest wstrzymany." + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5862 msgid "Volume key does not match the volume." msgstr "Klucz wolumenu nie pasuje do wolumenu." -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "Nie można dodać klucza, wszystkie miejsca na klucze wyłączone i nie podano klucza wolumenu." -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "Nie udało się podstawić nowego klucza." -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "Numer klucza %d jest nieprawidłowy." -#: lib/setup.c:3675 src/cryptsetup.c:1584 src/cryptsetup.c:1929 +#: lib/setup.c:3679 src/cryptsetup.c:1634 src/cryptsetup.c:1979 #, c-format msgid "Keyslot %d is not active." msgstr "Klucz %d nie jest aktywny." -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "Nagłówek urządzenia zachodzi na obszar danych." -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "Ponowne szyfrowanie trwa. Nie można uaktywnić urządzenia." -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2253 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2852 msgid "Failed to get reencryption lock." msgstr "Nie udało się uzyskać blokady ponownego szyfrowania." -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2871 msgid "LUKS2 reencryption recovery failed." msgstr "Odtwarzanie ponownego szyfrowania LUKS2 nie powiodło się." -#: lib/setup.c:4127 lib/setup.c:4384 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "Typ urządzenia nie został właściwie zainicjalizowany." -#: lib/setup.c:4175 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "Urządzenie %s już istnieje." -#: lib/setup.c:4182 +#: lib/setup.c:4192 #, c-format msgid "Cannot use device %s, name is invalid or still in use." msgstr "Nie można użyć urządzenia %s, nazwa jest nieprawidłowa lub nadal w użyciu." -#: lib/setup.c:4301 +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "Podano niewłaściwy klucz wolumenu dla zwykłego urządzenia." -#: lib/setup.c:4410 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "Podano niewłaściwy hasz główny dla urządzenia VERITY." -#: lib/setup.c:4417 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "Wymagany podpis hasza głównego." -#: lib/setup.c:4426 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "Brak pęku kluczy w jądrze: wymagany do przekazania podpisu do jądra." -#: lib/setup.c:4443 lib/setup.c:5920 +#: lib/setup.c:4458 lib/setup.c:5938 msgid "Failed to load key in kernel keyring." msgstr "Nie udało się załadować klucza do pęku kluczy w jądrze." -#: lib/setup.c:4496 lib/setup.c:4512 lib/luks2/luks2_json_metadata.c:2306 -#: src/cryptsetup.c:2676 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2744 #, c-format msgid "Device %s is still in use." msgstr "Urządzenie %s jest nadal w użyciu." -#: lib/setup.c:4521 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "Błędne urządzenie %s." -#: lib/setup.c:4637 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "Bufor klucza wolumenu zbyt mały." -#: lib/setup.c:4645 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "Nie można odtworzyć klucza wolumenu dla zwykłego urządzenia." -#: lib/setup.c:4662 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "Nie można odtworzyć hasza głównego dla urządzenia VERITY." -#: lib/setup.c:4664 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Ta operacja nie jest obsługiwana dla urządzenia szyfrującego %s." -#: lib/setup.c:4870 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "Operacja zrzutu nie jest obsługiwana dla tego rodzaju urządzenia." -#: lib/setup.c:5195 +#: lib/setup.c:5213 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "Offset danych nie jest wielokrotnością liczby bajtów %u." -#: lib/setup.c:5480 +#: lib/setup.c:5498 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "Nie można przekonwertować urządzenia %s, które jest nadal w użyciu." -#: lib/setup.c:5777 +#: lib/setup.c:5795 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "Nie udało się przypisać klucza %u jako nowego klucza wolumenu." -#: lib/setup.c:5850 +#: lib/setup.c:5868 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "Nie udało się zainicjować domyślnych parametrów klucza LUKS2." -#: lib/setup.c:5856 +#: lib/setup.c:5874 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "Nie udało się przypisać klucza %d do skrótu." -#: lib/setup.c:5987 +#: lib/setup.c:6005 msgid "Kernel keyring is not supported by the kernel." msgstr "Pęk kluczy w jądrze nie jest obsługiwany przez jądro." -#: lib/setup.c:5997 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6015 lib/luks2/luks2_reencrypt.c:2968 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "Nie udało się odczytać hasła z pęku kluczy (błąd %d)." -#: lib/setup.c:6021 +#: lib/setup.c:6039 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "Nie udało się uzyskać globalnej blokady serializacji dostępu ciężkiego pamięciowo." @@ -579,8 +579,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "Nie można przemieścić się do żądanego położenia pliku klucza." -#: 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 msgid "Out of memory while reading passphrase." msgstr "Brak pamięci podczas odczytu hasła." @@ -600,56 +600,56 @@ msgid "Cannot read requested amount of data." msgstr "Nie można odczytać żądanej ilości danych." -#: 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 #, c-format msgid "Device %s does not exist or access denied." msgstr "Urządzenie %s nie istnieje lub dostęp jest zabroniony." -#: lib/utils_device.c:197 +#: lib/utils_device.c:200 #, c-format msgid "Device %s is not compatible." msgstr "Urządzenie %s nie jest zgodne." -#: lib/utils_device.c:532 +#: lib/utils_device.c:544 #, c-format msgid "Ignoring bogus optimal-io size for data device (%u bytes)." msgstr "Zignorowano niewłaściwy rozmiar optimal-io dla urządzenia danych (%u bajtów)." -#: lib/utils_device.c:648 +#: lib/utils_device.c:666 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "Urządzenie %s jest zbyt małe. Wymagane przynajmniej % bajtów." -#: lib/utils_device.c:729 +#: lib/utils_device.c:747 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "Nie można użyć urządzenia %s, które jest w użyciu (już podmapowane lub zamontowane)." -#: lib/utils_device.c:733 +#: lib/utils_device.c:751 #, c-format msgid "Cannot use device %s, permission denied." msgstr "Nie można użyć urządzenia %s, brak uprawnień." -#: lib/utils_device.c:736 +#: lib/utils_device.c:754 #, c-format msgid "Cannot get info about device %s." msgstr "Nie można uzyskać informacji o urządzeniu %s." -#: lib/utils_device.c:759 +#: lib/utils_device.c:777 msgid "Cannot use a loopback device, running as non-root user." msgstr "Nie można użyć urządzenia loopback w czasie działania jako nie-root." -#: lib/utils_device.c:769 +#: lib/utils_device.c:787 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "Nie udało się podłączyć urządzenia loopback (wymagane urządzenie loop z flagą autoclear)." -#: lib/utils_device.c:815 +#: lib/utils_device.c:833 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "Żądany offset jest poza rzeczywistym rozmiarem urządzenia %s." -#: lib/utils_device.c:823 +#: lib/utils_device.c:841 #, c-format msgid "Device %s has zero size." msgstr "Urządzenie %s ma zerowy rozmiar." @@ -723,16 +723,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "UWAGA: brak katalogu blokad %s/%s!\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "Katalog blokujący %s/%s zostanie utworzony z domyślnymi wkompilowanymi uprawnieniami." #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Blokowanie przerwane. Ścieżka blokady %s/%s jest nieużywalna (%s nie jest katalogiem)." -#: 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 msgid "Cannot seek to device offset." msgstr "Nie można przemieścić się we właściwe położenie urządzenia." @@ -759,7 +759,7 @@ msgstr "Określenie szyfru powinno być w formacie [szyfr]-[tryb]-[iv]." #: lib/luks1/keyencryption.c:97 lib/luks1/keymanage.c:344 -#: lib/luks1/keymanage.c:635 lib/luks1/keymanage.c:1080 +#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1094 #: lib/luks2/luks2_json_metadata.c:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." @@ -779,12 +779,12 @@ msgstr "Błąd we/wy podczas szyfrowania klucza." #: 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:1263 -#: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "Nie można otworzyć urządzenia %s." @@ -805,13 +805,13 @@ msgid "LUKS keyslot %u is invalid." msgstr "Numer klucza LUKS %u jest nieprawidłowy." -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 -#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1445 -#: src/cryptsetup.c:1571 src/cryptsetup.c:1628 src/cryptsetup.c:1684 -#: src/cryptsetup.c:1751 src/cryptsetup.c:1854 src/cryptsetup.c:1918 -#: src/cryptsetup.c:2148 src/cryptsetup.c:2343 src/cryptsetup.c:2403 -#: src/cryptsetup.c:2469 src/cryptsetup.c:2633 src/cryptsetup.c:3291 -#: src/cryptsetup.c:3300 src/cryptsetup_reencrypt.c:1388 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1495 +#: src/cryptsetup.c:1621 src/cryptsetup.c:1678 src/cryptsetup.c:1734 +#: src/cryptsetup.c:1801 src/cryptsetup.c:1904 src/cryptsetup.c:1968 +#: src/cryptsetup.c:2198 src/cryptsetup.c:2409 src/cryptsetup.c:2471 +#: src/cryptsetup.c:2537 src/cryptsetup.c:2701 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3386 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "Urządzenie %s nie jest prawidłowym urządzeniem LUKS." @@ -835,7 +835,7 @@ msgid "Backup file does not contain valid LUKS header." msgstr "Plik kopii zapasowej nie zawiera prawidłowego nagłówka LUKS." -#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549 +#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:556 #: lib/luks2/luks2_json_metadata.c:1190 #, c-format msgid "Cannot open header backup file %s." @@ -875,101 +875,101 @@ msgid "Non standard key size, manual repair required." msgstr "Niestandardowy rozmiar klucza, wymagana ręczna naprawa." -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "Niestandardowe wyrównanie kluczy, wymagana ręczna naprawa." -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "Naprawianie kluczy." -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Klucz %i: naprawiono offset (%u -> %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Klucz %i: naprawiono pasy (%u -> %u)." -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Klucz %i: błędna sygnatura partycji." -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Klucz %i: zarodek wymazany." -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "Zapis nagłówka LUKS na dysk." -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "Naprawa nie powiodła się." -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "Żądany skrót LUKS %s nie jest obsługiwany." -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1145 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1188 msgid "No known problems detected for LUKS header." msgstr "W nagłówku LUKS nie wykryto żadnych znanych problemów." -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Błąd podczas uaktualniania nagłówka LUKS na urządzeniu %s." -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Błęd podczas ponownego odczytu nagłówka LUKS po uaktualnieniu na urządzeniu %s." -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "Offset danych dla nagłówka LUKS musi wynosić 0 lub więcej niż rozmiar nagłówka." -#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825 -#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1009 -#: src/cryptsetup.c:2796 +#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832 +#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2864 msgid "Wrong LUKS UUID format provided." msgstr "Podano zły format LUKS UUID." -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "Nie można utworzyć nagłówka LUKS: odczyt losowego zarodka nie powiódł się." -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "Nie można utworzyć nagłówka LUKS: uzyskanie skrótu nagłówka nie powiodło się (przy użyciu algorytmu %s)." -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "Klucz numer %d jest aktywny, należy go najpierw wyczyścić." -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "Klucz %d zawiera zbyt mało pasów. Zmieniony nagłówek?" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "Nie można otworzyć klucza (przy użyciu skrótu %s)." -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "Numer klucza %d jest błędny, proszę wybrać numer od 0 do %d." -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "Nie można wymazać urządzenia %s." @@ -1005,11 +1005,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "Algorytm skrótu PBKDF2 %s nie jest dostępny, pominięto." -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1022 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059 msgid "Required kernel crypto interface not available." msgstr "Wymagany interfejs kryptograficzny jądra nie jest dostępny." -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1024 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Proszę upewnić się, że moduł jądra algif_skcipher został załadowany." @@ -1035,146 +1035,160 @@ msgid "This function is not supported without TCRYPT header load." msgstr "Ta funkcja nie jest obsługiwana bez załadowanego nagłówka TCRYPT." -#: 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 "Przy analizie obsługiwanego Głównego Klucza Wolumenu napotkano nieoczekiwany wpis metadanych typu '%u'." -#: lib/bitlk/bitlk.c:380 +#: lib/bitlk/bitlk.c:397 msgid "Invalid string found when parsing Volume Master Key." msgstr "Przy analizie Głównego Klucza Wolumenu napotkano błędny ciąg znaków." -#: lib/bitlk/bitlk.c:385 +#: lib/bitlk/bitlk.c:402 #, c-format msgid "Unexpected string ('%s') found when parsing supported Volume Master Key." msgstr "Przy analizie obsługiwanego Głównego Klucza Wolumenu napotkano nieoczekiwany ciąg znaków ('%s')." -#: 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 "Przy analizie obsługiwanego Głównego Klucza Wolumenu napotkano nieoczekiwaną wartość wpisu metadanych '%u'." -#: lib/bitlk/bitlk.c:479 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "Nie udało się odczytać sygnatury BITLK z %s." -#: lib/bitlk/bitlk.c:485 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Błędna lub nieznana sygnatura urządzenia BITLK." + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "BITLK w wersji 1 nie jest obecnie obsługiwany." -#: lib/bitlk/bitlk.c:491 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "Błędna lub nieznana sygnatura rozruchowa urządzenia BITLK." -#: lib/bitlk/bitlk.c:503 -msgid "Invalid or unknown signature for BITLK device." -msgstr "Błędna lub nieznana sygnatura urządzenia BITLK." - -#: lib/bitlk/bitlk.c:515 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "Nieobsługiwany rozmiar sektora %." -#: lib/bitlk/bitlk.c:523 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "Nie udało się odczytać nagłówka BITLK z %s." -#: lib/bitlk/bitlk.c:548 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "Nie udało się odczytać metadanych BITLK FVE z %s." -#: lib/bitlk/bitlk.c:599 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "Nieznany lub nieobsługiwany rodzaj szyfrowania." -#: lib/bitlk/bitlk.c:632 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "Nie udało się odczytać wpisów metadanych BITLK z %s." -#: lib/bitlk/bitlk.c:926 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "Przy analizie zewnętrznego klucza napotkano nieoczekiwany wpis metadanych typu '%u'." + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "Przy analizie zewnętrznego klucza napotkano nieoczekiwaną wartość wpisu metadanych '%u'." + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "Przy analizie klucza początkowego napotkano nieoczekiwany wpis metadanych." + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "Ta operacja nie jest obsługiwana." -#: lib/bitlk/bitlk.c:934 +#: lib/bitlk/bitlk.c:1079 msgid "Unexpected key data size." msgstr "Nieoczekiwany rozmiar danych klucza." -#: lib/bitlk/bitlk.c:988 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "To urządzenie BITLK jest w nieobsługiwanym stanie i może być uaktywnione." -#: lib/bitlk/bitlk.c:994 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "Urządzenia BITLK o typie '%s' nie mogą być uaktywnione." -#: lib/bitlk/bitlk.c:1076 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "Uaktywnianie częściowo odszyfrowanych urządzeń BITLK nie jest obsługiwane." -#: lib/bitlk/bitlk.c:1212 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "Nie można uaktywnić urządzenia, brak obsługi BITLK IV w module dm-crypt jądra." -#: lib/bitlk/bitlk.c:1216 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "Nie można uaktywnić urządzenia, brak obsługi dyfuzora BITLK Elephant w module dm-crypt jądra." -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "Urządzenie Verity %s nie używa nagłówka na dysku." -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "Urządzenie %s nie jest prawidłowym urządzeniem VERITY." -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "Nieobsługiwana wersja VERITY %d." -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "Uszkodzony nagłówek VERITY." -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "Podano zły format UUID-a VERITY na urządzeniu %s." -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "Błąd podczas uaktualniania nagłówka VERITY na urządzeniu %s." -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "Weryfikacja podpisu hasza głównego nie jest obsługiwana." -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "Błędów nie można naprawić z urządzeniem FEC." -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "Znaleziono %u błędów możliwych do naprawienia z urządzeniem FEC." -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "Jądro nie obsługuje odwzorowań dm-verity." -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "Jądro nie obsługuje opcji podpisu dm-verity." -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "Urządzenie VERITY wykryło uszkodzenie po uaktywnieniu." @@ -1183,41 +1197,37 @@ msgid "Spare area is not zeroed at position %." msgstr "Nie wyzerowane miejsce zapasowe na pozycji %." -#: 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 msgid "Device offset overflow." msgstr "Przepełnienie offsetu urządzenia." -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "Weryfikacja nie powiodła się na pozycji %." -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "Błędne parametry rozmiaru dla urządzenia VERITY." - -#: lib/verity/verity_hash.c:296 +#: lib/verity/verity_hash.c:273 msgid "Hash area overflow." msgstr "Przepełnienie obszaru skrótu." -#: lib/verity/verity_hash.c:373 +#: lib/verity/verity_hash.c:346 msgid "Verification of data area failed." msgstr "Weryfikacja obszaru danych nie powiodła się." -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "Weryfikacja głównego hasza nie powiodła się." -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "Błąd wejścia/wyjścia podczas tworzenia obszaru haszy." -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "Tworzenie obszaru haszy nie powiodło się." -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "UWAGA: Jądro nie może uaktywnić urządzenia, jeśli rozmiar bloku danych przekracza rozmiar strony (%u)." @@ -1226,51 +1236,59 @@ msgid "Failed to allocate RS context." msgstr "Nie udało się przydzielić kontekstu RS." -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "Nie udało się przydzielić bufora." -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Nie udało się odczytać bloku RS % bajt %d." -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "Nie udało się odczytać parzystości dla bloku RS %." -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "Nie udało się naprawić parzystości dla bloku %." -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "Nie udało się zapisać parzystości dla bloku RS %." -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "Dla FEC rozmiary bloków muszą się zgadzać." -#: lib/verity/verity_fec.c:229 +#: lib/verity/verity_fec.c:233 msgid "Invalid number of parity bytes." msgstr "Błędna liczba bajtów parzystości." -#: lib/verity/verity_fec.c:265 +#: lib/verity/verity_fec.c:238 +msgid "Invalid FEC segment length." +msgstr "Błędna długość segmentu FEC." + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "Nie udało się określić rozmiaru urządzenia %s." -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355 msgid "Kernel does not support dm-integrity mapping." msgstr "Jądro nie obsługuje odwzorowań dm-integrity." -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "Jądro nie obsługuje stałego wyrównania metadanych dm-integrity." +#: lib/integrity/integrity.c:287 +msgid "Kernel refuses to activate insecure recalculate option (see legacy activation options to override)." +msgstr "Jądro odmawia uaktywnienia niebezpiecznej opcji przeliczenia (p. stare opcje aktywacji, aby wymusić)." + #: lib/luks2/luks2_disk_metadata.c:383 lib/luks2/luks2_json_metadata.c:967 #: lib/luks2/luks2_json_metadata.c:1252 #, c-format @@ -1293,7 +1311,7 @@ msgid "Requested data offset is too small." msgstr "Żądany offset danych jest zbyt mały." -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "UWAGA: obszar kluczy (% bajtów) bardzo mały, dostępna liczba kluczy LUKS2 jest bardzo ograniczona.\n" @@ -1377,7 +1395,7 @@ msgid "Reencryption in-progress. Cannot deactivate device." msgstr "Podobne szyfrowanie trwa. Nie można dezaktywować urządzenia." -#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3206 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "Nie udało się zastąpić wstrzymanego urządzenia %s celem dm-error." @@ -1486,7 +1504,7 @@ #: 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:3046 msgid "Failed to initialize old segment storage wrapper." msgstr "Nie udało się zainicjować obudowania przestrzeni starego segmentu." @@ -1498,7 +1516,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "Nie udało się odczytać sum kontrolnych dla aktualnej strefy hotzone." -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3054 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "Nie udało się odczytać obszaru hotzone zaczynającego się od %." @@ -1541,209 +1559,209 @@ msgid "Failed to set new keyslots area size." msgstr "Nie udało się ustawić nowego rozmiaru obszaru kluczy." -#: lib/luks2/luks2_reencrypt.c:2318 +#: lib/luks2/luks2_reencrypt.c:2320 #, c-format msgid "Data shift is not aligned to requested encryption sector size (% bytes)." msgstr "Przesunięcie danych nie jest wyrównane do żądanego rozmiaru sektora szyfrowania (bajtów: %)." -#: lib/luks2/luks2_reencrypt.c:2339 +#: lib/luks2/luks2_reencrypt.c:2341 #, c-format msgid "Data device is not aligned to requested encryption sector size (% bytes)." msgstr "Urzędzenie danych nie jest wyrównane do żądanego rozmiaru sektora szyfrowania (bajtów: %)." -#: lib/luks2/luks2_reencrypt.c:2360 +#: lib/luks2/luks2_reencrypt.c:2362 #, c-format msgid "Data shift (% sectors) is less than future data offset (% sectors)." msgstr "Przesunięcie danych (sektorów: %) jest mniejsze niż przyszły offset danych (sektorów: %)." -#: lib/luks2/luks2_reencrypt.c:2366 lib/luks2/luks2_reencrypt.c:2779 -#: lib/luks2/luks2_reencrypt.c:2800 +#: lib/luks2/luks2_reencrypt.c:2368 lib/luks2/luks2_reencrypt.c:2795 +#: lib/luks2/luks2_reencrypt.c:2816 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "Nie udało się otworzyć %s w trybie wyłączności (już odwzorowano lub zamontowano)." -#: lib/luks2/luks2_reencrypt.c:2534 +#: lib/luks2/luks2_reencrypt.c:2536 msgid "Device not marked for LUKS2 reencryption." msgstr "Urządzenie nie jest oznaczone do ponownego szyfrowania LUKS2." -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2542 lib/luks2/luks2_reencrypt.c:3311 msgid "Failed to load LUKS2 reencryption context." msgstr "Nie udało się załadować kontekstu ponownego szyfrowania LUKS2." -#: lib/luks2/luks2_reencrypt.c:2619 +#: lib/luks2/luks2_reencrypt.c:2621 msgid "Failed to get reencryption state." msgstr "Nie udało się pobrać stanu ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:2623 +#: lib/luks2/luks2_reencrypt.c:2625 msgid "Device is not in reencryption." msgstr "Urządzenie nie jest w trakcie ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:2630 +#: lib/luks2/luks2_reencrypt.c:2632 msgid "Reencryption process is already running." msgstr "Proces ponownego szyfrowania już trwa." -#: lib/luks2/luks2_reencrypt.c:2632 +#: lib/luks2/luks2_reencrypt.c:2634 msgid "Failed to acquire reencryption lock." msgstr "Nie udało się uzyskać blokady dla ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:2650 +#: lib/luks2/luks2_reencrypt.c:2652 msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "Nie można kontynuować ponownego szyfrowania. Należy najpierw uruchomić odtworzenie ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2766 msgid "Active device size and requested reencryption size don't match." msgstr "Rozmiar urządzenia aktywnego oraz żądany rozmiar ponownego szyfrowania różnią się." -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2780 msgid "Illegal device size requested in reencryption parameters." msgstr "W parametrach ponownego szyfrowania zażądano niedozwolonego rozmiaru urządzenia." -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "Ponowne szyfrowanie trwa. Nie można wykonać odzyskiwania." -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2922 msgid "LUKS2 reencryption already initialized in metadata." msgstr "Ponowne szyfrowanie LUKS2 jest już zainicjowane w metadanych." -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2929 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "Nie udało się zainicjować ponownego szyfrowania LUKS2 w metadanych." -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3020 msgid "Failed to set device segments for next reencryption hotzone." msgstr "Nie udało się ustawić segmentów urządzeń dla następnej strefy hotzone ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3062 msgid "Failed to write reencryption resilience metadata." msgstr "Nie udało się zapisać metadanych odporności ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3069 msgid "Decryption failed." msgstr "Odszyfrowanie nie powiodło się." -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3074 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "Nie udało się zapisać obszaru hotzone zaczynającego się od %." -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3079 msgid "Failed to sync data." msgstr "Nie udało się zsynchronizować danych." -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3087 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "Nie udało się uaktualnić metadanych po zakończeniu aktualnej strefy hotzone ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3154 msgid "Failed to write LUKS2 metadata." msgstr "Nie udało się zapisać metadanych LUKS2." -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3177 msgid "Failed to wipe backup segment data." msgstr "Nie udało wymazać danych segmentu zapasowego." -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3190 msgid "Failed to disable reencryption requirement flag." msgstr "Nie udało się wyłączyć flagi wymagania ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3198 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "Błąd krytyczny podczas ponownego szyfrowania fragmentu zaczynającego się od % o długości w sektorach %." -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3207 msgid "Do not resume the device unless replaced with error target manually." msgstr "Proszę nie wznawiać urządzenia dopóki nie zostanie zastąpione celem błędnym ręcznie." -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3256 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "Nie można kontynuować ponownego szyfrowania. Nieoczekiwany stan ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3262 msgid "Missing or invalid reencrypt context." msgstr "Brak lub błędny kontekst ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3269 msgid "Failed to initialize reencryption device stack." msgstr "Nie udało się zainicjować stosu urządzenia ponownego szyfrowania." -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3288 lib/luks2/luks2_reencrypt.c:3324 msgid "Failed to update reencryption context." msgstr "Nie udało się uaktualnić kontekstu ponownego szyfrowania." -#: lib/luks2/luks2_token.c:262 +#: lib/luks2/luks2_token.c:263 msgid "No free token slot." msgstr "Brak wolnego miejsca na token." -#: lib/luks2/luks2_token.c:269 +#: lib/luks2/luks2_token.c:270 #, c-format msgid "Failed to create builtin token %s." msgstr "Nie udało się utworzyć wbudowanego tokenu %s." -#: src/cryptsetup.c:166 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "Nie można wykonać weryfikacji hasła, jeśli wejściem nie jest terminal." -#: src/cryptsetup.c:229 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Parametry szyfrowania kluczy mogą być ustawione tylko dla urządzeń LUKS2." -#: src/cryptsetup.c:259 src/cryptsetup.c:971 src/cryptsetup.c:1281 -#: src/cryptsetup.c:3157 src/cryptsetup_reencrypt.c:723 -#: src/cryptsetup_reencrypt.c:793 +#: src/cryptsetup.c:291 src/cryptsetup.c:1006 src/cryptsetup.c:1339 +#: src/cryptsetup.c:3245 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "Nie wykryto znanego wzorca określającego szyfr." -#: src/cryptsetup.c:267 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "UWAGA: Parametr --hash jest ignorowany w trybie zwykłym z podanym plikiem klucza.\n" -#: src/cryptsetup.c:275 +#: 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 "UWAGA: Opcja --keyfile-size jest ignorowana, rozmiar odczytu jest taki sam, jak rozmiar klucza szyfrującego.\n" -#: src/cryptsetup.c:315 +#: src/cryptsetup.c:347 #, c-format msgid "Detected device signature(s) on %s. Proceeding further may damage existing data." msgstr "Wykryto sygnatury urządzeń na %s. Dalsze operacje mogą uszkodzić istniejące dane." -#: src/cryptsetup.c:321 src/cryptsetup.c:1102 src/cryptsetup.c:1154 -#: src/cryptsetup.c:1258 src/cryptsetup.c:1331 src/cryptsetup.c:1986 -#: src/cryptsetup.c:2694 src/cryptsetup.c:2817 src/integritysetup.c:233 +#: src/cryptsetup.c:353 src/cryptsetup.c:1145 src/cryptsetup.c:1197 +#: src/cryptsetup.c:1316 src/cryptsetup.c:1389 src/cryptsetup.c:2036 +#: src/cryptsetup.c:2762 src/cryptsetup.c:2886 src/integritysetup.c:242 msgid "Operation aborted.\n" msgstr "Operacja przerwana.\n" -#: src/cryptsetup.c:389 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "Wymagana jest opcja --key-file." -#: src/cryptsetup.c:442 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "Proszę wprowadzić PIM VeraCrypt: " -#: src/cryptsetup.c:451 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "Błędna wartość PIM: błąd składni." -#: src/cryptsetup.c:454 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "Błędna wartość PIM: 0." -#: src/cryptsetup.c:457 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "Błędna wartość PIM: poza zakresem." -#: src/cryptsetup.c:480 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "Nie wykryto nagłówka urządzenia z tym hasłem." -#: src/cryptsetup.c:549 +#: src/cryptsetup.c:582 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "Urządzenie %s nie jest prawidłowym urządzeniem BITLK." -#: src/cryptsetup.c:584 +#: src/cryptsetup.c:617 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1754,68 +1772,68 @@ "Zrzut ten powinien być zawsze zapisywany w postaci zaszyfrowanej\n" "w bezpiecznym miejscu." -#: src/cryptsetup.c:681 +#: src/cryptsetup.c:714 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "Urządzenie %s jest nadal aktywne i zaplanowane do odroczonego usunięcia.\n" -#: src/cryptsetup.c:709 +#: src/cryptsetup.c:742 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "Zmiana rozmiaru aktywnego urządzenia wymaga klucza wolumenu w pęku, ale ustawiono opcję --disable-keyring." -#: src/cryptsetup.c:850 +#: src/cryptsetup.c:885 msgid "Benchmark interrupted." msgstr "Test szybkości przerwany." -#: src/cryptsetup.c:871 +#: src/cryptsetup.c:906 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s N/D\n" -#: src/cryptsetup.c:873 +#: src/cryptsetup.c:908 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u iteracji/sekundę dla klucza %zu-bitowego\n" -#: src/cryptsetup.c:887 +#: src/cryptsetup.c:922 #, c-format msgid "%-10s N/A\n" msgstr "%-10s N/D\n" -#: src/cryptsetup.c:889 +#: 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 "%-10s %4u iteracji, pamięć: %5u, równoległe wątki (CPU): %1u dla klucza %zu-bitowego (żądany czas %u ms)\n" -#: src/cryptsetup.c:913 +#: src/cryptsetup.c:948 msgid "Result of benchmark is not reliable." msgstr "Wynik testu wydajności nie jest wiarygodny." -#: src/cryptsetup.c:963 +#: src/cryptsetup.c:998 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Testy są przybliżone tylko z użyciem pamięci (bez we/wy na dysk).\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:983 +#: src/cryptsetup.c:1018 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*s Algorytm | Klucz | Szyfrowanie | Odszyfrowywanie\n" -#: src/cryptsetup.c:987 +#: src/cryptsetup.c:1022 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "Szyfr %s (rozmiar klucza w bitach: %i) nie jest dostępny." #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:1006 +#: src/cryptsetup.c:1041 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "# Algorytm | Klucz | Szyfrowanie | Odszyfrowywanie\n" -#: src/cryptsetup.c:1015 +#: src/cryptsetup.c:1052 msgid "N/A" msgstr "N/D" -#: src/cryptsetup.c:1095 +#: src/cryptsetup.c:1138 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1823,19 +1841,19 @@ "Wygląda na to, że urządzenie nie wymaga odtwarzania ponownego szyfrowania.\n" "Czy mimo to kontynuować?" -#: src/cryptsetup.c:1101 +#: src/cryptsetup.c:1144 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "Naprawdę kontynuować odtwarzanie ponownego szyfrowania LUKS2?" -#: src/cryptsetup.c:1110 +#: src/cryptsetup.c:1153 msgid "Enter passphrase for reencryption recovery: " msgstr "Hasło do odtwarzania ponownego szyfrowania: " -#: src/cryptsetup.c:1153 +#: src/cryptsetup.c:1196 msgid "Really try to repair LUKS device header?" msgstr "Naprawdę próbować naprawić nagłówek urządzenia LUKS?" -#: src/cryptsetup.c:1172 src/integritysetup.c:146 +#: src/cryptsetup.c:1215 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" @@ -1843,104 +1861,108 @@ "Czyszczenie urządzenia w celu zainicjowania sumy kontrolnej integralności.\n" "Można przerwać ten proces wciskając Ctrl+C (reszta nie wymazanego urządzenia będzie zawierać błędną sumę kontrolną).\n" -#: src/cryptsetup.c:1194 src/integritysetup.c:168 +#: src/cryptsetup.c:1237 src/integritysetup.c:179 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "Nie można dezaktywować urządzenia tymczasowego %s." -#: src/cryptsetup.c:1243 +#: src/cryptsetup.c:1301 msgid "Integrity option can be used only for LUKS2 format." msgstr "Opcja integralności może być używana tylko dla formatu LUKS2." -#: src/cryptsetup.c:1248 src/cryptsetup.c:1308 +#: src/cryptsetup.c:1306 src/cryptsetup.c:1366 msgid "Unsupported LUKS2 metadata size options." msgstr "Nieobsługiwane opcje rozmiaru metadanych LUKS2." -#: src/cryptsetup.c:1265 +#: src/cryptsetup.c:1315 +msgid "Header file does not exist, do you want to create it?" +msgstr "Plik nagłówka nie istnieje, czy utworzyć go?" + +#: src/cryptsetup.c:1323 #, c-format msgid "Cannot create header file %s." msgstr "Nie można utworzyć pliku nagłówka %s." -#: src/cryptsetup.c:1288 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:1346 src/integritysetup.c:205 src/integritysetup.c:213 +#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303 +#: src/integritysetup.c:313 msgid "No known integrity specification pattern detected." msgstr "Nie wykryto znanego wzorca określającego integralność." -#: src/cryptsetup.c:1301 +#: src/cryptsetup.c:1359 #, c-format msgid "Cannot use %s as on-disk header." msgstr "Nie można użyć %s jako nagłówka na dysku." -#: src/cryptsetup.c:1325 src/integritysetup.c:227 +#: src/cryptsetup.c:1383 src/integritysetup.c:236 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "To nieodwołalnie nadpisze dane na %s." -#: src/cryptsetup.c:1366 src/cryptsetup.c:1700 src/cryptsetup.c:1767 -#: src/cryptsetup.c:1869 src/cryptsetup.c:1935 src/cryptsetup_reencrypt.c:553 +#: src/cryptsetup.c:1416 src/cryptsetup.c:1750 src/cryptsetup.c:1817 +#: src/cryptsetup.c:1919 src/cryptsetup.c:1985 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "Nie udało się ustawić parametrów PBKDF." -#: src/cryptsetup.c:1451 +#: src/cryptsetup.c:1501 msgid "Reduced data offset is allowed only for detached LUKS header." -msgstr "Offset zmniejszonych danych jest dozwolony tylko dla osobnego nagłówka LUKS." +msgstr "Offset zmniejszonych danych jest dozwolony tylko dla odłączonego nagłówka LUKS." -#: src/cryptsetup.c:1462 src/cryptsetup.c:1773 +#: src/cryptsetup.c:1512 src/cryptsetup.c:1823 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "Nie można określić rozmiaru klucza wolumenu dla LUKS bez kluczy, proszę użyć opcji --key-size." -#: src/cryptsetup.c:1500 +#: src/cryptsetup.c:1550 msgid "Device activated but cannot make flags persistent." msgstr "Urządzenie uaktywnione, ale nie można uczynić flag trwałymi." -#: src/cryptsetup.c:1581 src/cryptsetup.c:1651 +#: src/cryptsetup.c:1631 src/cryptsetup.c:1701 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "Klucz %d jest wybrany do usunięcia." -#: src/cryptsetup.c:1593 src/cryptsetup.c:1654 +#: src/cryptsetup.c:1643 src/cryptsetup.c:1704 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "To jest ostatni klucz. Urządzenie stanie się bezużyteczne po usunięciu tego klucza." -#: src/cryptsetup.c:1594 +#: src/cryptsetup.c:1644 msgid "Enter any remaining passphrase: " msgstr "Dowolne pozostałe hasło: " -#: src/cryptsetup.c:1595 src/cryptsetup.c:1656 +#: src/cryptsetup.c:1645 src/cryptsetup.c:1706 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Operacja przerwana, klucz NIE został wymazany.\n" -#: src/cryptsetup.c:1633 +#: src/cryptsetup.c:1683 msgid "Enter passphrase to be deleted: " msgstr "Hasło do usunięcia: " -#: src/cryptsetup.c:1714 src/cryptsetup.c:1788 src/cryptsetup.c:1822 +#: src/cryptsetup.c:1764 src/cryptsetup.c:1838 src/cryptsetup.c:1872 msgid "Enter new passphrase for key slot: " msgstr "Nowe hasło dla klucza: " -#: src/cryptsetup.c:1805 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1855 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "Dowolne istniejące hasło: " -#: src/cryptsetup.c:1873 +#: src/cryptsetup.c:1923 msgid "Enter passphrase to be changed: " msgstr "Hasło, które ma być zmienione: " -#: src/cryptsetup.c:1889 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1939 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "Nowe hasło: " -#: src/cryptsetup.c:1939 +#: src/cryptsetup.c:1989 msgid "Enter passphrase for keyslot to be converted: " msgstr "Hasło dla klucza do konwersji: " -#: src/cryptsetup.c:1963 +#: src/cryptsetup.c:2013 msgid "Only one device argument for isLuks operation is supported." msgstr "Dla operacji isLuks obsługiwany jest tylko jeden argument będący urządzeniem." -#: src/cryptsetup.c:2013 +#: src/cryptsetup.c:2063 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -1951,12 +1973,12 @@ "Zrzut ten powinien być zawsze zapisywany w postaci zaszyfrowanej\n" "w bezpiecznym miejscu." -#: src/cryptsetup.c:2078 +#: src/cryptsetup.c:2128 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "Miejsce %d nie zawiera niepowiązanego klucza." -#: src/cryptsetup.c:2084 +#: src/cryptsetup.c:2134 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -1965,30 +1987,40 @@ "Zrzut ten powinien być zawsze zapisywany w postaci zaszyfrowanej\n" "w bezpiecznym miejscu." -#: src/cryptsetup.c:2219 src/cryptsetup.c:2240 +#: src/cryptsetup.c:2223 src/cryptsetup.c:2252 +#, c-format +msgid "%s is not active %s device name." +msgstr "%s nie jest nazwą aktywnego urządzenia %s." + +#: src/cryptsetup.c:2247 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "%s nie jest nazwą aktywnego urządzenia LUKS lub brak nagłówka." + +#: src/cryptsetup.c:2285 src/cryptsetup.c:2306 msgid "Option --header-backup-file is required." msgstr "Wymagana jest opcja --header-backup-file." -#: src/cryptsetup.c:2270 +#: src/cryptsetup.c:2336 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s nie jest urządzeniem zarządzanym przez cryptsetup." -#: src/cryptsetup.c:2281 +#: src/cryptsetup.c:2347 #, c-format msgid "Refresh is not supported for device type %s" msgstr "Odświeżanie nie jest obsługiwane dla typu urządzenia %s" -#: src/cryptsetup.c:2323 +#: src/cryptsetup.c:2389 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Nie rozpoznany typ urządzenia metadanych %s." -#: src/cryptsetup.c:2326 +#: src/cryptsetup.c:2392 msgid "Command requires device and mapped name as arguments." msgstr "Polecenie wymaga urządzenia i nazwy odwzorowywanej jako argumentów." -#: src/cryptsetup.c:2348 +#: src/cryptsetup.c:2414 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -1997,95 +2029,95 @@ "Ta operacja usunię wszystkie klucze na urządzeniu %s.\n" "Urządzenie po tej operacji stanie się bezużyteczne." -#: src/cryptsetup.c:2355 +#: src/cryptsetup.c:2421 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Operacja przerwana, klucze NIE zostały wymazane.\n" -#: src/cryptsetup.c:2392 +#: src/cryptsetup.c:2460 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Błędny typ LUKS, obsługiwane są tylko luks1 i luks2." -#: src/cryptsetup.c:2410 +#: src/cryptsetup.c:2478 #, c-format msgid "Device is already %s type." msgstr "Urządzenie już ma typ %s." -#: src/cryptsetup.c:2415 +#: src/cryptsetup.c:2483 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Ta operacja przekonwertuje %s do formatu %s.\n" -#: src/cryptsetup.c:2421 +#: src/cryptsetup.c:2489 msgid "Operation aborted, device was NOT converted.\n" msgstr "Operacja przerwana, urządzenie NIE zostało skonwertowane.\n" -#: src/cryptsetup.c:2461 +#: src/cryptsetup.c:2529 msgid "Option --priority, --label or --subsystem is missing." msgstr "Brak opcji --priority, --label lub --subsystem." -#: src/cryptsetup.c:2495 src/cryptsetup.c:2528 src/cryptsetup.c:2551 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2596 src/cryptsetup.c:2619 #, c-format msgid "Token %d is invalid." msgstr "Token %d jest błędny." -#: src/cryptsetup.c:2498 src/cryptsetup.c:2554 +#: src/cryptsetup.c:2566 src/cryptsetup.c:2622 #, c-format msgid "Token %d in use." msgstr "Token %d jest w użyciu." -#: src/cryptsetup.c:2505 +#: src/cryptsetup.c:2573 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "Nie udało się dodać tokenu %d do pęku kluczy luks2." -#: src/cryptsetup.c:2514 src/cryptsetup.c:2576 +#: src/cryptsetup.c:2582 src/cryptsetup.c:2644 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "Nie udało się przypisać tokenu %d do klucza %d." -#: src/cryptsetup.c:2531 +#: src/cryptsetup.c:2599 #, c-format msgid "Token %d is not in use." msgstr "Token %d nie jest w użyciu." -#: src/cryptsetup.c:2566 +#: src/cryptsetup.c:2634 msgid "Failed to import token from file." msgstr "Nie udało się zaimportować tokenu z pliku." -#: src/cryptsetup.c:2591 +#: src/cryptsetup.c:2659 #, c-format msgid "Failed to get token %d for export." msgstr "Nie udało się pobrać tokenu %d do eksportu." -#: src/cryptsetup.c:2606 +#: src/cryptsetup.c:2674 msgid "--key-description parameter is mandatory for token add action." msgstr "Parametr --key-description jest wymagany do akcji dodania tokenu." -#: src/cryptsetup.c:2612 src/cryptsetup.c:2620 +#: src/cryptsetup.c:2680 src/cryptsetup.c:2688 msgid "Action requires specific token. Use --token-id parameter." msgstr "Akcja wymaga określonego tokenu. Należy użyć parametru --token-id." -#: src/cryptsetup.c:2625 +#: src/cryptsetup.c:2693 #, c-format msgid "Invalid token operation %s." msgstr "Błędna operacja na tokenie %s." -#: src/cryptsetup.c:2680 +#: src/cryptsetup.c:2748 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "Wykryto aktywne urządzenie dm '%s' dla urządzenia danych %s.\n" -#: src/cryptsetup.c:2684 +#: src/cryptsetup.c:2752 #, c-format msgid "Device %s is not a block device.\n" msgstr "Urządzenie %s nie jest urządzeniem blokowym.\n" -#: src/cryptsetup.c:2686 +#: src/cryptsetup.c:2754 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "Nie udało się wykryć właścicieli urządzenia %s." -#: src/cryptsetup.c:2688 +#: src/cryptsetup.c:2756 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2099,233 +2131,242 @@ "Aby uruchomić ponowne szyfrowanie w trybie online, należy użyć parametru\n" "--active-name.\n" -#: src/cryptsetup.c:2768 +#: src/cryptsetup.c:2836 msgid "Invalid LUKS device type." msgstr "Błędny typ urządzenia LUKS." -#: src/cryptsetup.c:2773 +#: src/cryptsetup.c:2841 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." msgstr "Szyfrowanie bez odłączonego nagłówka (--header) jest niemożliwe bez ograniczenia rozmiaru urządzenia danych (--reduce-device-size)." -#: src/cryptsetup.c:2778 +#: src/cryptsetup.c:2846 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "Żądany offset danych musi być mniejszy lub równy połowie parametru --reduce-device-size." -#: src/cryptsetup.c:2787 +#: src/cryptsetup.c:2855 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "Modyfikowanie wartości --reduce-device-size do dwukrotności parametru --offset % (w sektorach).\n" -#: src/cryptsetup.c:2791 +#: src/cryptsetup.c:2859 msgid "Encryption is supported only for LUKS2 format." msgstr "Szyfrowanie jest obsługiwane tylko w formacie LUKS2." -#: src/cryptsetup.c:2813 +#: src/cryptsetup.c:2882 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "Wykrytu urządzenie LUKS na %s. Czy zaszyfrować to urządzenie LUKS jeszcze raz?" -#: src/cryptsetup.c:2828 +#: src/cryptsetup.c:2900 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "Plik nagłówka %s już istnieje. Przerwano." -#: src/cryptsetup.c:2830 src/cryptsetup.c:2837 +#: src/cryptsetup.c:2902 src/cryptsetup.c:2909 #, c-format msgid "Cannot create temporary header file %s." msgstr "Nie można utworzyć pliku tymczasowego nagłówka %s." -#: src/cryptsetup.c:2901 +#: src/cryptsetup.c:2976 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "%s/%s jest teraz aktywne i gotowe do szyfrowania w locie.\n" -#: src/cryptsetup.c:3065 src/cryptsetup.c:3071 +#: src/cryptsetup.c:3013 +msgid "LUKS2 decryption is supported with detached header device only." +msgstr "Odszyfrowanie LUKS2 jest obsługiwane tylko z urządzeniem z odłączonym nagłówkiem." + +#: src/cryptsetup.c:3146 src/cryptsetup.c:3152 msgid "Not enough free keyslots for reencryption." msgstr "Za mało wolnych kluczy do ponownego szyfrowania." -#: src/cryptsetup.c:3091 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3172 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "Rozmiaru klucza można użyć tylko z --key-slot albo przy dokładnie jednym aktywnym kluczu." -#: src/cryptsetup.c:3100 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3181 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "Hasło dla klucza %d: " -#: src/cryptsetup.c:3108 +#: src/cryptsetup.c:3190 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "Hasło dla klucza %u: " -#: src/cryptsetup.c:3283 +#: src/cryptsetup.c:3236 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "Zmiana szyfru do szyfrowania danych na %s.\n" + +#: src/cryptsetup.c:3369 msgid "Command requires device as argument." msgstr "Polecenie wymaga urządzenia jako argumentu." -#: src/cryptsetup.c:3305 +#: src/cryptsetup.c:3391 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "Obecnie obsługiwany jest tylko format LUKS2. Dla LUKS1 proszę użyć narzędzia cryptsetup-reencrypt." -#: src/cryptsetup.c:3317 +#: src/cryptsetup.c:3403 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "Tradycyjne ponowne szyfrowanie offline juz trwa. Proszę użyć narzędzia cryptsetup-reencrypt." -#: src/cryptsetup.c:3327 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3413 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "Ponowne szyfrowanie urządzenia z profilem integralności nie jest obsługiwane." -#: src/cryptsetup.c:3335 +#: src/cryptsetup.c:3421 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "Ponowne szyfrowanie LUKS2 jest już zainicjowane. Przerywanie operacji." -#: src/cryptsetup.c:3339 +#: src/cryptsetup.c:3425 msgid "LUKS2 device is not in reencryption." msgstr "Urządzenie LUKS2 nie jest w trakcie ponownego szyfrowania." -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3452 msgid " [--type ] []" msgstr " [--type ] []" -#: src/cryptsetup.c:3366 src/veritysetup.c:399 src/integritysetup.c:480 +#: src/cryptsetup.c:3452 src/veritysetup.c:408 src/integritysetup.c:493 msgid "open device as " msgstr "otwarcie urządzenia jako " -#: src/cryptsetup.c:3367 src/cryptsetup.c:3368 src/cryptsetup.c:3369 -#: src/veritysetup.c:400 src/veritysetup.c:401 src/integritysetup.c:481 -#: src/integritysetup.c:482 +#: src/cryptsetup.c:3453 src/cryptsetup.c:3454 src/cryptsetup.c:3455 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494 +#: src/integritysetup.c:495 msgid "" msgstr "" -#: src/cryptsetup.c:3367 src/veritysetup.c:400 src/integritysetup.c:481 +#: src/cryptsetup.c:3453 src/veritysetup.c:409 src/integritysetup.c:494 msgid "close device (remove mapping)" msgstr "zamknięcie urządzenia (usunięcie odwzorowania)" -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3454 msgid "resize active device" msgstr "zmiana rozmiaru aktywnego urządzenia" -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3455 msgid "show device status" msgstr "pokazanie stanu urządzenia" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "[--cipher ]" msgstr "[--cipher ]" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "benchmark cipher" msgstr "test szybkości szyfru" -#: src/cryptsetup.c:3371 src/cryptsetup.c:3372 src/cryptsetup.c:3373 -#: src/cryptsetup.c:3374 src/cryptsetup.c:3375 src/cryptsetup.c:3382 -#: src/cryptsetup.c:3383 src/cryptsetup.c:3384 src/cryptsetup.c:3385 -#: src/cryptsetup.c:3386 src/cryptsetup.c:3387 src/cryptsetup.c:3388 -#: src/cryptsetup.c:3389 src/cryptsetup.c:3390 +#: src/cryptsetup.c:3457 src/cryptsetup.c:3458 src/cryptsetup.c:3459 +#: src/cryptsetup.c:3460 src/cryptsetup.c:3461 src/cryptsetup.c:3468 +#: src/cryptsetup.c:3469 src/cryptsetup.c:3470 src/cryptsetup.c:3471 +#: src/cryptsetup.c:3472 src/cryptsetup.c:3473 src/cryptsetup.c:3474 +#: src/cryptsetup.c:3475 src/cryptsetup.c:3476 msgid "" msgstr "" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3457 msgid "try to repair on-disk metadata" msgstr "próba naprawy metadanych na dysku" -#: src/cryptsetup.c:3372 +#: src/cryptsetup.c:3458 msgid "reencrypt LUKS2 device" msgstr "ponowne szyfrowanie urządzenia LUKS2" -#: src/cryptsetup.c:3373 +#: src/cryptsetup.c:3459 msgid "erase all keyslots (remove encryption key)" msgstr "usunięcie wszystkich kluczy (usunięcie klucza szyfrującego)" -#: src/cryptsetup.c:3374 +#: src/cryptsetup.c:3460 msgid "convert LUKS from/to LUKS2 format" msgstr "przekonwertowanie formatu LUKS z/do LUKS2" -#: src/cryptsetup.c:3375 +#: src/cryptsetup.c:3461 msgid "set permanent configuration options for LUKS2" msgstr "ustawienie opcji trwałej konfiguracji dla LUKS2" -#: src/cryptsetup.c:3376 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3462 src/cryptsetup.c:3463 msgid " []" msgstr " []" -#: src/cryptsetup.c:3376 +#: src/cryptsetup.c:3462 msgid "formats a LUKS device" msgstr "sformatowanie urządzenia LUKS" -#: src/cryptsetup.c:3377 +#: src/cryptsetup.c:3463 msgid "add key to LUKS device" msgstr "dodanie klucza do urządzenia LUKS" -#: src/cryptsetup.c:3378 src/cryptsetup.c:3379 src/cryptsetup.c:3380 +#: src/cryptsetup.c:3464 src/cryptsetup.c:3465 src/cryptsetup.c:3466 msgid " []" msgstr " []" -#: src/cryptsetup.c:3378 +#: src/cryptsetup.c:3464 msgid "removes supplied key or key file from LUKS device" msgstr "usunięcie podanego klucza lub pliku klucza z urządzenia LUKS" -#: src/cryptsetup.c:3379 +#: src/cryptsetup.c:3465 msgid "changes supplied key or key file of LUKS device" msgstr "zmiana podanego klucza lub pliku klucza urządzenia LUKS" -#: src/cryptsetup.c:3380 +#: src/cryptsetup.c:3466 msgid "converts a key to new pbkdf parameters" msgstr "konwersja klucza na nowe parametry pbkdf" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid " " msgstr " " -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid "wipes key with number from LUKS device" msgstr "wymazanie klucza o numerze z urządzenia LUKS" -#: src/cryptsetup.c:3382 +#: src/cryptsetup.c:3468 msgid "print UUID of LUKS device" msgstr "wypisanie UUID-a urządzenia LUKS" -#: src/cryptsetup.c:3383 +#: src/cryptsetup.c:3469 msgid "tests for LUKS partition header" msgstr "sprawdzenie pod kątem nagłówka partycji LUKS" -#: src/cryptsetup.c:3384 +#: src/cryptsetup.c:3470 msgid "dump LUKS partition information" msgstr "zrzut informacji o partycji LUKS" -#: src/cryptsetup.c:3385 +#: src/cryptsetup.c:3471 msgid "dump TCRYPT device information" msgstr "zrzut informacji o urządzeniu TCRYPT" -#: src/cryptsetup.c:3386 +#: src/cryptsetup.c:3472 msgid "dump BITLK device information" msgstr "zrzut informacji o urządzeniu BITLK" -#: src/cryptsetup.c:3387 +#: src/cryptsetup.c:3473 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "Wstrzymanie urządzenia LUKS i wymazanie klucza (zamraża wszystkie operacje we/wy)" -#: src/cryptsetup.c:3388 +#: src/cryptsetup.c:3474 msgid "Resume suspended LUKS device" msgstr "Wznowienie zatrzymanego urządzenia LUKS" -#: src/cryptsetup.c:3389 +#: src/cryptsetup.c:3475 msgid "Backup LUKS device header and keyslots" msgstr "Kopia zapasowa nagłówka i kluczy urządzenia LUKS" -#: src/cryptsetup.c:3390 +#: src/cryptsetup.c:3476 msgid "Restore LUKS device header and keyslots" msgstr "Odtworzenie nagłówka i kluczy urządzenia LUKS z kopii zapasowej" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid " " msgstr " " -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid "Manipulate LUKS2 tokens" msgstr "Operacja na tokenach LUKS2" -#: src/cryptsetup.c:3409 src/veritysetup.c:417 src/integritysetup.c:498 +#: src/cryptsetup.c:3495 src/veritysetup.c:426 src/integritysetup.c:511 msgid "" "\n" " is one of:\n" @@ -2333,7 +2374,7 @@ "\n" " to jedno z:\n" -#: src/cryptsetup.c:3415 +#: src/cryptsetup.c:3501 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2345,7 +2386,7 @@ "\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3419 +#: src/cryptsetup.c:3505 #, c-format msgid "" "\n" @@ -2360,7 +2401,7 @@ " to numer klucza LUKS do zmiany\n" " to opcjonalny plik nowego klucza dla akcji luksAddKey\n" -#: src/cryptsetup.c:3426 +#: src/cryptsetup.c:3512 #, c-format msgid "" "\n" @@ -2369,7 +2410,7 @@ "\n" "Domyślny wkompilowany format metadanych to %s (dla akcji luksFormat).\n" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3517 #, c-format msgid "" "\n" @@ -2386,7 +2427,7 @@ "Domyślny PBKDF dla LUKS2: %s\n" "\tCzas iteracji: %d, wymagana pamięć: %dkB, liczba wątków: %d\n" -#: src/cryptsetup.c:3442 +#: src/cryptsetup.c:3528 #, c-format msgid "" "\n" @@ -2401,451 +2442,451 @@ "\tplain: %s, bitów klucza: %d, skrót hasła: %s\n" "\tLUKS: %s, bitów klucza: %d, skrót nagłówka LUKS: %s, RNG: %s\n" -#: src/cryptsetup.c:3451 +#: src/cryptsetup.c:3537 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: Domyślny rozmiar klucza z trybem XTS (dwa klucze wewnętrzne) będzie podwojony.\n" -#: src/cryptsetup.c:3467 src/veritysetup.c:575 src/integritysetup.c:642 +#: src/cryptsetup.c:3555 src/veritysetup.c:587 src/integritysetup.c:665 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: wymaga %s jako argumentów" -#: src/cryptsetup.c:3500 src/veritysetup.c:462 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3587 src/veritysetup.c:472 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "Wyświetlenie tego opisu" -#: src/cryptsetup.c:3501 src/veritysetup.c:463 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3588 src/veritysetup.c:473 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "Wyświetlenie krótkiej informacji o składni" -#: src/cryptsetup.c:3502 src/veritysetup.c:464 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3589 src/veritysetup.c:474 src/integritysetup.c:555 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "Wypisanie wersji pakietu" -#: src/cryptsetup.c:3506 src/veritysetup.c:468 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3593 src/veritysetup.c:478 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "Opcje pomocnicze:" -#: src/cryptsetup.c:3507 src/veritysetup.c:469 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3594 src/veritysetup.c:479 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "Wyświetlanie bardziej szczegółowych komunikatów błędów" -#: src/cryptsetup.c:3508 src/veritysetup.c:470 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3595 src/veritysetup.c:480 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "Wyświetlanie informacji diagnostycznych" -#: src/cryptsetup.c:3509 +#: src/cryptsetup.c:3596 msgid "Show debug messages including JSON metadata" msgstr "Wyświetlanie informacji diagnostycznych wraz z metadanymi JSON" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3597 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "Szyfr używany do zaszyfrowania dysku (p. /proc/crypto)" -#: src/cryptsetup.c:3511 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3598 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "Skrót używany do utworzenia klucza szyfrującego z hasła" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3599 msgid "Verifies the passphrase by asking for it twice" msgstr "Sprawdzenie poprawności hasła poprzez dwukrotne pytanie" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3600 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "Odczyt klucza z pliku" -#: src/cryptsetup.c:3514 +#: src/cryptsetup.c:3601 msgid "Read the volume (master) key from file." msgstr "Odczyt klucza wolumenu (klucza głównego) z pliku." -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3602 msgid "Dump volume (master) key instead of keyslots info" msgstr "Zrzut (głównego) klucza wolumenu zamiast informacji o kluczach" -#: src/cryptsetup.c:3516 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "Rozmiar klucza szyfrującego" -#: src/cryptsetup.c:3516 src/cryptsetup.c:3579 src/integritysetup.c:562 -#: src/integritysetup.c:566 src/integritysetup.c:570 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup.c:3666 src/integritysetup.c:579 +#: src/integritysetup.c:583 src/integritysetup.c:587 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "BITÓW" -#: src/cryptsetup.c:3517 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3604 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "Ograniczenie odczytu z pliku klucza" -#: src/cryptsetup.c:3517 src/cryptsetup.c:3518 src/cryptsetup.c:3519 -#: src/cryptsetup.c:3520 src/cryptsetup.c:3523 src/cryptsetup.c:3576 -#: src/cryptsetup.c:3577 src/cryptsetup.c:3585 src/cryptsetup.c:3586 -#: src/veritysetup.c:473 src/veritysetup.c:474 src/veritysetup.c:475 -#: src/veritysetup.c:478 src/veritysetup.c:479 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:3604 src/cryptsetup.c:3605 src/cryptsetup.c:3606 +#: src/cryptsetup.c:3607 src/cryptsetup.c:3610 src/cryptsetup.c:3663 +#: src/cryptsetup.c:3664 src/cryptsetup.c:3672 src/cryptsetup.c:3673 +#: 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 "bajty" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3605 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "Liczba bajtów do pominięcia w pliku klucza" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3606 msgid "Limits the read from newly added keyfile" msgstr "Ograniczenie odczytu z nowo dodanego pliku klucza" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3607 msgid "Number of bytes to skip in newly added keyfile" msgstr "Liczba bajtów do pominięcia w nowo dodanym kluczu" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3608 msgid "Slot number for new key (default is first free)" msgstr "Numer dla nowego klucza (domyślny: pierwszy wolny)" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3609 msgid "The size of the device" msgstr "Rozmiar urządzenia" -#: src/cryptsetup.c:3522 src/cryptsetup.c:3524 src/cryptsetup.c:3525 -#: src/cryptsetup.c:3531 src/integritysetup.c:552 src/integritysetup.c:559 +#: src/cryptsetup.c:3609 src/cryptsetup.c:3611 src/cryptsetup.c:3612 +#: src/cryptsetup.c:3618 src/integritysetup.c:569 src/integritysetup.c:576 msgid "SECTORS" msgstr "SEKTORÓW" -#: src/cryptsetup.c:3523 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3610 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "Użycie tylko określonego rozmiaru urządzenia (zignorowanie pozostałej części). NIEBEZPIECZNE!" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3611 msgid "The start offset in the backend device" msgstr "Offset początku na urządzeniu przechowującym" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3612 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Liczba sektorów zaszyfrowanych danych do pominięcia" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3613 msgid "Create a readonly mapping" msgstr "Utworzenie odwzorowania tylko do odczytu" -#: src/cryptsetup.c:3527 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3614 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "Bez pytań o potwierdzenie" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3615 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Limit czasu przy interaktywnym pytaniu o hasło (w sekundach)" -#: src/cryptsetup.c:3528 src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3615 src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "s" -#: src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "Uaktualnianie wiersza postępu (w sekundach)" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3617 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "Jak często można powtarzać próby wprowadzenia hasła" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3618 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Wyrównanie danych do granicy sektorów - dla luksFormat" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3619 msgid "File with LUKS header and keyslots backup" msgstr "Plik z kopią zapasową nagłówka LUKS i kluczy" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3620 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "Użycie /dev/random do wygenerowania klucza wolumenu" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3621 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "Użycie /dev/urandom do wygenerowania klucza wolumenu" -#: src/cryptsetup.c:3535 +#: src/cryptsetup.c:3622 msgid "Share device with another non-overlapping crypt segment" msgstr "Współdzielenie urządzenia z innym, nie zachodzącym segmentem szyfrowanym" -#: src/cryptsetup.c:3536 src/veritysetup.c:482 +#: src/cryptsetup.c:3623 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "UUID dla urządzenia, które ma być użyte" -#: src/cryptsetup.c:3537 src/integritysetup.c:579 +#: src/cryptsetup.c:3624 src/integritysetup.c:599 msgid "Allow discards (aka TRIM) requests for device" msgstr "Zezwolenie na żądania porzucenia (TRIM) dla urządzenia" -#: src/cryptsetup.c:3538 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3625 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "Urządzenie lub plik z osobnym nagłówkiem LUKS" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3626 msgid "Do not activate device, just check passphrase" msgstr "Sprawdzenie hasła bez uaktywniania urządzenia" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3627 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Użycie nagłówka ukrytego (ukrytego urządzenia TCRYPT)" -#: src/cryptsetup.c:3541 +#: src/cryptsetup.c:3628 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "Urządzenie jest napędem systemowym TCRYPT (z bootloaderem)" -#: src/cryptsetup.c:3542 +#: src/cryptsetup.c:3629 msgid "Use backup (secondary) TCRYPT header" msgstr "Użycie zapasowego (drugiego) nagłówka TCRYPT" -#: src/cryptsetup.c:3543 +#: src/cryptsetup.c:3630 msgid "Scan also for VeraCrypt compatible device" msgstr "Wyszukiwanie także urządzeń zgodnych z VeraCryptem" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3631 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "PIM (osobisty mnożnik iteracji) dla urządzenia zgodnego z VeraCryptem" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3632 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Odpytanie PIM (osobistego mnożnika iteracji) pod kątem urządzenia zgodnego z VeraCryptem" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3633 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "Typ metadanych urządzenia: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3634 msgid "Disable password quality check (if enabled)" msgstr "Wyłączenie sprawdzania jakości hasła (jeśli włączone)" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3635 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Użycie opcji zgodności wydajności dm-crypta same_cpu_crypt" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3636 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Użycie opcji zgodności wydajności dm-crypta submit_from_crypt_cpus" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3637 msgid "Bypass dm-crypt workqueue and process read requests synchronously" msgstr "Pominięcie kolejki zadań dm-crypt i przetwarzanie żądań odczytu synchronicznie" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3638 msgid "Bypass dm-crypt workqueue and process write requests synchronously" msgstr "Pominięcie kolejki zadań dm-crypt i przetwarzanie żądań zapisu synchronicznie" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3639 msgid "Device removal is deferred until the last user closes it" msgstr "Usunięcie urządzenia jest odroczone do czasu zamknięcia przez ostatniego użytkownika" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3640 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "Użycie globalnej blokady do serializacji ciężkich pamięciowo PBKDF (obejście OOM)" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3641 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "Czas iteracji PBKDF dla LUKS (w milisekundach)" -#: src/cryptsetup.c:3554 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3641 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "ms" -#: src/cryptsetup.c:3555 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3642 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "Algorytm PBKDF (dla LUKS2): argon2i, argon2id, pbkdf2" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "Limit kosztu pamięciowego PBKDF" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "kilobajty" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "Koszt zrównoleglenia PBKDF" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "wątki" -#: src/cryptsetup.c:3558 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3645 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "Koszt iteracji PBKDF (wymuszony, wyłącza test wydajności)" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3646 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Priorytet klucza: ignore, normal, prefer" -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3647 msgid "Disable locking of on-disk metadata" msgstr "Wyłączenie blokowania metadanych na dysku" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3648 msgid "Disable loading volume keys via kernel keyring" msgstr "Wyłączenie ładowania kluczy wolumenu przez pęk kluczy w jądrze" -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3649 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Algorytm integralności danych (tylko LUKS2)" -#: src/cryptsetup.c:3563 src/integritysetup.c:573 +#: src/cryptsetup.c:3650 src/integritysetup.c:590 msgid "Disable journal for integrity device" msgstr "Wyłączenie kroniki dla urządzenia integralności" -#: src/cryptsetup.c:3564 src/integritysetup.c:547 +#: src/cryptsetup.c:3651 src/integritysetup.c:564 msgid "Do not wipe device after format" msgstr "Bez wymazania urządzenia po formatowaniu" -#: src/cryptsetup.c:3565 src/integritysetup.c:577 +#: src/cryptsetup.c:3652 src/integritysetup.c:594 msgid "Use inefficient legacy padding (old kernels)" msgstr "Użycie niewydajnego starego wyrównania (stare jądra)" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3653 msgid "Do not ask for passphrase if activation by token fails" msgstr "Bez pytania o hasło, jeśli uaktywnienie przy użyciu tokenu się nie powiedzie" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3654 msgid "Token number (default: any)" msgstr "Numer tokenu (domyślnie: dowolny)" -#: src/cryptsetup.c:3568 +#: src/cryptsetup.c:3655 msgid "Key description" msgstr "Opis klucza" -#: src/cryptsetup.c:3569 +#: src/cryptsetup.c:3656 msgid "Encryption sector size (default: 512 bytes)" msgstr "Rozmiar sektora szyfrowania (domyślnie: 512 bajtów)" -#: src/cryptsetup.c:3570 +#: src/cryptsetup.c:3657 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "Użycie IV liczonego w rozmiarze sektora (nie w 512 bajtach)" -#: src/cryptsetup.c:3571 +#: src/cryptsetup.c:3658 msgid "Set activation flags persistent for device" msgstr "Trwałe ustawienie flag uaktywniania dla urządzenia" -#: src/cryptsetup.c:3572 +#: src/cryptsetup.c:3659 msgid "Set label for the LUKS2 device" msgstr "Ustawienie etykiety dla urządzenia LUKS2" -#: src/cryptsetup.c:3573 +#: src/cryptsetup.c:3660 msgid "Set subsystem label for the LUKS2 device" msgstr "Ustawienie etykiety podsystemu dla urządzenia LUKS2" -#: src/cryptsetup.c:3574 +#: src/cryptsetup.c:3661 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "Utworzenie niepowiązanego (bez przypisanego segmentu danych) klucza LUKS2" -#: src/cryptsetup.c:3575 +#: src/cryptsetup.c:3662 msgid "Read or write the json from or to a file" msgstr "Odczyt lub zapis danych JSON z/do pliku" -#: src/cryptsetup.c:3576 +#: src/cryptsetup.c:3663 msgid "LUKS2 header metadata area size" msgstr "Rozmiar obszaru metadanych nagłówka LUKS2" -#: src/cryptsetup.c:3577 +#: src/cryptsetup.c:3664 msgid "LUKS2 header keyslots area size" msgstr "Rozmiar obszaru kluczy nagłówka LUKS2" -#: src/cryptsetup.c:3578 +#: src/cryptsetup.c:3665 msgid "Refresh (reactivate) device with new parameters" msgstr "Odświeżenie (ponowne uaktywnienie) urządzenia z nowymi parametrami" -#: src/cryptsetup.c:3579 +#: src/cryptsetup.c:3666 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "Klucz LUKS2: rozmiar klucza szyfrującego" -#: src/cryptsetup.c:3580 +#: src/cryptsetup.c:3667 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "Klucz LUKS2: szyfr używany do szyfrowania kluczy" -#: src/cryptsetup.c:3581 +#: src/cryptsetup.c:3668 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "Szyfrowanie urządzenia LUKS2 (w miejscu)." -#: src/cryptsetup.c:3582 +#: src/cryptsetup.c:3669 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "Odszyfrowanie urządzenia LUKS2 (usunięcie szyfrowania)." -#: src/cryptsetup.c:3583 +#: src/cryptsetup.c:3670 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "Zainicjowanie ponownego szyfrowania LUKS2 wyłącznie w metadanych." -#: src/cryptsetup.c:3584 +#: src/cryptsetup.c:3671 msgid "Resume initialized LUKS2 reencryption only." msgstr "Wyłącznie wznowienie zainicjowanego ponownego szyfrowania LUKS2." -#: src/cryptsetup.c:3585 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3672 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "Ograniczenie rozmiaru urządzenia danych (przesunięcie położenia danych). NIEBEZPIECZNE!" -#: src/cryptsetup.c:3586 +#: src/cryptsetup.c:3673 msgid "Maximal reencryption hotzone size." msgstr "Maksymalny rozmiar strefy hotzone ponownego szyfrowania." -#: src/cryptsetup.c:3587 +#: src/cryptsetup.c:3674 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "Typ odporności strefy hotzone ponownego szyfrowania (checksum, journal, none)" -#: src/cryptsetup.c:3588 +#: src/cryptsetup.c:3675 msgid "Reencryption hotzone checksums hash" msgstr "Skrót sum kontrolknych strefy hotzone ponownego szyfrowania" -#: src/cryptsetup.c:3589 +#: src/cryptsetup.c:3676 msgid "Override device autodetection of dm device to be reencrypted" msgstr "Nadpisanie wykrytego urządzenia dla urządzenia dm do ponownego szyfrowania" -#: src/cryptsetup.c:3605 src/veritysetup.c:505 src/integritysetup.c:595 +#: src/cryptsetup.c:3692 src/veritysetup.c:515 src/integritysetup.c:615 msgid "[OPTION...] " msgstr "[OPCJA...] " -#: src/cryptsetup.c:3656 src/veritysetup.c:539 src/integritysetup.c:606 +#: src/cryptsetup.c:3747 src/veritysetup.c:551 src/integritysetup.c:626 msgid "Argument missing." msgstr "Brak argumentu ." -#: src/cryptsetup.c:3725 src/veritysetup.c:570 src/integritysetup.c:637 +#: src/cryptsetup.c:3817 src/veritysetup.c:582 src/integritysetup.c:660 msgid "Unknown action." msgstr "Nieznana akcja." -#: src/cryptsetup.c:3735 +#: src/cryptsetup.c:3827 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "Opcje --refresh i --test-passphrase wykluczają się wzajemnie." -#: src/cryptsetup.c:3740 +#: src/cryptsetup.c:3832 msgid "Option --deferred is allowed only for close command." msgstr "Opcja --deferred jest dozwolona tylko dla operacji zamknięcia." -#: src/cryptsetup.c:3745 +#: src/cryptsetup.c:3837 msgid "Option --shared is allowed only for open of plain device." msgstr "Opcja --shared jest dozwolona tylko dla operacji otwarcia zwykłego urządzenia." -#: src/cryptsetup.c:3750 src/integritysetup.c:654 +#: src/cryptsetup.c:3842 src/integritysetup.c:677 msgid "Option --allow-discards is allowed only for open operation." msgstr "Opcja --allow-discards jest dozwolona tylko dla operacji otwarcia." -#: src/cryptsetup.c:3755 +#: src/cryptsetup.c:3847 msgid "Option --persistent is allowed only for open operation." msgstr "Opcja --persistent jest dozwolona tylko dla operacji otwarcia." -#: src/cryptsetup.c:3760 +#: src/cryptsetup.c:3852 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "Opcja --serialize-memory-hard-pbkdf jest dozwolona tylko dla operacji otwarcia." -#: src/cryptsetup.c:3765 +#: src/cryptsetup.c:3857 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "Opcja --persistent nie jest dozwolona z --test-passphrase." -#: src/cryptsetup.c:3775 +#: src/cryptsetup.c:3867 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2854,259 +2895,259 @@ "open i benchmark. Aby ograniczyć odczyt z pliku klucza, należy użyć\n" "--keyfile-size=(bajty)." -#: src/cryptsetup.c:3781 +#: src/cryptsetup.c:3873 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "Opcja --integrity jest dozwolona tylko dla operacji luksFormat (LUKS2)." -#: src/cryptsetup.c:3786 +#: src/cryptsetup.c:3878 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "Opcja --integrity-no-wipe może być użyta tylko do akcji formatowania z rozszerzeniem integralności." -#: src/cryptsetup.c:3792 +#: src/cryptsetup.c:3884 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "Opcje --label i --subsystem są dozwolone tylko dla operacji LUKS2 luksFormat i config." -#: src/cryptsetup.c:3798 +#: src/cryptsetup.c:3890 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "Opcja --test-passphrase jest dozwolona tylko przy otwieraniu urządzeń LUKS, TRCYPT i BITLK." -#: src/cryptsetup.c:3803 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3895 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "Rozmiar klucza musi być wielokrotnością 8 bitów" -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3901 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "Numer klucza jest nieprawidłowy." -#: src/cryptsetup.c:3816 +#: src/cryptsetup.c:3908 msgid "Option --key-file takes precedence over specified key file argument." msgstr "Opcja --key-file ma priorytet nad podanym argumentem pliku klucza." -#: src/cryptsetup.c:3823 src/veritysetup.c:582 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3915 src/veritysetup.c:594 src/integritysetup.c:686 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "Liczba ujemna nie jest dozwolona dla tej opcji." -#: src/cryptsetup.c:3827 +#: src/cryptsetup.c:3919 msgid "Only one --key-file argument is allowed." msgstr "Dozwolony jest tylko jeden argument --key-file." -#: src/cryptsetup.c:3831 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3923 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "Dozwolona jest tylko jedna z opcji --use-[u]random." -#: src/cryptsetup.c:3835 +#: src/cryptsetup.c:3927 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "Opcja --use-[u]random jest dozwolona tylko dla operacji luksFormat." -#: src/cryptsetup.c:3839 +#: src/cryptsetup.c:3931 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "Opcja --uuid jest dozwolona tylko dla operacji luksFormat i luksUUID." -#: src/cryptsetup.c:3843 +#: src/cryptsetup.c:3935 msgid "Option --align-payload is allowed only for luksFormat." msgstr "Opcja --align-payload jest dozwolona tylko dla operacji luksFormat." -#: src/cryptsetup.c:3847 +#: src/cryptsetup.c:3939 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Opcje --luks2-metadata-size i --opt-luks2-keyslots-size są dozwolone tylko dla operacji luksFormat z LUKS2." -#: src/cryptsetup.c:3852 +#: src/cryptsetup.c:3944 msgid "Invalid LUKS2 metadata size specification." msgstr "Błędne określenie rozmiaru metadanych LUKS2." -#: src/cryptsetup.c:3856 +#: src/cryptsetup.c:3948 msgid "Invalid LUKS2 keyslots size specification." msgstr "Błędne określenie rozmiaru kluczy LUKS2." -#: src/cryptsetup.c:3860 +#: src/cryptsetup.c:3952 msgid "Options --align-payload and --offset cannot be combined." msgstr "Opcji --align-payload i --offset nie można łączyć." -#: src/cryptsetup.c:3866 +#: src/cryptsetup.c:3958 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "Opcja --skip jest obsługiwana tylko przy otwieraniu urządzeń plain i loopaes." -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3965 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "Opcja --offset jest obsługiwana tylko przy otwieraniu urządzeń plain i loopaes oraz dla operacji luksFormat i ponownego szyfrowania." -#: src/cryptsetup.c:3879 +#: src/cryptsetup.c:3971 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "Opcje --tcrypt-hidden, --tcrypt-system i --tcrypt-backup są obsługiwane tylko dla urządzeń TCRYPT." -#: src/cryptsetup.c:3884 +#: src/cryptsetup.c:3976 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "Opcji --tcrypt-hidden nie można łączyć z --allow-discards." -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:3981 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "Opcja --veracrypt jest obsługiwana tylko dla typu urządzeń TCRYPT." -#: src/cryptsetup.c:3895 +#: src/cryptsetup.c:3987 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "Podano błędny argument dla parametru --veracrypt-pim." -#: src/cryptsetup.c:3899 +#: src/cryptsetup.c:3991 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "Opcja --veracrypt-pim jest obsługiwana tylko dla urządzeń zgodnych z VeraCryptem." -#: src/cryptsetup.c:3907 +#: src/cryptsetup.c:3999 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "Opcja --veracrypt-query-pim jest obsługiwana tylko dla urządzeń zgodnych z VeraCryptem." -#: src/cryptsetup.c:3911 +#: src/cryptsetup.c:4003 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "Opcje --veracrypt-pim i --veracrypt-query-pim wykluczają się wzajemnie." -#: src/cryptsetup.c:3918 +#: src/cryptsetup.c:4010 msgid "Option --priority can be only ignore/normal/prefer." msgstr "Opcja --priority może mieć wartości tylko ignore/normal/prefer." -#: src/cryptsetup.c:3923 src/cryptsetup.c:3961 +#: src/cryptsetup.c:4015 src/cryptsetup.c:4053 msgid "Keyslot specification is required." msgstr "Wymagane jest określenie klucza." -#: src/cryptsetup.c:3928 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4020 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "Funkcja pochodna klucza oparta na haśle (PBKDF) może być tylko pbkdf2 lub argon2i/argon2id." -#: src/cryptsetup.c:3933 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4025 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "Wymuszonych iteracji PBKDF nie można łączyć z opcją czasu iteracji." -#: src/cryptsetup.c:3939 +#: src/cryptsetup.c:4031 msgid "Sector size option is not supported for this command." msgstr "Opcja rozmiaru sektora nie jest obsługiwana dla tego polecenia." -#: src/cryptsetup.c:3951 +#: src/cryptsetup.c:4043 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." msgstr "Opcja dużych rozmiarów sektorów IV jest obsługiwana tylko przy otwieraniu urządzeń typu plain z sektorem większym niż 512 bajtów." -#: src/cryptsetup.c:3956 +#: src/cryptsetup.c:4048 msgid "Key size is required with --unbound option." msgstr "Przy opcji --unbound wymagany jest rozmiar klucza." -#: src/cryptsetup.c:3966 +#: src/cryptsetup.c:4058 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "Opcja --unbound może być użyta tylko z akcjami luksAddKey i luksDump." -#: src/cryptsetup.c:3971 +#: src/cryptsetup.c:4063 msgid "Option --refresh may be used only with open action." msgstr "Opcja --refresh może być użyta tylko dla akcji otwierania." -#: src/cryptsetup.c:3982 +#: src/cryptsetup.c:4074 msgid "Cannot disable metadata locking." msgstr "Nie można wyłączyć blokowania metadanych." -#: src/cryptsetup.c:3992 +#: src/cryptsetup.c:4085 msgid "Invalid max reencryption hotzone size specification." msgstr "Błędne określenie maksymalnego rozmiaru strefy hotzone ponownego szyfrowania." -#: src/cryptsetup.c:4000 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4093 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "Błędne określenie rozmiaru urządzenia." -#: src/cryptsetup.c:4003 +#: src/cryptsetup.c:4096 msgid "Maximum device reduce size is 1 GiB." msgstr "Maksymalna wartość ograniczenia rozmiaru urządzenia to 1GiB." -#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4099 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "Rozmiar ograniczenia musi być wielokrotnością 512-bajtowego sektora." -#: src/cryptsetup.c:4011 +#: src/cryptsetup.c:4104 msgid "Invalid data size specification." msgstr "Błędne określenie rozmiaru danych." -#: src/cryptsetup.c:4016 +#: src/cryptsetup.c:4109 msgid "Reduce size overflow." msgstr "Zmniejszenie przepełnienia rozmiaru." -#: src/cryptsetup.c:4020 +#: src/cryptsetup.c:4113 msgid "LUKS2 decryption requires option --header." msgstr "Odszyfrowanie LUKS2 wymaga opcji --header." -#: src/cryptsetup.c:4024 +#: src/cryptsetup.c:4117 msgid "Device size must be multiple of 512 bytes sector." msgstr "Rozmiar urządzenia musi być wielokrotnością 512-bajtowego sektora." -#: src/cryptsetup.c:4028 +#: src/cryptsetup.c:4121 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "Opcji --reduce-device-size i --data-size nie można łączyć." -#: src/cryptsetup.c:4032 +#: src/cryptsetup.c:4125 msgid "Options --device-size and --size cannot be combined." msgstr "Opcji --device-size i --size nie można łączyć." -#: src/cryptsetup.c:4036 +#: src/cryptsetup.c:4129 msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." msgstr "Opcje --keyslot-cipher i --keyslot-key-size muszą być użyte łącznie." -#: src/veritysetup.c:67 +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "Podano błędny łańcuch zarodka." -#: src/veritysetup.c:98 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "Nie można utworzyć obrazu hasza %s do zapisu." -#: src/veritysetup.c:108 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "Nie można utworzyć obrazu FEC %s do zapisu." -#: src/veritysetup.c:182 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "Podano błędny łańcuch głównego hasza." -#: src/veritysetup.c:190 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "Błędny plik podpisu %s." -#: src/veritysetup.c:197 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "Nie można odczytać pliku klucza %s." -#: src/veritysetup.c:397 +#: src/veritysetup.c:406 msgid " " msgstr " " -#: src/veritysetup.c:397 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:492 msgid "format device" msgstr "sformatowanie urządzenia" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid " " msgstr " " -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid "verify device" msgstr "weryfikacja urządzenia" -#: src/veritysetup.c:399 +#: src/veritysetup.c:408 msgid " " msgstr " " -#: src/veritysetup.c:401 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:495 msgid "show active device status" msgstr "pokazanie stanu aktywnego urządzenia" -#: src/veritysetup.c:402 +#: src/veritysetup.c:411 msgid "" msgstr "" -#: src/veritysetup.c:402 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:496 msgid "show on-disk information" msgstr "wyświetlenie informacji z dysku" -#: src/veritysetup.c:421 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3121,7 +3162,7 @@ " to urządzenie zawierające dane weryfikacyjne\n" " to hasz głównego węzła na \n" -#: src/veritysetup.c:428 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3132,134 +3173,139 @@ "Domyślnie wkompilowane parametry dm-verity:\n" "\tHasz: %s, blok danych (bajtów): %u, blok haszy (bajtów): %u, rozmiar zarodka: %u, format haszy: %u\n" -#: src/veritysetup.c:471 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "Nieużywanie superbloku VERITY" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Typ formatu (1 - normalny, 0 - oryginalny Chrome OS)" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "number" msgstr "liczba" -#: src/veritysetup.c:473 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "Rozmiar bloku na urządzeniu z danymi" -#: src/veritysetup.c:474 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "Rozmiar bloku na urządzeniu z haszami" -#: src/veritysetup.c:475 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "bajty parzystości FEC" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "Liczba bloków w pliku danych" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "blocks" msgstr "bloki" -#: src/veritysetup.c:477 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "Ścieżka do urządzenia z danymi korekcji błędów" -#: src/veritysetup.c:477 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:566 msgid "path" msgstr "ścieżka" -#: src/veritysetup.c:478 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "Offset początku na urządzeniu z haszami" -#: src/veritysetup.c:479 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "Offset początku na urządzeniu FEC" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "Algorytm skrótu" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "string" msgstr "łańcuch" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "Salt" msgstr "Zarodek" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "hex string" msgstr "Łańcuch szesnastkowy" -#: src/veritysetup.c:483 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "Ścieżka pliku podpisu hasza głównego" -#: src/veritysetup.c:484 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "Restart jądra po wykryciu uszkodzenia" -#: src/veritysetup.c:485 +#: src/veritysetup.c:495 msgid "Panic kernel if corruption is detected" msgstr "Panika jądra po wykryciu uszkodzenia" -#: src/veritysetup.c:486 +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "Zignotowanie uszkodzenia, jedynie logowanie" -#: src/veritysetup.c:487 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "Bez weryfikacji wyzerowanych bloków" -#: src/veritysetup.c:488 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "Sprawdzenie bloku danych tylko przy pierwszym odczycie" -#: src/veritysetup.c:588 +#: src/veritysetup.c:600 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "Opcje --ignore-corruption, --restart-on-corruption oraz --ignore-zero-blocks są dozwolone tylko przy operacji otwierania." -#: src/veritysetup.c:593 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "Opcja --root-hash-signature może być użyta tylko dla akcji otwierania." -#: src/veritysetup.c:598 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "Opcji --ignore-corruption oraz --restart-on-corruption nie można użyć naraz." -#: src/veritysetup.c:603 +#: src/veritysetup.c:615 msgid "Option --panic-on-corruption and --restart-on-corruption cannot be used together." msgstr "Opcji --panic-on-corruption oraz --restart-on-corruption nie można użyć naraz." -#: src/integritysetup.c:84 src/utils_password.c:305 +#: src/integritysetup.c:85 +#, c-format +msgid "Invalid key size. Maximum is %u bytes." +msgstr "Błędny rozmiar klucza. Maksimum to %u bajtów." + +#: src/integritysetup.c:95 src/utils_password.c:339 #, c-format msgid "Cannot read keyfile %s." msgstr "Nie można odczytać pliku klucza %s." -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:99 src/utils_password.c:344 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "Nie można odczytać %d bajtów z pliku klucza %s." -#: src/integritysetup.c:254 +#: src/integritysetup.c:266 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Sformatowano z rozmiarem znacznika %u, wewnętrzna integralność %s.\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:492 src/integritysetup.c:496 msgid "" msgstr "" -#: src/integritysetup.c:480 +#: src/integritysetup.c:493 msgid " " msgstr " " -#: src/integritysetup.c:502 +#: src/integritysetup.c:515 #, c-format msgid "" "\n" @@ -3270,403 +3316,409 @@ " to urządzenie do utworzenia pod %s\n" " to urządzenie zawierające dane ze znacznikami integralności\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 "" "\n" "Domyślnie wkompilowane parametry dm-integrity:\n" "\tAlgorytm sumy kontrolnej: %s\n" +"\tMaksymalny rozmiar pliku klucza: %dkB\n" -#: src/integritysetup.c:549 +#: src/integritysetup.c:566 msgid "Path to data device (if separated)" msgstr "Ścieżka do urządzenia danych (jeśli osobne)" -#: src/integritysetup.c:551 +#: src/integritysetup.c:568 msgid "Journal size" msgstr "Rozmiar kroniki" -#: src/integritysetup.c:552 +#: src/integritysetup.c:569 msgid "Interleave sectors" msgstr "Sektory przeplotu" -#: src/integritysetup.c:553 +#: src/integritysetup.c:570 msgid "Journal watermark" msgstr "Znak wodny kroniki" -#: src/integritysetup.c:553 +#: src/integritysetup.c:570 msgid "percent" msgstr "procent" -#: src/integritysetup.c:554 +#: src/integritysetup.c:571 msgid "Journal commit time" msgstr "Czas zatwierdzania kroniki" -#: src/integritysetup.c:554 src/integritysetup.c:556 +#: src/integritysetup.c:571 src/integritysetup.c:573 msgid "ms" msgstr "ms" -#: src/integritysetup.c:555 +#: src/integritysetup.c:572 msgid "Number of 512-byte sectors per bit (bitmap mode)." msgstr "Liczba 512-bajtowych sektorów na bit (tryb bitmapy)." -#: src/integritysetup.c:556 +#: src/integritysetup.c:573 msgid "Bitmap mode flush time" msgstr "Czas zrzutu trybu bitmapy" -#: src/integritysetup.c:557 +#: src/integritysetup.c:574 msgid "Tag size (per-sector)" msgstr "Rozmiar znacznika (na sektor)" -#: src/integritysetup.c:558 +#: src/integritysetup.c:575 msgid "Sector size" msgstr "Rozmiar sektora" -#: src/integritysetup.c:559 +#: src/integritysetup.c:576 msgid "Buffers size" msgstr "Rozmiar buforów" -#: src/integritysetup.c:561 +#: src/integritysetup.c:578 msgid "Data integrity algorithm" msgstr "Algorytm integralności danych" -#: src/integritysetup.c:562 +#: src/integritysetup.c:579 msgid "The size of the data integrity key" msgstr "Rozmiar klucza integralności danych" -#: src/integritysetup.c:563 +#: src/integritysetup.c:580 msgid "Read the integrity key from a file" msgstr "Odczyt klucza integralności z pliku" -#: src/integritysetup.c:565 +#: src/integritysetup.c:582 msgid "Journal integrity algorithm" msgstr "Algorytm integralności kroniki" -#: src/integritysetup.c:566 +#: src/integritysetup.c:583 msgid "The size of the journal integrity key" msgstr "Rozmiar klucza integralności kroniki" -#: src/integritysetup.c:567 +#: src/integritysetup.c:584 msgid "Read the journal integrity key from a file" msgstr "Odczyt klucza integralności z pliku" -#: src/integritysetup.c:569 +#: src/integritysetup.c:586 msgid "Journal encryption algorithm" msgstr "Algorytm szyfrowania kroniki" -#: src/integritysetup.c:570 +#: src/integritysetup.c:587 msgid "The size of the journal encryption key" msgstr "Rozmiar klucza szyfrowania kroniki" -#: src/integritysetup.c:571 +#: src/integritysetup.c:588 msgid "Read the journal encryption key from a file" msgstr "Odczyt klucza szyfrującego kroniki z pliku" -#: src/integritysetup.c:574 +#: src/integritysetup.c:591 msgid "Recovery mode (no journal, no tag checking)" msgstr "Tryb odtwarzania (bez kroniki, bez sprawdzania znaczników)" -#: src/integritysetup.c:575 +#: src/integritysetup.c:592 msgid "Use bitmap to track changes and disable journal for integrity device" msgstr "Użycie bitmapy do śledzenia zmian i wyłączenie kroniki dla urządzenia integralności" -#: src/integritysetup.c:576 +#: src/integritysetup.c:593 msgid "Recalculate initial tags automatically." msgstr "Automatyczne przeliczenie znaczników początkowych." -#: src/integritysetup.c:649 +#: src/integritysetup.c:596 +msgid "Do not protect superblock with HMAC (old kernels)" +msgstr "Bez zabezpieczania superbloku przy użyciu HMAC (stare jądra)" + +#: src/integritysetup.c:597 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "Zezwolenie na przeliczanie wolumenów z kluczami HMAC (stare jądra)" + +#: src/integritysetup.c:672 msgid "Option --integrity-recalculate can be used only for open action." msgstr "Opcja --integrity-recalculate może być użyta tylko dla akcji otwierania." -#: 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 "Opcje --journal-size, --interleave-sectors, --sector-size, --tag-size oraz --no-wipe mogą być użyte tylko dla akcji formatowania." -#: src/integritysetup.c:675 +#: src/integritysetup.c:698 msgid "Invalid journal size specification." msgstr "Błędne określenie rozmiaru kroniki." -#: src/integritysetup.c:680 +#: src/integritysetup.c:703 msgid "Both key file and key size options must be specified." msgstr "Muszą być podane obie opcje: pliku klucza i rozmiaru klucza." -#: src/integritysetup.c:683 -msgid "Integrity algorithm must be specified if integrity key is used." -msgstr "Algorytm integralności musi być podany, jeśli używany jest klucz integralności." - -#: src/integritysetup.c:688 +#: src/integritysetup.c:708 msgid "Both journal integrity key file and key size options must be specified." msgstr "Muszą być podane obie opcje: pliku klucza integralności i rozmiaru klucza." -#: src/integritysetup.c:691 +#: src/integritysetup.c:711 msgid "Journal integrity algorithm must be specified if journal integrity key is used." msgstr "Algorytm integralności kroniki musi być podany, jeśli używany jest klucz integralności kroniki." -#: src/integritysetup.c:696 +#: src/integritysetup.c:716 msgid "Both journal encryption key file and key size options must be specified." msgstr "Muszą być podane obie opcje: pliku szyfrowania kroniki i rozmiaru klucza." -#: src/integritysetup.c:699 +#: src/integritysetup.c:719 msgid "Journal encryption algorithm must be specified if journal encryption key is used." msgstr "Algorytm szyfrowania kroniki musi być podany, jeśli używany jest klucz szyfrowania kroniki." -#: src/integritysetup.c:703 +#: src/integritysetup.c:723 msgid "Recovery and bitmap mode options are mutually exclusive." msgstr "Opcje trybu odtwarzania i bitmapy wykluczają się wzajemnie." -#: src/integritysetup.c:707 +#: src/integritysetup.c:727 msgid "Journal options cannot be used in bitmap mode." msgstr "Opcji kroniki nie można używać w trybie bitmapy." -#: src/integritysetup.c:711 +#: src/integritysetup.c:731 msgid "Bitmap options can be used only in bitmap mode." msgstr "Opcje bitmapy mogą być używane tylko w trybie bitmapy." -#: src/cryptsetup_reencrypt.c:172 +#: src/cryptsetup_reencrypt.c:190 msgid "Reencryption already in-progress." msgstr "Ponowne szyfrowanie już trwa." -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "Nie można otworzyć %s w trybie wyłącznym, urządzenie jest w użyciu." -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "Przydzielenie wyrównanego obszaru pamięci nie powiodło się." -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "Nie można odczytać urządzenia %s." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "Oznaczanie urządzenia LUKS1 %s jako bezużytecznego." -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "Ustawianie flagi ponownego szyfrowania offline LUKS2 na urządzeniu %s." -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "Nie można zapisać na urządzenie %s." -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "Nie można zapisać pliku logu ponownego szyfrowania." -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "Nie można odczytać pliku logu ponownego szyfrowania." -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "Plik logu %s istnieje, wznowienie ponownego szyfrowania.\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "Uaktywnianie urządzenia tymczasowego przy użyciu starego nagłówka LUKS." -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "Uaktywnianie urządzenia tymczasowego przy użyciu nowego nagłówka LUKS." -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "Uaktywnianie urządzeń tymczasowych nie powiodła się." -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "Nie udało się ustawić offsetu danych." -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "Nie udało się ustawić rozmiaru metadanych." -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "Utworzono nowy nagłówek LUKS dla urządzenia %s." -#: 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 "Ta wersja cryptsetup-reencrypt nie obsługuje nowego typu tokenu wewnętrznego %s." -#: src/cryptsetup_reencrypt.c:655 +#: src/cryptsetup_reencrypt.c:673 msgid "Failed to read activation flags from backup header." msgstr "Nie udało się odczytać flag uaktywniania z nagłówka zapasowego." -#: src/cryptsetup_reencrypt.c:659 +#: src/cryptsetup_reencrypt.c:677 msgid "Failed to write activation flags to new header." msgstr "Nie udało się zapisać flag uaktywniania w nowym nagłówku." -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "Nie udało się odczytać wymagań z nagłówka zapasowego." -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "Utworzono kopię zapasową nagłówka %s urządzenia %s." -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "Tworzenie kopii zapasowych nagłówków LUKS nie powiodło się." -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "Nie można odtworzyć nagłówka %s na urządzeniu %s." -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "Odtworzono nagłówek %s na urządzeniu %s." -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "Nie można otworzyć tymczasowego urządzenia LUKS." -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "Nie można pobrać rozmiaru urządzenia." -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "Błąd we/wy podczas ponownego szyfrowania." -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "Dostarczony UUID jest nieprawidłowy." -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "Nie można otworzyć pliku logu ponownego szyfrowania." -#: 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 "Nie w trakcie odszyfrowywania; dostarczony UUID może być użyty tylko do wznowienia wstrzymanego procesu odszyfrowywania." -#: src/cryptsetup_reencrypt.c:1504 +#: src/cryptsetup_reencrypt.c:1522 #, c-format msgid "Changed pbkdf parameters in keyslot %i." msgstr "Zmieniono parametry PBKDF dla klucza %i." -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "Rozmiar bloku ponownego szyfrowania" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "MiB" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "Bez zmiany klucza i ponownego szyfrowania obszaru danych" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "Odczyt nowego klucza wolumenu (klucza głównego) z pliku" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "Czas iteracji PBKDF2 dla LUKS (w milisekundach)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "Użycie bezpośredniego we/wy przy dostępie do urządzeń" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "Użycie fsync po każdym bloku" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "Uaktualnianie pliku logu po każdym bloku" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "Użycie tylko tego slotu (wyłączenie pozostałych)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "Utworzenie nowego nagłówka na nieszyfrowanym urządzeniu" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "Trwałe odszyfrowanie urządzenia (usunięcie szyfrowania)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "UUID używany do wznowienia odszyfrowywania" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Typ metadanych LUKS: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[OPCJA...] " -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "Ponowne szyfrowanie zmieni: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "klucz wolumenu" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "hasz na " -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr ", szyfr na" -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "Wymagany argument." -#: 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 "Jako rozmiar bloku ponownego szyfrowania dozwolone są jedynie wartości od 1 MiB do 64 MiB." -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "Maksymalna wartość ograniczenia rozmiaru urządzenia to 64MiB." -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "Opcja --new musi być użyta wraz z --reduce_device_size lub --header." -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "Opcja --keep-key może być użyta tylko z --hash, --iter-time lub --pbkdf-force-iterations.." -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "Opcja --new nie może być użyta wraz z --decrypt." -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "Opcja --decrypt jest niezgodna z podanymi parametrami." -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "Opcja --uuid jest dozwolona tylko wraz z --decrypt." -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Błędny typ LUKS - musi być jednym z 'luks', 'luks1' lub 'luks2'." @@ -3707,32 +3759,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "Polecenie nie powiodło się z kodem %i (%s).\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "Klucz numer %i utworzony." -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "Klucz numer %i odblokowany." -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "Klucz numer %i usunięty." -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "Token %i utworzony." -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "Token %i usunięty." -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3740,55 +3792,55 @@ "\n" "Wymazywanie przerwane." -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "UWAGA: urządzenie %s już zawiera sygnaturę partycji '%s'.\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "UWAGA: urządzenie %s już zawiera sygnaturę superbloku '%s'.\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "Nie udało się zainicjować sond sygnatur urządzeń." -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "Nie udało się wykonać stat na urządzeniu %s." -#: 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 "Urządzenie %s jest w użyciu. Nie można kontynuować operacji formatowania." -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "Nie udało się otworzyć pliku %s do odczytu i zapisu." -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "Istniejąca sygnatura partycji '%s' (offset w bajtach: %) na urządzeniu %s zostanie wymazana." -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "Istniejąca sygnatura superbloku '%s' (offset w bajtach: %) na urządzeniu %s zostanie wymazana." -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "Nie udało się wymazać sygnatury urządzenia." -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "Nie udało się sprawdzić sygnatury urządzenia %s." -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3796,7 +3848,7 @@ "\n" "Ponowne szyfrowanie przerwane." -#: src/utils_password.c:43 src/utils_password.c:75 +#: src/utils_password.c:43 src/utils_password.c:76 #, c-format msgid "Cannot check password quality: %s" msgstr "Nie można sprawdzić jakości hasła: %s" @@ -3815,46 +3867,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "Sprawdzenie jakości hasła nie powiodło się: błędne hasło (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:228 src/utils_password.c:242 msgid "Error reading passphrase from terminal." msgstr "Błąd podczas odczytu hasła z terminala." -#: src/utils_password.c:206 +#: src/utils_password.c:240 msgid "Verify passphrase: " msgstr "Weryfikacja hasła: " -#: src/utils_password.c:213 +#: src/utils_password.c:247 msgid "Passphrases do not match." msgstr "Hasła nie zgadzają się." -#: src/utils_password.c:250 +#: src/utils_password.c:284 msgid "Cannot use offset with terminal input." msgstr "Nie można użyć offsetu, jeśli wejściem jest terminal." -#: src/utils_password.c:253 +#: src/utils_password.c:287 #, c-format msgid "Enter passphrase: " msgstr "Hasło: " -#: src/utils_password.c:256 +#: src/utils_password.c:290 #, c-format msgid "Enter passphrase for %s: " msgstr "Hasło dla %s: " -#: src/utils_password.c:287 +#: src/utils_password.c:321 msgid "No key available with this passphrase." msgstr "Dla tego hasła nie ma dostępnego klucza." -#: src/utils_password.c:289 +#: src/utils_password.c:323 msgid "No usable keyslot is available." msgstr "Brak dostępnego miejsca na klucz." -#: src/utils_password.c:328 +#: src/utils_password.c:365 #, c-format msgid "Cannot open keyfile %s for write." msgstr "Nie można otworzyć pliku klucza %s do zapisu." -#: src/utils_password.c:335 +#: src/utils_password.c:372 #, c-format msgid "Cannot write to keyfile %s." msgstr "Nie można zapisać pliku klucza %s." diff -Nru cryptsetup-2.3.4/po/ru.po cryptsetup-2.3.6/po/ru.po --- cryptsetup-2.3.4/po/ru.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/ru.po 2021-05-28 04:57:08.000000000 -0500 @@ -4,13 +4,13 @@ # # Rosetta Contributors and Canonical Ltd , 2007. # Eugene Roskin , 2016. -# Yuri Kozlov , 2018, 2019, 2020. +# Yuri Kozlov , 2018, 2019, 2020, 2021. msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.4-rc0\n" +"Project-Id-Version: cryptsetup 2.3.6-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-08-27 21:34+0200\n" -"PO-Revision-Date: 2020-09-02 08:03+0300\n" +"POT-Creation-Date: 2021-05-21 17:33+0200\n" +"PO-Revision-Date: 2021-05-23 22:35+0300\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" "Language: ru\n" @@ -19,65 +19,65 @@ "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" "X-Launchpad-Export-Date: 2018-12-03 15:52+0000\n" -"X-Generator: Lokalize 20.04.3\n" +"X-Generator: Lokalize 20.12.0\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: lib/libdevmapper.c:405 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "Не удалось инициализировать device-mapper, выполняется без прав суперпользователя." -#: lib/libdevmapper.c:408 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "Не удалось инициализировать device-mapper. Загружен ли модуль ядра dm_mod?" -#: lib/libdevmapper.c:1149 +#: lib/libdevmapper.c:1180 msgid "Requested deferred flag is not supported." msgstr "Запрошенный флаг отсрочки не поддерживается." -#: lib/libdevmapper.c:1216 +#: lib/libdevmapper.c:1249 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "У устройства %s был обрезан DM-UUID." -#: lib/libdevmapper.c:1547 +#: lib/libdevmapper.c:1580 msgid "Unknown dm target type." msgstr "Неизвестный тип цели dm." -#: lib/libdevmapper.c:1660 lib/libdevmapper.c:1665 lib/libdevmapper.c:1725 -#: lib/libdevmapper.c:1728 +#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766 +#: lib/libdevmapper.c:1769 msgid "Requested dm-crypt performance options are not supported." msgstr "Запрошенные параметры производительности dm-crypt не поддерживаются." -#: lib/libdevmapper.c:1672 lib/libdevmapper.c:1676 +#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Запрошенные параметры обработки повреждённых данных dm-verify не поддерживаются." -#: lib/libdevmapper.c:1680 +#: lib/libdevmapper.c:1721 msgid "Requested dm-verity FEC options are not supported." msgstr "Запрошенные параметры FEC dm-verify не поддерживаются." -#: lib/libdevmapper.c:1684 +#: lib/libdevmapper.c:1725 msgid "Requested data integrity options are not supported." msgstr "Запрошенные параметры целостности данных не поддерживаются." -#: lib/libdevmapper.c:1686 +#: lib/libdevmapper.c:1727 msgid "Requested sector_size option is not supported." msgstr "Запрошенный параметр sector_size не поддерживается." -#: lib/libdevmapper.c:1691 +#: lib/libdevmapper.c:1732 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "Запрошенный автоматический пересчёт тегов целостности не поддерживается." -#: lib/libdevmapper.c:1695 lib/libdevmapper.c:1731 lib/libdevmapper.c:1734 +#: lib/libdevmapper.c:1736 lib/libdevmapper.c:1772 lib/libdevmapper.c:1775 #: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Discard/TRIM не поддерживается." -#: lib/libdevmapper.c:1699 +#: lib/libdevmapper.c:1740 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "Запрошенный режим битовой карты dm-integrity не поддерживается." -#: lib/libdevmapper.c:2663 +#: lib/libdevmapper.c:2713 #, c-format msgid "Failed to query dm-%s segment." msgstr "Ошибка при запросе сегмента dm-%s." @@ -119,7 +119,7 @@ msgid "Cannot initialize crypto backend." msgstr "Невозможно инициализировать внутренний интерфейс crypto." -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "Алгоритм хэширования %s не поддерживается." @@ -133,7 +133,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "Невозможно определить тип устройства. Несовместимая активация устройства?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "Эта операция поддерживается только для устройства LUKS." @@ -141,7 +141,7 @@ msgid "This operation is supported only for LUKS2 device." msgstr "Эта операция поддерживается только для устройства LUKS2." -#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2347 msgid "All key slots full." msgstr "Заполнены все слоты ключей." @@ -155,7 +155,7 @@ msgid "Key slot %d is full, please select another one." msgstr "Слот ключа %d заполнен, выберите другой." -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "Размер устройства не выровнен к размеру логического блока устройства." @@ -164,7 +164,7 @@ msgid "Header detected but device %s is too small." msgstr "Обнаружен заголовок, но устройство %s слишком маленькое." -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "Эта операция не поддерживается для этого типа устройств." @@ -172,17 +172,13 @@ 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 #, c-format msgid "Unsupported LUKS version %d." msgstr "Неподдерживаемая версия LUKS %d." -#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 -msgid "Detached metadata device is not supported for this crypt type." -msgstr "Отсоединение устройства метаданных не поддерживается для этого типа crypt." - -#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628 -#: lib/setup.c:2777 lib/setup.c:4517 +#: lib/setup.c:1427 lib/setup.c:2547 lib/setup.c:2619 lib/setup.c:2631 +#: lib/setup.c:2785 lib/setup.c:4532 #, c-format msgid "Device %s is not active." msgstr "Устройство %s не активно." @@ -196,7 +192,7 @@ msgid "Invalid plain crypt parameters." msgstr "Неверные параметры plain crypt." -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 msgid "Invalid key size." msgstr "Неверный размер ключа." @@ -204,12 +200,16 @@ msgid "UUID is not supported for this crypt type." msgstr "Для данного типа crypt UUID не поддерживается." +#: lib/setup.c:1539 lib/setup.c:1959 +msgid "Detached metadata device is not supported for this crypt type." +msgstr "Устройство с отсоединёнными метаданными не поддерживается для этого типа crypt." + #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1238 src/cryptsetup.c:3945 +#: src/cryptsetup.c:1296 src/cryptsetup.c:4037 msgid "Unsupported encryption sector size." msgstr "Неподдерживаемый размер сектора шифрования." -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "Размер устройства не выровнен к запрошенному размеру сектора." @@ -253,8 +253,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: размер слотов ключа LUKS2 изменился и стал % байт.\n" -#: lib/setup.c:1882 lib/utils_device.c:834 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:2358 lib/luks2/luks2_reencrypt.c:3383 #, c-format msgid "Device %s is too small." msgstr "Устройство %s слишком маленькое." @@ -287,16 +287,16 @@ msgid "Can't format VERITY without device." msgstr "Невозможно отформатировать VERITY без устройства." -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "Неподдерживаемый тип хэша %d для VERITY." -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "Неподдерживаемый размер блока для VERITY." -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "Неподдерживаемое смещение хэша для VERITY." @@ -326,236 +326,236 @@ msgid "Unknown crypt device type %s requested." msgstr "Запрошен неизвестный тип устройства crypt %s." -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "Неподдерживаемые параметры для устройства %s." -#: 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:2410 +#: lib/luks2/luks2_reencrypt.c:2753 #, c-format msgid "Mismatching parameters on device %s." msgstr "Несовпадение параметров для устройства %s." -#: lib/setup.c:2661 +#: lib/setup.c:2664 msgid "Crypt devices mismatch." msgstr "Несоответствие устройств crypt." -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3161 #, c-format msgid "Failed to reload device %s." msgstr "Ошибка при перезагрузке устройства %s." -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "Ошибка при приостановке устройства %s." -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3096 lib/luks2/luks2_reencrypt.c:3165 #, c-format msgid "Failed to resume device %s." msgstr "Ошибка при возобновлении работы устройства %s." -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "Критическая ошибка при перезагрузке устройства %s (поверх устройства %s)." -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "Ошибка при переключении устройства %s на dm-error." -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "Невозможно изменить размер закольцованного (loop) устройства." -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "Вы действительно хотите изменить UUID устройства?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "Файл резервного заголовка не содержит заголовка совместимого с LUKS." -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "Том %s не активен." -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "Том %s уже приостановлен." -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "Приостановка не поддерживается устройством %s." -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "Ошибка во время приостановки устройства %s." -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "Том %s не приостановлен." - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "Возобновление не поддерживается устройством %s." -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "Ошибка во время возобновления устройства %s." -#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4314 lib/setup.c:4327 -#: lib/setup.c:4335 lib/setup.c:4348 lib/setup.c:4698 lib/setup.c:5844 +#: lib/setup.c:3164 lib/setup.c:3212 lib/setup.c:3282 +#, c-format +msgid "Volume %s is not suspended." +msgstr "Том %s не приостановлен." + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5862 msgid "Volume key does not match the volume." msgstr "Ключ тома не подходит к тому." -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "Невозможно добавить слот ключа, все слоты отключены и не предоставлен ключ тома." -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "Ошибка при переключении на новый слот ключа." -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "Некорректный слот ключа %d." -#: lib/setup.c:3675 src/cryptsetup.c:1584 src/cryptsetup.c:1929 +#: lib/setup.c:3679 src/cryptsetup.c:1634 src/cryptsetup.c:1979 #, c-format msgid "Keyslot %d is not active." msgstr "Слот ключа %d не активен." -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "Заголовок устройства перекрывает область данных." -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "Выполняется перешифрование. Невозможно активировать устройство." -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2253 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2852 msgid "Failed to get reencryption lock." msgstr "Ошибка при получении блокировки перешифрования." -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2871 msgid "LUKS2 reencryption recovery failed." msgstr "Ошибка восстановления перешифрования LUKS2." -#: lib/setup.c:4127 lib/setup.c:4384 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "Тип устройства инициализирован неправильно." -#: lib/setup.c:4175 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "Устройство %s уже существует." -#: lib/setup.c:4182 +#: lib/setup.c:4192 #, c-format msgid "Cannot use device %s, name is invalid or still in use." msgstr "Невозможно использовать устройство %s, некорректное имя или оно всё ещё используется." -#: lib/setup.c:4301 +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "Для устройства plain указан некорректный ключ тома." -#: lib/setup.c:4410 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "Некорректный корневой хэш для указанного устройства verity." -#: lib/setup.c:4417 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "Требуется подпись корневого хэша." -#: lib/setup.c:4426 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "Отсутствует связка ключей ядра: требуется для передачи подписи в ядро." -#: lib/setup.c:4443 lib/setup.c:5920 +#: lib/setup.c:4458 lib/setup.c:5938 msgid "Failed to load key in kernel keyring." msgstr "Ошибка при загрузке ключа в связку ключей ядра." -#: lib/setup.c:4496 lib/setup.c:4512 lib/luks2/luks2_json_metadata.c:2306 -#: src/cryptsetup.c:2676 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2744 #, c-format msgid "Device %s is still in use." msgstr "Устройство %s всё ещё используется." -#: lib/setup.c:4521 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "Неверное устройство %s." -#: lib/setup.c:4637 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "Буфер ключа тома слишком мал." -#: lib/setup.c:4645 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "Невозможно получить ключ тома для устройства plain." -#: lib/setup.c:4662 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "Невозможно получить корневой хэш для устройства verity." -#: lib/setup.c:4664 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Эта операция не поддерживается для устройства crypt %s." -#: lib/setup.c:4870 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "Операция дампа не поддерживается для устройства этого типа." -#: lib/setup.c:5195 +#: lib/setup.c:5213 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "Смещение данных не кратно %u байтам." -#: lib/setup.c:5480 +#: lib/setup.c:5498 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "Невозможно преобразовать устройство %s, которое всё ещё используется." -#: lib/setup.c:5777 +#: lib/setup.c:5795 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "Ошибка при назначении слота ключа %u в качестве нового ключа тома." -#: lib/setup.c:5850 +#: lib/setup.c:5868 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "Ошибка при инициализации параметров слота ключа по умолчанию LUKS2." -#: lib/setup.c:5856 +#: lib/setup.c:5874 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "Ошибка при назначении слота ключа %d дайджесту." -#: lib/setup.c:5987 +#: lib/setup.c:6005 msgid "Kernel keyring is not supported by the kernel." msgstr "Связка ключей ядра не поддерживается ядром." -#: lib/setup.c:5997 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6015 lib/luks2/luks2_reencrypt.c:2968 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "Не удалось прочитать парольную фразу из связки ключей (ошибка %d)." -#: lib/setup.c:6021 +#: lib/setup.c:6039 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "Не удалось захватить глобальную блокировку сериализации доступа на скорости памяти (memory-hard)." @@ -583,8 +583,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "Невозможно переместиться по запрошенному смещению в файле ключа." -#: 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 msgid "Out of memory while reading passphrase." msgstr "Не хватило памяти при чтении парольной фразы." @@ -604,56 +604,56 @@ msgid "Cannot read requested amount of data." msgstr "невозможно прочитать запрошенное количество данных." -#: 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 #, c-format msgid "Device %s does not exist or access denied." msgstr "Устройство %s не существует или отказано в доступе." -#: lib/utils_device.c:197 +#: lib/utils_device.c:200 #, c-format msgid "Device %s is not compatible." msgstr "Устройство %s несовместимо." -#: lib/utils_device.c:532 +#: lib/utils_device.c:544 #, c-format msgid "Ignoring bogus optimal-io size for data device (%u bytes)." msgstr "Игнорируется фиктивный размер optimal-io для устройства данных (%u байт)." -#: lib/utils_device.c:648 +#: lib/utils_device.c:666 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "Устройство %s слишком маленькое. Требуется не менее % байт." -#: lib/utils_device.c:729 +#: lib/utils_device.c:747 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "Невозможно использовать устройство %s, которое используется (отображено или примонтировано)." -#: lib/utils_device.c:733 +#: lib/utils_device.c:751 #, c-format msgid "Cannot use device %s, permission denied." msgstr "Невозможно использовать устройство %s, недостаточно прав." -#: lib/utils_device.c:736 +#: lib/utils_device.c:754 #, c-format msgid "Cannot get info about device %s." msgstr "Невозможно получить информацию об устройстве %s." -#: lib/utils_device.c:759 +#: lib/utils_device.c:777 msgid "Cannot use a loopback device, running as non-root user." msgstr "Невозможно использовать закольцованное устройство, выполняется без прав суперпользователя." -#: lib/utils_device.c:769 +#: lib/utils_device.c:787 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "Ошибка при присоединении закольцованного устройства (требуется закольцованное устройство с флагом autoclear)." -#: lib/utils_device.c:815 +#: lib/utils_device.c:833 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "Запрошенный размер вне реального размера устройства %s." -#: lib/utils_device.c:823 +#: lib/utils_device.c:841 #, c-format msgid "Device %s has zero size." msgstr "Устройство %s имеет нулевой размер." @@ -727,16 +727,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "ПРЕДУПРЕЖДЕНИЕ: Каталог блокировки %s/%s отсутствует!\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "Будет создан блокирующий каталог %s/%s с правами по умолчанию, заданными при сборке программы." #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Блокировка прервана. Путь блокировки %s/%s использовать невозможно (%s не является каталогом)." -#: 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 msgid "Cannot seek to device offset." msgstr "Невозможно перемещаться по устройству." @@ -763,7 +763,7 @@ msgstr "Шифр должен указываться в формате [шифр]-[режим]-[iv]." #: lib/luks1/keyencryption.c:97 lib/luks1/keymanage.c:344 -#: lib/luks1/keymanage.c:635 lib/luks1/keymanage.c:1080 +#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1094 #: lib/luks2/luks2_json_metadata.c:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." @@ -783,12 +783,12 @@ msgstr "Ошибка ввода-вывода при шифровании слота ключа." #: 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:1263 -#: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "Невозможно открыть устройство %s." @@ -809,13 +809,13 @@ msgid "LUKS keyslot %u is invalid." msgstr "Некорректный слот ключа LUKS %u." -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 -#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1445 -#: src/cryptsetup.c:1571 src/cryptsetup.c:1628 src/cryptsetup.c:1684 -#: src/cryptsetup.c:1751 src/cryptsetup.c:1854 src/cryptsetup.c:1918 -#: src/cryptsetup.c:2148 src/cryptsetup.c:2343 src/cryptsetup.c:2403 -#: src/cryptsetup.c:2469 src/cryptsetup.c:2633 src/cryptsetup.c:3291 -#: src/cryptsetup.c:3300 src/cryptsetup_reencrypt.c:1388 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1495 +#: src/cryptsetup.c:1621 src/cryptsetup.c:1678 src/cryptsetup.c:1734 +#: src/cryptsetup.c:1801 src/cryptsetup.c:1904 src/cryptsetup.c:1968 +#: src/cryptsetup.c:2198 src/cryptsetup.c:2409 src/cryptsetup.c:2471 +#: src/cryptsetup.c:2537 src/cryptsetup.c:2701 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3386 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "Устройство %s не является корректным устройством LUKS." @@ -839,7 +839,7 @@ msgid "Backup file does not contain valid LUKS header." msgstr "Резервный файл не содержит корректный заголовок LUKS." -#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549 +#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:556 #: lib/luks2/luks2_json_metadata.c:1190 #, c-format msgid "Cannot open header backup file %s." @@ -879,101 +879,101 @@ msgid "Non standard key size, manual repair required." msgstr "Нестандартный размер ключа, требуется исправление вручную." -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "Нестандартное выравнивание слотов ключей, требуется исправление вручную." -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "Исправление слотов ключей." -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Слот ключа %i: исправлено смещение (%u -> %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Слот ключа %i: исправлены полосы (%u -> %u)." -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Слот ключа %i: фиктивная подпись раздела." -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Слот ключа %i: соль затёрта." -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "Запись заголовка LUKS на диск." -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "Ошибка при исправлении." -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "Запрошенный хэш LUKS %s не поддерживается." -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1145 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1188 msgid "No known problems detected for LUKS header." msgstr "Известных неполадок в заголовке LUKS не обнаружено." -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Ошибка при обновлении заголовка LUKS на устройстве %s." -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Ошибка при повторном считывании заголовка LUKS после обновления на устройстве %s." -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "Смещение данных заголовка LUKS должно быть равно 0 или быть больше размера заголовка." -#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825 -#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1009 -#: src/cryptsetup.c:2796 +#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832 +#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2864 msgid "Wrong LUKS UUID format provided." msgstr "Указан неправильный формат LUKS UUID." -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "Невозможно создать заголовок LUKS: ошибка при чтении случайной соли." -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "Невозможно создать заголовок LUKS: ошибка подсчёта дайджеста заголовка (используйте хэш %s)." -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "Активен слот ключа %d, сначала нужна вычистка." -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "Данный слота ключа %d содержат несколько полос. Подделка заголовка?" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "Невозможно открыть слот ключа (используется хэш %s)." -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "Некорректный слот ключа %d, значение слота ключа должно быть между 0 и %d." -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "Невозможно затереть устройство %s." @@ -1009,11 +1009,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "Алгоритм хэширования PBKDF2 %s недоступен, пропускается." -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1022 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059 msgid "Required kernel crypto interface not available." msgstr "Требуемый интерфейс ядра crypto недоступен." -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1024 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Убедитесь, что загружен ядерный модуль algif_skcipher." @@ -1039,146 +1039,160 @@ msgid "This function is not supported without TCRYPT header load." msgstr "эта функция не поддерживается без загрузки заголовка TCRYPT." -#: 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 "При анализе поддерживаемого главного ключа тома обнаружен неожиданный тип элемента метаданных «%u»." -#: 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 "При анализе поддерживаемого главного ключа тома обнаружена неожиданная строка («%s»)." -#: 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 "При анализе поддерживаемого главного ключа тома обнаружено неожиданное значение элемента метаданных «%u»." -#: lib/bitlk/bitlk.c:479 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "Ошибка чтения подписи BITLK из %s." -#: lib/bitlk/bitlk.c:485 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Некорректная или неизвестная подпись устройства BITLK." + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "BITLK версии 1 пока не поддерживается." -#: lib/bitlk/bitlk.c:491 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "Некорректная или неизвестная подпись загрузчика устройства BITLK." -#: lib/bitlk/bitlk.c:503 -msgid "Invalid or unknown signature for BITLK device." -msgstr "Некорректная или неизвестная подпись устройства BITLK." - -#: lib/bitlk/bitlk.c:515 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "Неподдерживаемый размер сектора %." -#: lib/bitlk/bitlk.c:523 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "Ошибка чтения заголовка BITLK из %s." -#: lib/bitlk/bitlk.c:548 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "Ошибка чтения метаданных BITLK FVE из %s." -#: lib/bitlk/bitlk.c:599 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "Неизвестный или неподдерживаемый тип шифрования." -#: lib/bitlk/bitlk.c:632 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "Ошибка чтения элементов метаданных BITLK из %s." -#: lib/bitlk/bitlk.c:926 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "При анализе внешнего ключа обнаружен неожиданный тип элемента метаданных «%u»." + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "При анализе внешнего ключа обнаружено неожиданное значение элемента метаданных «%u»." + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "При анализе ключа запуска обнаружен неожиданный элемент метаданных." + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "Эта операция не поддерживается." -#: lib/bitlk/bitlk.c:934 +#: lib/bitlk/bitlk.c:1079 msgid "Unexpected key data size." msgstr "Неожиданный размер ключа данных." -#: lib/bitlk/bitlk.c:988 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "Данное устройство BITLK находится в неподдерживаемом состоянии и не может быть включено." -#: lib/bitlk/bitlk.c:994 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "Устройства BITLK с типом «%s» не могут быть включены." -#: lib/bitlk/bitlk.c:1076 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "Активация частично расширенного устройства BITLK не поддерживается." -#: lib/bitlk/bitlk.c:1212 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "Невозможно активировать устройство, в ядерном dm-crypt отсутствует поддержка BITLK IV." -#: lib/bitlk/bitlk.c:1216 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "Невозможно активировать устройство, в ядерном dm-crypt отсутствует поддержка BITLK Elephant diffuser." -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "Устройство verity %s не использует заголовок на диске." -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "Устройство %s не является корректным устройством VERITY." -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "Неподдерживаемая версия VERITY %d." -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "Повреждён заголовок VERITY." -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "Указан неправильный формат VERITY UUID на устройстве %s." -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "Ошибка при обновлении заголовка verity на устройстве %s." -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "Проверка подписи корневого хэша не поддерживается." -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "Невозможно исправить ошибки с устройством FEC." -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "Найдено %u исправимых ошибок с устройством FEC." -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "Ядро не поддерживает отображение dm-verity." -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "Ядро не поддерживает параметр подписи dm-verity." -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "После активации обнаружено повреждение устройства verity." @@ -1187,41 +1201,37 @@ msgid "Spare area is not zeroed at position %." msgstr "Резервная область не заполнена нулями по адресу %." -#: 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 msgid "Device offset overflow." msgstr "Переполнение смещения устройства." -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "Ошибка при проверке по адресу %." -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "Неправильный размер параметров для устройства verity." - -#: 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 msgid "Verification of data area failed." msgstr "Ошибка при сверке области данных." -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "Ошибка при сверке корневого хэша." -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "Ошибка ввода-вывода при создании области хэша." -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "Ошибка при создании области хэша." -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "ПРЕДУПРЕЖДЕНИЕ: ядро не сможет активировать устройство, если размер блока данных превышает размер страницы (%u)." @@ -1230,51 +1240,59 @@ msgid "Failed to allocate RS context." msgstr "Ошибка при выделении контекста RS." -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "Ошибка при выделении буфера." -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Не удалось прочитать блок RS %, байт %d." -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "Не удалось прочитать чётность для блока RS %." -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "Не удалось исправить чётность для блока %." -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "Не удалось записать чётность для блока RS %." -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "Для FEC размеры блока должны совпадать." -#: 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 "Неправильная длина сегмента FEC." + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "Не удалось определить размер устройства %s." -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355 msgid "Kernel does not support dm-integrity mapping." msgstr "Ядро не поддерживает отображение dm-integrity." -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "Ядро не поддерживает выравнивание фиксированных метаданных dm-integrity." +#: 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:967 #: lib/luks2/luks2_json_metadata.c:1252 #, c-format @@ -1297,7 +1315,7 @@ msgid "Requested data offset is too small." msgstr "Запрошенное смещение данных слишком мало." -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: очень маленькая область слотов ключа (% байт), количество доступных слотов ключа LUKS2 очень ограничено.\n" @@ -1382,7 +1400,7 @@ msgid "Reencryption in-progress. Cannot deactivate device." msgstr "Выполняется перешифрование. Невозможно деактивировать устройство." -#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3206 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "Не удалось заменить приостановленное устройство %s на цель dm-error." @@ -1491,7 +1509,7 @@ #: 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:3046 msgid "Failed to initialize old segment storage wrapper." msgstr "Ошибка при инициализации старой сегментной обёртки хранилища." @@ -1503,7 +1521,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "Ошибка чтения контрольных сумм текущей hotzone." -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3054 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "Не удалось прочитать область hotzone начиная с %." @@ -1546,209 +1564,209 @@ msgid "Failed to set new keyslots area size." msgstr "Ошибка при задании нового размера области слотов ключей." -#: lib/luks2/luks2_reencrypt.c:2318 +#: lib/luks2/luks2_reencrypt.c:2320 #, c-format msgid "Data shift is not aligned to requested encryption sector size (% bytes)." msgstr "Сдвиг данные не выровнен к запрошенному размеру сектора шифрования (% байт)." -#: lib/luks2/luks2_reencrypt.c:2339 +#: lib/luks2/luks2_reencrypt.c:2341 #, c-format msgid "Data device is not aligned to requested encryption sector size (% bytes)." msgstr "Устройство данных не выровнено к запрошенному размеру сектора шифрования (% байт)." -#: lib/luks2/luks2_reencrypt.c:2360 +#: lib/luks2/luks2_reencrypt.c:2362 #, c-format msgid "Data shift (% sectors) is less than future data offset (% 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:2368 lib/luks2/luks2_reencrypt.c:2795 +#: lib/luks2/luks2_reencrypt.c:2816 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "Ошибка при открытии %s в монопольном режиме (уже отображено или примонтировано)." -#: lib/luks2/luks2_reencrypt.c:2534 +#: lib/luks2/luks2_reencrypt.c:2536 msgid "Device not marked for LUKS2 reencryption." msgstr "Устройство не отмечено для перешифрования LUKS2." -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2542 lib/luks2/luks2_reencrypt.c:3311 msgid "Failed to load LUKS2 reencryption context." msgstr "Ошибка при загрузке контекста перешифрования LUKS2." -#: lib/luks2/luks2_reencrypt.c:2619 +#: lib/luks2/luks2_reencrypt.c:2621 msgid "Failed to get reencryption state." msgstr "Ошибка при получении состояния перешифрования." -#: lib/luks2/luks2_reencrypt.c:2623 +#: lib/luks2/luks2_reencrypt.c:2625 msgid "Device is not in reencryption." msgstr "Устройство не перешифровывается." -#: lib/luks2/luks2_reencrypt.c:2630 +#: lib/luks2/luks2_reencrypt.c:2632 msgid "Reencryption process is already running." msgstr "Процесс перешифрования уже запущен." -#: lib/luks2/luks2_reencrypt.c:2632 +#: lib/luks2/luks2_reencrypt.c:2634 msgid "Failed to acquire reencryption lock." msgstr "Ошибка при захвате блокировки перешифрования." -#: lib/luks2/luks2_reencrypt.c:2650 +#: lib/luks2/luks2_reencrypt.c:2652 msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "Невозможно продолжить с перешифрованием. Сначала запустите восстановление перешифрования." -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2766 msgid "Active device size and requested reencryption size don't match." msgstr "Активный размер устройства и запрошенный размер перешифрования не совпадают." -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2780 msgid "Illegal device size requested in reencryption parameters." msgstr "В параметрах перешифрования запрошен некорректный размер устройства." -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "Выполняется перешифрование. Восстановление выполнить невозможно." -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2922 msgid "LUKS2 reencryption already initialized in metadata." msgstr "Перешифрование LUKS2 уже инициализировано в метаданных." -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2929 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "Не удалось инициализировать перешифрование LUKS2 в метаданных." -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3020 msgid "Failed to set device segments for next reencryption hotzone." msgstr "Ошибка при назначении сегментов устройства для следующей hotzone перешифрования." -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3062 msgid "Failed to write reencryption resilience metadata." msgstr "Ошибка при записи метаданных устойчивости перешифрования." -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3069 msgid "Decryption failed." msgstr "Не удалось расшифровать." -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3074 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "Не удалось записать область hotzone начиная с %." -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3079 msgid "Failed to sync data." msgstr "Ошибка синхронизации данных." -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3087 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "Ошибка при обновлении метаданных после завершения текущей hotzone перешифрования." -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3154 msgid "Failed to write LUKS2 metadata." msgstr "Ошибка при записи метаданных LUKS2." -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3177 msgid "Failed to wipe backup segment data." msgstr "Ошибка при затирании резервной копии сегмента данных." -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3190 msgid "Failed to disable reencryption requirement flag." msgstr "Не удалось выключить флаг требования перешифрования." -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3198 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "Критическая ошибка при перешифровании куска начиная с %, длиной в % секторов." -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3207 msgid "Do not resume the device unless replaced with error target manually." msgstr "Устройство не возобновит работу пока не будет заменено вручную с целью error." -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3256 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "Невозможно продолжить с перешифрованием. Неожиданное состояние перешифрования." -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3262 msgid "Missing or invalid reencrypt context." msgstr "Контекст перешифрования отсутствует или неверен." -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3269 msgid "Failed to initialize reencryption device stack." msgstr "Ошибка при инициализации стека устройства перешифрования." -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3288 lib/luks2/luks2_reencrypt.c:3324 msgid "Failed to update reencryption context." msgstr "Ошибка при обновлении контекста перешифрования." -#: lib/luks2/luks2_token.c:262 +#: lib/luks2/luks2_token.c:263 msgid "No free token slot." msgstr "Нет свободного слота под токен." -#: lib/luks2/luks2_token.c:269 +#: lib/luks2/luks2_token.c:270 #, c-format msgid "Failed to create builtin token %s." msgstr "Ошибка при создании встроенного токена %s." -#: src/cryptsetup.c:166 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "Невозможно проверить парольную фразу не с входных tty." -#: src/cryptsetup.c:229 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Параметры шифрования слота ключа могут задаваться только для устройства LUKS2." -#: src/cryptsetup.c:259 src/cryptsetup.c:971 src/cryptsetup.c:1281 -#: src/cryptsetup.c:3157 src/cryptsetup_reencrypt.c:723 -#: src/cryptsetup_reencrypt.c:793 +#: src/cryptsetup.c:291 src/cryptsetup.c:1006 src/cryptsetup.c:1339 +#: src/cryptsetup.c:3245 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "Обнаружено указание неизвестного шаблона шифра." -#: src/cryptsetup.c:267 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: параметр --hash игнорируется в режиме plain с указанным файлом ключа.\n" -#: src/cryptsetup.c:275 +#: 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 "ПРЕДУПРЕЖДЕНИЕ: параметр --keyfile-size игнорируется, размер для чтения приравнивается размеру ключа шифрования.\n" -#: src/cryptsetup.c:315 +#: src/cryptsetup.c:347 #, c-format msgid "Detected device signature(s) on %s. Proceeding further may damage existing data." msgstr "Обнаружены подпись(и) устройства на %s. Продолжение работы может повредить существующие данные." -#: src/cryptsetup.c:321 src/cryptsetup.c:1102 src/cryptsetup.c:1154 -#: src/cryptsetup.c:1258 src/cryptsetup.c:1331 src/cryptsetup.c:1986 -#: src/cryptsetup.c:2694 src/cryptsetup.c:2817 src/integritysetup.c:233 +#: src/cryptsetup.c:353 src/cryptsetup.c:1145 src/cryptsetup.c:1197 +#: src/cryptsetup.c:1316 src/cryptsetup.c:1389 src/cryptsetup.c:2036 +#: src/cryptsetup.c:2762 src/cryptsetup.c:2886 src/integritysetup.c:242 msgid "Operation aborted.\n" msgstr "Операция прервана.\n" -#: src/cryptsetup.c:389 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "Параметр --key-file является обязательным." -#: src/cryptsetup.c:442 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "Введите VeraCrypt PIM: " -#: src/cryptsetup.c:451 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "Недопустимое значение PIM: ошибка при разборе." -#: src/cryptsetup.c:454 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "Недопустимое значение PIM: 0." -#: src/cryptsetup.c:457 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "Недопустимое значение PIM: вышло за границы диапазона." -#: src/cryptsetup.c:480 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "С этой парольной фразой заголовка устройства не обнаружено." -#: src/cryptsetup.c:549 +#: src/cryptsetup.c:582 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "Устройство %s не является корректным устройством BITLK." -#: src/cryptsetup.c:584 +#: src/cryptsetup.c:617 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1758,70 +1776,70 @@ "обеспечивающей доступ к зашифрованному разделу без парольной фразы.\n" "Этот дамп следует всегда хранить зашифрованным в надёжном месте." -#: src/cryptsetup.c:681 +#: src/cryptsetup.c:714 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "Устройство %s всё ещё активно и запланировано к отложенному удалению.\n" -#: src/cryptsetup.c:709 +#: src/cryptsetup.c:742 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "Для изменения размера активного устройства требуется ключ тома в связке ключей, но указан параметр --disable-keyring." -#: src/cryptsetup.c:850 +#: src/cryptsetup.c:885 msgid "Benchmark interrupted." msgstr "Оценка производительности прервана." -#: src/cryptsetup.c:871 +#: src/cryptsetup.c:906 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s Н/Д\n" -#: src/cryptsetup.c:873 +#: src/cryptsetup.c:908 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u итераций в секунду для %zu-битного ключа\n" -#: src/cryptsetup.c:887 +#: src/cryptsetup.c:922 #, c-format msgid "%-10s N/A\n" msgstr "%-10s Н/Д\n" -#: src/cryptsetup.c:889 +#: 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 "%-10s %4u итераций, %5u памяти, %1u параллельных нитей (ЦП) для %zu-битного ключа (запрашивался %u мс)\n" -#: src/cryptsetup.c:913 +#: src/cryptsetup.c:948 msgid "Result of benchmark is not reliable." msgstr "Результат оценки производительности ненадёжен." -#: src/cryptsetup.c:963 +#: src/cryptsetup.c:998 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Тесты, использующие практически только память (без ввода-вывода на хранилище).\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:983 +#: src/cryptsetup.c:1018 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*s Алгоритм | Ключ | Шифрование | Расшифровка\n" -#: src/cryptsetup.c:987 +#: src/cryptsetup.c:1022 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "Шифр %s (%i-битный ключ) недоступен." #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:1006 +#: src/cryptsetup.c:1041 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "" "# Algorithm | Key | Encryption | Decryption\n" "# Алгоритм | Ключ | Шифрование | Расшифровка\n" -#: src/cryptsetup.c:1015 +#: src/cryptsetup.c:1052 msgid "N/A" msgstr "Н/Д" -#: src/cryptsetup.c:1095 +#: src/cryptsetup.c:1138 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1829,19 +1847,19 @@ "Кажется, что устройству не требуется восстановление перешифрования.\n" "Продолжить?" -#: src/cryptsetup.c:1101 +#: src/cryptsetup.c:1144 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "Действительно продолжить восстановление перешифрования LUKS2?" -#: src/cryptsetup.c:1110 +#: src/cryptsetup.c:1153 msgid "Enter passphrase for reencryption recovery: " msgstr "Введите пароль для восстановления перешифрования: " -#: src/cryptsetup.c:1153 +#: src/cryptsetup.c:1196 msgid "Really try to repair LUKS device header?" msgstr "Действительно попробовать восстановить заголовок устройства LUKS?" -#: src/cryptsetup.c:1172 src/integritysetup.c:146 +#: src/cryptsetup.c:1215 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" @@ -1849,104 +1867,108 @@ "Затирается устройство для инициализации целостности контрольной суммы.\n" "Вы можете прервать процесс нажав CTRL+c (остаток незатёртого устройства будет содержать некорректную контрольную сумму).\n" -#: src/cryptsetup.c:1194 src/integritysetup.c:168 +#: src/cryptsetup.c:1237 src/integritysetup.c:179 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "Невозможно деактивировать временное устройство %s." -#: src/cryptsetup.c:1243 +#: src/cryptsetup.c:1301 msgid "Integrity option can be used only for LUKS2 format." msgstr "Параметр целостности можно использовать только в формате LUKS2." -#: src/cryptsetup.c:1248 src/cryptsetup.c:1308 +#: src/cryptsetup.c:1306 src/cryptsetup.c:1366 msgid "Unsupported LUKS2 metadata size options." msgstr "Неподдерживаемый размер параметров метаданных LUKS2." -#: src/cryptsetup.c:1265 +#: src/cryptsetup.c:1315 +msgid "Header file does not exist, do you want to create it?" +msgstr "Файл заголовка не существует, создать?" + +#: src/cryptsetup.c:1323 #, c-format msgid "Cannot create header file %s." msgstr "Невозможно создать файл заголовка %s." -#: src/cryptsetup.c:1288 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:1346 src/integritysetup.c:205 src/integritysetup.c:213 +#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303 +#: src/integritysetup.c:313 msgid "No known integrity specification pattern detected." msgstr "Обнаружено указание неизвестного шаблона целостности." -#: src/cryptsetup.c:1301 +#: src/cryptsetup.c:1359 #, c-format msgid "Cannot use %s as on-disk header." msgstr "Невозможно использовать %s в качестве заголовка для диска." -#: src/cryptsetup.c:1325 src/integritysetup.c:227 +#: src/cryptsetup.c:1383 src/integritysetup.c:236 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "Данные на %s будут перезаписаны без возможности восстановления." -#: src/cryptsetup.c:1366 src/cryptsetup.c:1700 src/cryptsetup.c:1767 -#: src/cryptsetup.c:1869 src/cryptsetup.c:1935 src/cryptsetup_reencrypt.c:553 +#: src/cryptsetup.c:1416 src/cryptsetup.c:1750 src/cryptsetup.c:1817 +#: src/cryptsetup.c:1919 src/cryptsetup.c:1985 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "Ошибка при задании параметров pbkdf." -#: src/cryptsetup.c:1451 +#: src/cryptsetup.c:1501 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "Сокращение смещения данных допускается только для отсоединённого заголовка LUKS." -#: src/cryptsetup.c:1462 src/cryptsetup.c:1773 +#: src/cryptsetup.c:1512 src/cryptsetup.c:1823 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "Невозможно определить размер ключа тома LUKS без слотов ключа, укажите параметр --key-size." -#: src/cryptsetup.c:1500 +#: src/cryptsetup.c:1550 msgid "Device activated but cannot make flags persistent." msgstr "Устройство активировано, но нельзя сделать флаги постоянными." -#: src/cryptsetup.c:1581 src/cryptsetup.c:1651 +#: src/cryptsetup.c:1631 src/cryptsetup.c:1701 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "Для удаления выбран слот ключа %d." -#: src/cryptsetup.c:1593 src/cryptsetup.c:1654 +#: src/cryptsetup.c:1643 src/cryptsetup.c:1704 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "Это последний слот ключа. Устройство станет неработоспособным после вычистки этого ключа." -#: src/cryptsetup.c:1594 +#: src/cryptsetup.c:1644 msgid "Enter any remaining passphrase: " msgstr "Введите любую оставшуюся парольную фразу: " -#: src/cryptsetup.c:1595 src/cryptsetup.c:1656 +#: src/cryptsetup.c:1645 src/cryptsetup.c:1706 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Операция прервана, слот ключа НЕ затёрт.\n" -#: src/cryptsetup.c:1633 +#: src/cryptsetup.c:1683 msgid "Enter passphrase to be deleted: " msgstr "Введите удаляемую парольную фразу: " -#: src/cryptsetup.c:1714 src/cryptsetup.c:1788 src/cryptsetup.c:1822 +#: src/cryptsetup.c:1764 src/cryptsetup.c:1838 src/cryptsetup.c:1872 msgid "Enter new passphrase for key slot: " msgstr "Введите новую парольную фразу для слота ключа: " -#: src/cryptsetup.c:1805 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1855 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "Введите любую существующую парольную фразу: " -#: src/cryptsetup.c:1873 +#: src/cryptsetup.c:1923 msgid "Enter passphrase to be changed: " msgstr "Введите изменяемую парольную фразу: " -#: src/cryptsetup.c:1889 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1939 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "Введите новую парольную фразу: " -#: src/cryptsetup.c:1939 +#: src/cryptsetup.c:1989 msgid "Enter passphrase for keyslot to be converted: " msgstr "Введите парольную фразу для преобразуемого слота ключа: " -#: src/cryptsetup.c:1963 +#: src/cryptsetup.c:2013 msgid "Only one device argument for isLuks operation is supported." msgstr "Только одно устройство можно указать для операции isLuks." -#: src/cryptsetup.c:2013 +#: src/cryptsetup.c:2063 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -1956,12 +1978,12 @@ "обеспечивающей доступ к зашифрованному разделу без парольной фразы.\n" "Этот дамп нужно хранить зашифрованным в надёжном месте." -#: src/cryptsetup.c:2078 +#: src/cryptsetup.c:2128 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "Слот ключа %d не содержит непривязанного ключа." -#: src/cryptsetup.c:2084 +#: src/cryptsetup.c:2134 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -1970,30 +1992,40 @@ "обеспечивающей доступ к зашифрованному разделу без парольной фразы.\n" "Этот дамп нужно хранить зашифрованным в надёжном месте." -#: src/cryptsetup.c:2219 src/cryptsetup.c:2240 +#: src/cryptsetup.c:2223 src/cryptsetup.c:2252 +#, c-format +msgid "%s is not active %s device name." +msgstr "%s не является именем активного устройства %s." + +#: src/cryptsetup.c:2247 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "%s не является именем активного устройства LUKS или отсутствует заголовок." + +#: src/cryptsetup.c:2285 src/cryptsetup.c:2306 msgid "Option --header-backup-file is required." msgstr "Параметр --header-backup-file является обязательным." -#: src/cryptsetup.c:2270 +#: src/cryptsetup.c:2336 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s не является управляемым устройством cryptsetup." -#: src/cryptsetup.c:2281 +#: src/cryptsetup.c:2347 #, c-format msgid "Refresh is not supported for device type %s" msgstr "Обновление не поддерживается для устройств типа %s" -#: src/cryptsetup.c:2323 +#: src/cryptsetup.c:2389 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Нераспознанный тип метаданных устройства %s." -#: src/cryptsetup.c:2326 +#: src/cryptsetup.c:2392 msgid "Command requires device and mapped name as arguments." msgstr "Для команды требуется задать устройство и имя отображения." -#: src/cryptsetup.c:2348 +#: src/cryptsetup.c:2414 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -2002,95 +2034,95 @@ "Эта операция сотрёт все слоты ключей на устройстве %s.\n" "Устройство станет неработоспособным после этой операции." -#: src/cryptsetup.c:2355 +#: src/cryptsetup.c:2421 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Операция прервана, слоты ключа НЕ затёрты.\n" -#: src/cryptsetup.c:2392 +#: src/cryptsetup.c:2460 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Некорректный тип LUKS, поддерживаются только luks1 и luks2." -#: src/cryptsetup.c:2410 +#: src/cryptsetup.c:2478 #, c-format msgid "Device is already %s type." msgstr "Устройство уже имеет тип %s." -#: src/cryptsetup.c:2415 +#: src/cryptsetup.c:2483 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Данная операция преобразует формат %s в %s.\n" -#: src/cryptsetup.c:2421 +#: src/cryptsetup.c:2489 msgid "Operation aborted, device was NOT converted.\n" msgstr "Операция прервана, устройство НЕ преобразовано.\n" -#: src/cryptsetup.c:2461 +#: src/cryptsetup.c:2529 msgid "Option --priority, --label or --subsystem is missing." msgstr "Отсутствует параметр --priority, --label или --subsystem." -#: src/cryptsetup.c:2495 src/cryptsetup.c:2528 src/cryptsetup.c:2551 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2596 src/cryptsetup.c:2619 #, c-format msgid "Token %d is invalid." msgstr "Некорректный токен %d." -#: src/cryptsetup.c:2498 src/cryptsetup.c:2554 +#: src/cryptsetup.c:2566 src/cryptsetup.c:2622 #, c-format msgid "Token %d in use." msgstr "Используется токен %d." -#: src/cryptsetup.c:2505 +#: src/cryptsetup.c:2573 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "Ошибка при добавлении токена luks2-keyring %d." -#: src/cryptsetup.c:2514 src/cryptsetup.c:2576 +#: src/cryptsetup.c:2582 src/cryptsetup.c:2644 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "Ошибка при назначении токена %d слоту ключа %d." -#: src/cryptsetup.c:2531 +#: src/cryptsetup.c:2599 #, c-format msgid "Token %d is not in use." msgstr "Токен %d не используется." -#: src/cryptsetup.c:2566 +#: src/cryptsetup.c:2634 msgid "Failed to import token from file." msgstr "Ошибка при импорте токена из файла." -#: src/cryptsetup.c:2591 +#: src/cryptsetup.c:2659 #, c-format msgid "Failed to get token %d for export." msgstr "Ошибка при получении токена %d для экспорта." -#: src/cryptsetup.c:2606 +#: src/cryptsetup.c:2674 msgid "--key-description parameter is mandatory for token add action." msgstr "Для добавления токена требуется параметр --key-description." -#: src/cryptsetup.c:2612 src/cryptsetup.c:2620 +#: src/cryptsetup.c:2680 src/cryptsetup.c:2688 msgid "Action requires specific token. Use --token-id parameter." msgstr "Для действия требуется указать токен. Используйте параметр --token-id." -#: src/cryptsetup.c:2625 +#: src/cryptsetup.c:2693 #, c-format msgid "Invalid token operation %s." msgstr "Некорректная операция с токеном %s." -#: src/cryptsetup.c:2680 +#: src/cryptsetup.c:2748 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "Автоматически обнаруженное активное устройство dm «%s» для устройства данных %s.\n" -#: src/cryptsetup.c:2684 +#: src/cryptsetup.c:2752 #, c-format msgid "Device %s is not a block device.\n" msgstr "Устройство %s не является блочным.\n" -#: src/cryptsetup.c:2686 +#: src/cryptsetup.c:2754 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "Не удалось автоматически обнаружить держателей устройства %s." -#: src/cryptsetup.c:2688 +#: src/cryptsetup.c:2756 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2103,233 +2135,242 @@ "Это может привести к потере данных, если устройство всё же активно.\n" "Для запуска перешифрования в оперативном режиме укажите параметр --active-name.\n" -#: src/cryptsetup.c:2768 +#: src/cryptsetup.c:2836 msgid "Invalid LUKS device type." msgstr "Неверный тип устройства LUKS." -#: src/cryptsetup.c:2773 +#: src/cryptsetup.c:2841 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." msgstr "Шифрование без отсоединённого заголовка (--header) невозможно без сокращения размера устройства данных (--reduce-device-size)." -#: src/cryptsetup.c:2778 +#: src/cryptsetup.c:2846 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "Запрошенное смещение данных должно быть меньше или равно половине значения параметра --reduce-device-size." -#: src/cryptsetup.c:2787 +#: src/cryptsetup.c:2855 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "Подгоняется значение --reduce-device-size под двукратный размер --offset % (секторов).\n" -#: src/cryptsetup.c:2791 +#: src/cryptsetup.c:2859 msgid "Encryption is supported only for LUKS2 format." msgstr "Шифрование поддерживается только для формата LUKS2." -#: src/cryptsetup.c:2813 +#: src/cryptsetup.c:2882 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "На %s обнаружено устройство LUKS. Хотите снова зашифровать это устройство LUKS?" -#: src/cryptsetup.c:2828 +#: src/cryptsetup.c:2900 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "Временный файл заголовка %s уже существует. Прекращение работы." -#: src/cryptsetup.c:2830 src/cryptsetup.c:2837 +#: src/cryptsetup.c:2902 src/cryptsetup.c:2909 #, c-format msgid "Cannot create temporary header file %s." msgstr "Невозможно создать временный файл заголовка %s." -#: src/cryptsetup.c:2901 +#: src/cryptsetup.c:2976 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "%s/%s теперь активен и готов для оперативного шифрования.\n" -#: src/cryptsetup.c:3065 src/cryptsetup.c:3071 +#: src/cryptsetup.c:3013 +msgid "LUKS2 decryption is supported with detached header device only." +msgstr "Расшифровка LUKS2 поддерживается только для устройства с отсоединённым заголовком." + +#: src/cryptsetup.c:3146 src/cryptsetup.c:3152 msgid "Not enough free keyslots for reencryption." msgstr "Для шифрования недостаточно свободных слотов ключей." -#: src/cryptsetup.c:3091 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3172 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "Файл ключа можно использовать только с --key-slot или только при одном активном слоте." -#: src/cryptsetup.c:3100 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3181 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "Введите парольную фразу для слота ключа %d: " -#: src/cryptsetup.c:3108 +#: src/cryptsetup.c:3190 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "Введите парольную фразу для слота ключа %u: " -#: src/cryptsetup.c:3283 +#: src/cryptsetup.c:3236 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "Переходим на алгоритм шифрования данных %s.\n" + +#: src/cryptsetup.c:3369 msgid "Command requires device as argument." msgstr "Для команды требуется в аргументе указать устройство." -#: src/cryptsetup.c:3305 +#: src/cryptsetup.c:3391 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "В настоящий момент поддерживается только формат LUKS2. Для LUKS1 используйте программу cryptsetup-reencrypt." -#: src/cryptsetup.c:3317 +#: src/cryptsetup.c:3403 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "Уже выполняется устаревшее внесистемное (offline) перешифрование. Используйте программу cryptsetup-reencrypt." -#: src/cryptsetup.c:3327 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3413 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "Перешифрование устройства с профилем целостности не поддерживается." -#: src/cryptsetup.c:3335 +#: src/cryptsetup.c:3421 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "Перешифрование LUKS2 уже инициализировано. Прекращение работы." -#: src/cryptsetup.c:3339 +#: src/cryptsetup.c:3425 msgid "LUKS2 device is not in reencryption." msgstr "Устройство LUKS2 не перешифровывается." -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3452 msgid " [--type ] []" msgstr "<устройство> [--type <тип>] [<имя>]" -#: src/cryptsetup.c:3366 src/veritysetup.c:399 src/integritysetup.c:480 +#: src/cryptsetup.c:3452 src/veritysetup.c:408 src/integritysetup.c:493 msgid "open device as " msgstr "открыть устройство как <имя>" -#: src/cryptsetup.c:3367 src/cryptsetup.c:3368 src/cryptsetup.c:3369 -#: src/veritysetup.c:400 src/veritysetup.c:401 src/integritysetup.c:481 -#: src/integritysetup.c:482 +#: src/cryptsetup.c:3453 src/cryptsetup.c:3454 src/cryptsetup.c:3455 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494 +#: src/integritysetup.c:495 msgid "" msgstr "<имя>" -#: src/cryptsetup.c:3367 src/veritysetup.c:400 src/integritysetup.c:481 +#: src/cryptsetup.c:3453 src/veritysetup.c:409 src/integritysetup.c:494 msgid "close device (remove mapping)" msgstr "закрыть устройство (удалить отображение)" -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3454 msgid "resize active device" msgstr "изменить размер активного устройства" -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3455 msgid "show device status" msgstr "показать состояние устройства" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "[--cipher ]" msgstr "[--cipher <шифр>]" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "benchmark cipher" msgstr "оценка производительности шифра" -#: src/cryptsetup.c:3371 src/cryptsetup.c:3372 src/cryptsetup.c:3373 -#: src/cryptsetup.c:3374 src/cryptsetup.c:3375 src/cryptsetup.c:3382 -#: src/cryptsetup.c:3383 src/cryptsetup.c:3384 src/cryptsetup.c:3385 -#: src/cryptsetup.c:3386 src/cryptsetup.c:3387 src/cryptsetup.c:3388 -#: src/cryptsetup.c:3389 src/cryptsetup.c:3390 +#: src/cryptsetup.c:3457 src/cryptsetup.c:3458 src/cryptsetup.c:3459 +#: src/cryptsetup.c:3460 src/cryptsetup.c:3461 src/cryptsetup.c:3468 +#: src/cryptsetup.c:3469 src/cryptsetup.c:3470 src/cryptsetup.c:3471 +#: src/cryptsetup.c:3472 src/cryptsetup.c:3473 src/cryptsetup.c:3474 +#: src/cryptsetup.c:3475 src/cryptsetup.c:3476 msgid "" msgstr "<устройство>" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3457 msgid "try to repair on-disk metadata" msgstr "попытаться исправить метаданные на диске" -#: src/cryptsetup.c:3372 +#: src/cryptsetup.c:3458 msgid "reencrypt LUKS2 device" msgstr "перешифровать устройство LUKS2" -#: src/cryptsetup.c:3373 +#: src/cryptsetup.c:3459 msgid "erase all keyslots (remove encryption key)" msgstr "стереть все слоты ключей (удалить ключ шифрования)" -#: src/cryptsetup.c:3374 +#: src/cryptsetup.c:3460 msgid "convert LUKS from/to LUKS2 format" msgstr "преобразовать LUKS из/в формат LUKS2" -#: src/cryptsetup.c:3375 +#: src/cryptsetup.c:3461 msgid "set permanent configuration options for LUKS2" msgstr "задать постоянные параметры настройки LUKS2" -#: src/cryptsetup.c:3376 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3462 src/cryptsetup.c:3463 msgid " []" msgstr "<устройство> [<новый файл ключа>]" -#: src/cryptsetup.c:3376 +#: src/cryptsetup.c:3462 msgid "formats a LUKS device" msgstr "форматировать устройство LUKS" -#: src/cryptsetup.c:3377 +#: src/cryptsetup.c:3463 msgid "add key to LUKS device" msgstr "добавить ключ к устройству LUKS" -#: src/cryptsetup.c:3378 src/cryptsetup.c:3379 src/cryptsetup.c:3380 +#: src/cryptsetup.c:3464 src/cryptsetup.c:3465 src/cryptsetup.c:3466 msgid " []" msgstr "<устройство> [<файл ключа>]" -#: src/cryptsetup.c:3378 +#: src/cryptsetup.c:3464 msgid "removes supplied key or key file from LUKS device" msgstr "удалить заданный ключ или файл ключа с устройства LUKS" -#: src/cryptsetup.c:3379 +#: src/cryptsetup.c:3465 msgid "changes supplied key or key file of LUKS device" msgstr "изменить заданный ключ или файл ключа устройства LUKS" -#: src/cryptsetup.c:3380 +#: src/cryptsetup.c:3466 msgid "converts a key to new pbkdf parameters" msgstr "преобразовать ключ в новые параметры pbkdf" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid " " msgstr "<устройство> <слот ключа>" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid "wipes key with number from LUKS device" msgstr "затереть ключ с номером <слот ключа> с устройства LUKS" -#: src/cryptsetup.c:3382 +#: src/cryptsetup.c:3468 msgid "print UUID of LUKS device" msgstr "напечатать UUID устройства LUKS" -#: src/cryptsetup.c:3383 +#: src/cryptsetup.c:3469 msgid "tests for LUKS partition header" msgstr "проверить <устройство> на наличие заголовка раздела LUKS" -#: src/cryptsetup.c:3384 +#: src/cryptsetup.c:3470 msgid "dump LUKS partition information" msgstr "выгрузить в дамп информацию о разделе LUKS" -#: src/cryptsetup.c:3385 +#: src/cryptsetup.c:3471 msgid "dump TCRYPT device information" msgstr "выгрузить в дамп информацию об устройстве TCRYPT" -#: src/cryptsetup.c:3386 +#: src/cryptsetup.c:3472 msgid "dump BITLK device information" msgstr "выгрузить в дамп информацию об устройстве BITLK" -#: src/cryptsetup.c:3387 +#: src/cryptsetup.c:3473 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "Приостановить устройство LUKS и затереть ключ (заморозка операций ввода-вывода)" -#: src/cryptsetup.c:3388 +#: src/cryptsetup.c:3474 msgid "Resume suspended LUKS device" msgstr "Возобновить работу приостановленного устройства LUKS" -#: src/cryptsetup.c:3389 +#: src/cryptsetup.c:3475 msgid "Backup LUKS device header and keyslots" msgstr "Сделать резервную копию заголовка и слотов ключей устройства LUKS" -#: src/cryptsetup.c:3390 +#: src/cryptsetup.c:3476 msgid "Restore LUKS device header and keyslots" msgstr "Восстановить заголовок и слоты ключей устройства LUKS" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid " " msgstr " <устройство>" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid "Manipulate LUKS2 tokens" msgstr "Управление токенами LUKS2" -#: src/cryptsetup.c:3409 src/veritysetup.c:417 src/integritysetup.c:498 +#: src/cryptsetup.c:3495 src/veritysetup.c:426 src/integritysetup.c:511 msgid "" "\n" " is one of:\n" @@ -2337,7 +2378,7 @@ "\n" "<действие> может быть:\n" -#: src/cryptsetup.c:3415 +#: src/cryptsetup.c:3501 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2349,7 +2390,7 @@ "\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3419 +#: src/cryptsetup.c:3505 #, c-format msgid "" "\n" @@ -2364,7 +2405,7 @@ "<слот ключа> - номер слота ключа LUKS для изменения\n" "<файл ключа> - необязательный файл ключа для нового ключа для действия luksAddKey\n" -#: src/cryptsetup.c:3426 +#: src/cryptsetup.c:3512 #, c-format msgid "" "\n" @@ -2373,7 +2414,7 @@ "\n" "Встроенным форматом по умолчанию для метаданных является %s (для действия luksFormat).\n" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3517 #, c-format msgid "" "\n" @@ -2390,7 +2431,7 @@ "PBKDF по умолчанию для LUKS2: %s\n" "\tВремя итерации: %d, Требуемая память: %dКБ, Кол-во параллельных нитей: %d\n" -#: src/cryptsetup.c:3442 +#: src/cryptsetup.c:3528 #, c-format msgid "" "\n" @@ -2405,451 +2446,451 @@ "\tplain: %s, Ключ: %d бит, хэширование пароля: %s\n" "\tLUKS: %s, Ключ: %d бит, хэширование заголовка LUKS: %s, RNG: %s\n" -#: src/cryptsetup.c:3451 +#: src/cryptsetup.c:3537 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: Размер ключа по умолчанию в режиме XTS (два внутренних ключа) будет удвоен.\n" -#: src/cryptsetup.c:3467 src/veritysetup.c:575 src/integritysetup.c:642 +#: src/cryptsetup.c:3555 src/veritysetup.c:587 src/integritysetup.c:665 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: требуется %s в качестве аргументов" -#: src/cryptsetup.c:3500 src/veritysetup.c:462 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3587 src/veritysetup.c:472 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "Показать это сообщение" -#: src/cryptsetup.c:3501 src/veritysetup.c:463 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3588 src/veritysetup.c:473 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "Показать краткие инструкции" -#: src/cryptsetup.c:3502 src/veritysetup.c:464 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3589 src/veritysetup.c:474 src/integritysetup.c:555 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "Показать версию пакета" -#: src/cryptsetup.c:3506 src/veritysetup.c:468 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3593 src/veritysetup.c:478 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "Параметры справки:" -#: src/cryptsetup.c:3507 src/veritysetup.c:469 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3594 src/veritysetup.c:479 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "Показывать подробные сообщения об ошибках" -#: src/cryptsetup.c:3508 src/veritysetup.c:470 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3595 src/veritysetup.c:480 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "Показывать отладочные сообщения" -#: src/cryptsetup.c:3509 +#: src/cryptsetup.c:3596 msgid "Show debug messages including JSON metadata" msgstr "Показывать отладочные сообщения включая метаданные JSON" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3597 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "Шифр, используемый для шифрования диска (смотрите /proc/crypto)" -#: src/cryptsetup.c:3511 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3598 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "Хэш, используемый для создания ключа шифрования из парольной фразы" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3599 msgid "Verifies the passphrase by asking for it twice" msgstr "Проверить правильность парольной фразы, запрашивая её дважды" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3600 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "Прочитать ключ из файла" -#: src/cryptsetup.c:3514 +#: src/cryptsetup.c:3601 msgid "Read the volume (master) key from file." msgstr "Прочитать (главный) ключ тома из файла." -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3602 msgid "Dump volume (master) key instead of keyslots info" msgstr "Создать дамп (главного) ключа, а не информации слотов ключей" -#: src/cryptsetup.c:3516 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "Размер ключа шифрования" -#: src/cryptsetup.c:3516 src/cryptsetup.c:3579 src/integritysetup.c:562 -#: src/integritysetup.c:566 src/integritysetup.c:570 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup.c:3666 src/integritysetup.c:579 +#: src/integritysetup.c:583 src/integritysetup.c:587 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "БИТ" -#: src/cryptsetup.c:3517 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3604 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "Ограничить чтение из файла ключа" -#: src/cryptsetup.c:3517 src/cryptsetup.c:3518 src/cryptsetup.c:3519 -#: src/cryptsetup.c:3520 src/cryptsetup.c:3523 src/cryptsetup.c:3576 -#: src/cryptsetup.c:3577 src/cryptsetup.c:3585 src/cryptsetup.c:3586 -#: src/veritysetup.c:473 src/veritysetup.c:474 src/veritysetup.c:475 -#: src/veritysetup.c:478 src/veritysetup.c:479 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:3604 src/cryptsetup.c:3605 src/cryptsetup.c:3606 +#: src/cryptsetup.c:3607 src/cryptsetup.c:3610 src/cryptsetup.c:3663 +#: src/cryptsetup.c:3664 src/cryptsetup.c:3672 src/cryptsetup.c:3673 +#: 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 "байт" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3605 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "Количество пропускаемых байтов в файле ключа" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3606 msgid "Limits the read from newly added keyfile" msgstr "Ограничить чтение из только что добавленного файла ключа" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3607 msgid "Number of bytes to skip in newly added keyfile" msgstr "Количество пропускаемых байтов в только что добавленном файле ключа" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3608 msgid "Slot number for new key (default is first free)" msgstr "Номер слота для нового ключа (по умолчанию первый свободный)" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3609 msgid "The size of the device" msgstr "Размер устройства" -#: src/cryptsetup.c:3522 src/cryptsetup.c:3524 src/cryptsetup.c:3525 -#: src/cryptsetup.c:3531 src/integritysetup.c:552 src/integritysetup.c:559 +#: src/cryptsetup.c:3609 src/cryptsetup.c:3611 src/cryptsetup.c:3612 +#: src/cryptsetup.c:3618 src/integritysetup.c:569 src/integritysetup.c:576 msgid "SECTORS" msgstr "СЕКТОРОВ" -#: src/cryptsetup.c:3523 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3610 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "Использовать только заданный размер устройства (игнорировать остаток устройства). ОПАСНО!" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3611 msgid "The start offset in the backend device" msgstr "Начальное смещение в нижележащем (backend) устройстве" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3612 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Сколько секторов зашифрованных данных пропускать от начала" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3613 msgid "Create a readonly mapping" msgstr "Создать отображение в режиме только для чтения" -#: src/cryptsetup.c:3527 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3614 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "Не запрашивать подтверждение" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3615 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Время ожидания при ручном вводе парольной фразы (в секундах)" -#: src/cryptsetup.c:3528 src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3615 src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "сек" -#: src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "Обновление строки хода выполнения (в секундах)" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3617 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "Как часто можно повторять попытку ввода парольной фразы" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3618 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Выравнивать полезные данные по границам секторов — для luksFormat" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3619 msgid "File with LUKS header and keyslots backup" msgstr "Файл резервной копии заголовка и слотов ключей LUKS" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3620 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "Использовать /dev/random для генерации ключа тома" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3621 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "Использовать /dev/urandom для генерации ключа тома" -#: src/cryptsetup.c:3535 +#: src/cryptsetup.c:3622 msgid "Share device with another non-overlapping crypt segment" msgstr "Совместно использовать устройство с другим неперекрывающимся шифрованным сегментом" -#: src/cryptsetup.c:3536 src/veritysetup.c:482 +#: src/cryptsetup.c:3623 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "Используемый для устройства UUID" -#: src/cryptsetup.c:3537 src/integritysetup.c:579 +#: src/cryptsetup.c:3624 src/integritysetup.c:599 msgid "Allow discards (aka TRIM) requests for device" msgstr "Разрешить отбрасывать запросы (так называемые TRIM) к устройству" -#: src/cryptsetup.c:3538 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3625 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "Устройство или файл с отдельным заголовком LUKS" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3626 msgid "Do not activate device, just check passphrase" msgstr "Не активировать устройство, только проверить парольную фразу" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3627 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Использовать скрытый заголовок (спрятанное устройство TCRYPT)" -#: src/cryptsetup.c:3541 +#: src/cryptsetup.c:3628 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "Устройство является системным диском TCRYPT (с загрузчиком)" -#: src/cryptsetup.c:3542 +#: src/cryptsetup.c:3629 msgid "Use backup (secondary) TCRYPT header" msgstr "Использовать резервный (вторичный) заголовок TCRYPT" -#: src/cryptsetup.c:3543 +#: src/cryptsetup.c:3630 msgid "Scan also for VeraCrypt compatible device" msgstr "Также искать устройство совместимое с VeraCrypt" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3631 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Персональный умножитель итерации для устройства, совместимого с VeraCrypt" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3632 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Запрос персонального умножителя итерации для устройства, совместимого с VeraCrypt" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3633 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "Тип метаданных устройства: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3634 msgid "Disable password quality check (if enabled)" msgstr "Выключить проверку качество пароля (если включена)" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3635 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Использовать параметр производительности same_cpu_crypt для dm-crypt" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3636 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Использовать параметр производительности submit_from_crypt_cpus для dm-crypt" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3637 msgid "Bypass dm-crypt workqueue and process read requests synchronously" msgstr "Пропускать dm-crypt workqueue и обрабатывать запросы чтения одновременно" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3638 msgid "Bypass dm-crypt workqueue and process write requests synchronously" msgstr "Пропускать dm-crypt workqueue и обрабатывать запросы записи одновременно" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3639 msgid "Device removal is deferred until the last user closes it" msgstr "Удаление устройства отложено, пока его не закроет последний пользователь" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3640 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "Использовать глобальную блокировку для сериализации доступа на скорости памяти (memory-hard) PBKDF (для обхода OOM)" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3641 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "Время итерации PBKDF для LUKS (в мс)" -#: src/cryptsetup.c:3554 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3641 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "мс" -#: src/cryptsetup.c:3555 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3642 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "Алгоритм PBKDF (для LUKS2): argon2i, argon2id, pbkdf2" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "Ограничение стоимости памяти PBKDF" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "килобайт" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "Стоимость параллельности PBKDF" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "нити" -#: src/cryptsetup.c:3558 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3645 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "Стоимость итераций PBKDF (принудительная, оценка производительности отключена)" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3646 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Приоритет слота ключа: ignore, normal, prefer" -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3647 msgid "Disable locking of on-disk metadata" msgstr "Выключить блокировку метаданных на диске" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3648 msgid "Disable loading volume keys via kernel keyring" msgstr "Выключить загрузку ключей томов через связку ключей ядра" -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3649 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Алгоритм целостности данных (только для LUKS2)" -#: src/cryptsetup.c:3563 src/integritysetup.c:573 +#: src/cryptsetup.c:3650 src/integritysetup.c:590 msgid "Disable journal for integrity device" msgstr "Выключить журналирование для устройства целостности" -#: src/cryptsetup.c:3564 src/integritysetup.c:547 +#: src/cryptsetup.c:3651 src/integritysetup.c:564 msgid "Do not wipe device after format" msgstr "Не затирать устройство после форматирования" -#: src/cryptsetup.c:3565 src/integritysetup.c:577 +#: src/cryptsetup.c:3652 src/integritysetup.c:594 msgid "Use inefficient legacy padding (old kernels)" msgstr "Использовать неэффективное устаревшее дополнение (старые ядра)" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3653 msgid "Do not ask for passphrase if activation by token fails" msgstr "Не запрашивать парольную фразу, если активация токеном завершилась ошибкой" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3654 msgid "Token number (default: any)" msgstr "Номер токена (по умолчанию: любой)" -#: src/cryptsetup.c:3568 +#: src/cryptsetup.c:3655 msgid "Key description" msgstr "Описание ключа" -#: src/cryptsetup.c:3569 +#: src/cryptsetup.c:3656 msgid "Encryption sector size (default: 512 bytes)" msgstr "Размер сектора шифрования (по умолчанию: 512 байт)" -#: src/cryptsetup.c:3570 +#: src/cryptsetup.c:3657 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "Использовать вычисленное IV как размер сектора (не 512 байт)" -#: src/cryptsetup.c:3571 +#: src/cryptsetup.c:3658 msgid "Set activation flags persistent for device" msgstr "Задать набор постоянных флагов активации устройства" -#: src/cryptsetup.c:3572 +#: src/cryptsetup.c:3659 msgid "Set label for the LUKS2 device" msgstr "Задать метку устройства LUKS2" -#: src/cryptsetup.c:3573 +#: src/cryptsetup.c:3660 msgid "Set subsystem label for the LUKS2 device" msgstr "Задать метку подсистемы устройства LUKS2" -#: src/cryptsetup.c:3574 +#: src/cryptsetup.c:3661 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "Создать или сделать дапм непривязанного (без назначенного сегмента данных) слота ключа LUKS2" -#: src/cryptsetup.c:3575 +#: src/cryptsetup.c:3662 msgid "Read or write the json from or to a file" msgstr "Прочитать или записать json в файл" -#: src/cryptsetup.c:3576 +#: src/cryptsetup.c:3663 msgid "LUKS2 header metadata area size" msgstr "Размер области метаданных заголовка LUKS2" -#: src/cryptsetup.c:3577 +#: src/cryptsetup.c:3664 msgid "LUKS2 header keyslots area size" msgstr "Размер области слотов ключей заголовка LUKS2" -#: src/cryptsetup.c:3578 +#: src/cryptsetup.c:3665 msgid "Refresh (reactivate) device with new parameters" msgstr "Обновить (реактивировать) устройство с новыми параметрами" -#: src/cryptsetup.c:3579 +#: src/cryptsetup.c:3666 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "Слот ключа LUKS2: Размер ключа шифрования" -#: src/cryptsetup.c:3580 +#: src/cryptsetup.c:3667 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "Слот ключа LUKS2: Шифр, используемый для шифрования слота ключа" -#: src/cryptsetup.c:3581 +#: src/cryptsetup.c:3668 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "Зашифровать устройство LUKS2 (шифрование по месту (in-place))" -#: src/cryptsetup.c:3582 +#: src/cryptsetup.c:3669 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "Расшифровать устройство LUKS2 (удалить шифрование)" -#: src/cryptsetup.c:3583 +#: src/cryptsetup.c:3670 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "Инициализировать перешифрование LUKS2 только метаданных." -#: src/cryptsetup.c:3584 +#: src/cryptsetup.c:3671 msgid "Resume initialized LUKS2 reencryption only." msgstr "Возобновить только инициализированное перешифрование LUKS2." -#: src/cryptsetup.c:3585 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3672 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "Сократить размер данных устройства (переместить смещение данных). ОПАСНО!" -#: src/cryptsetup.c:3586 +#: src/cryptsetup.c:3673 msgid "Maximal reencryption hotzone size." msgstr "Максимальный размер hotzone перешифрования." -#: src/cryptsetup.c:3587 +#: src/cryptsetup.c:3674 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "Тип устойчивости перешифрования hotzone (checksum,journal,none)" -#: src/cryptsetup.c:3588 +#: src/cryptsetup.c:3675 msgid "Reencryption hotzone checksums hash" msgstr "Контрольные хэш-суммы hotzone перешифрования" -#: src/cryptsetup.c:3589 +#: src/cryptsetup.c:3676 msgid "Override device autodetection of dm device to be reencrypted" msgstr "Заменить автоопределение устройства dm для перешифруемого устройства" -#: src/cryptsetup.c:3605 src/veritysetup.c:505 src/integritysetup.c:595 +#: src/cryptsetup.c:3692 src/veritysetup.c:515 src/integritysetup.c:615 msgid "[OPTION...] " msgstr "[ПАРАМЕТР…] <действие> <данные для действия>" -#: src/cryptsetup.c:3656 src/veritysetup.c:539 src/integritysetup.c:606 +#: src/cryptsetup.c:3747 src/veritysetup.c:551 src/integritysetup.c:626 msgid "Argument missing." msgstr "Не задан параметр <действие>." -#: src/cryptsetup.c:3725 src/veritysetup.c:570 src/integritysetup.c:637 +#: src/cryptsetup.c:3817 src/veritysetup.c:582 src/integritysetup.c:660 msgid "Unknown action." msgstr "Неизвестное действие." -#: src/cryptsetup.c:3735 +#: src/cryptsetup.c:3827 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "Параметры --refresh и --test-passphrase взаимно исключают друг друга." -#: src/cryptsetup.c:3740 +#: src/cryptsetup.c:3832 msgid "Option --deferred is allowed only for close command." msgstr "Параметр --deferred допускается только для команды close." -#: src/cryptsetup.c:3745 +#: src/cryptsetup.c:3837 msgid "Option --shared is allowed only for open of plain device." msgstr "Параметр --shared допускается только для открытия устройства plain." -#: src/cryptsetup.c:3750 src/integritysetup.c:654 +#: src/cryptsetup.c:3842 src/integritysetup.c:677 msgid "Option --allow-discards is allowed only for open operation." msgstr "Параметр --allow-discards допускается только для операции open." -#: src/cryptsetup.c:3755 +#: src/cryptsetup.c:3847 msgid "Option --persistent is allowed only for open operation." msgstr "Параметр --persistent допускается только для операции open." -#: src/cryptsetup.c:3760 +#: src/cryptsetup.c:3852 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "Параметр --serialize-memory-hard-pbkdf допускается только для операции open." -#: src/cryptsetup.c:3765 +#: src/cryptsetup.c:3857 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "Параметр --persistent не допускается одновременно указывать с --test-passphrase." -#: src/cryptsetup.c:3775 +#: src/cryptsetup.c:3867 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2857,259 +2898,259 @@ "Параметр --key-size допускается только для luksFormat, luksAddKey,\n" "действий open и benchmark. Для ограничения чтения из файла ключа используйте --keyfile-size=(байт)." -#: src/cryptsetup.c:3781 +#: src/cryptsetup.c:3873 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "Параметр --integrity допускается только для luksFormat (LUKS2)." -#: src/cryptsetup.c:3786 +#: src/cryptsetup.c:3878 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "Параметр --integrity-no-wipe можно использовать только для действия format с расширением целостности." -#: src/cryptsetup.c:3792 +#: src/cryptsetup.c:3884 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "Параметры --label и --subsystem допускаются только для операций LUKS2 luksFormat и config." -#: src/cryptsetup.c:3798 +#: src/cryptsetup.c:3890 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "Параметр --test-passphrase допускается только для открытия устройств LUKS, TCRYPT и BITLK." -#: src/cryptsetup.c:3803 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3895 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "Размер ключа должен быть кратен 8-ми битам" -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3901 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "Некорректный слот ключа." -#: src/cryptsetup.c:3816 +#: src/cryptsetup.c:3908 msgid "Option --key-file takes precedence over specified key file argument." msgstr "Параметр --key-file имеет приоритет над указанным значением файла ключа." -#: src/cryptsetup.c:3823 src/veritysetup.c:582 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3915 src/veritysetup.c:594 src/integritysetup.c:686 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "В параметре нельзя использовать отрицательные числа." -#: src/cryptsetup.c:3827 +#: src/cryptsetup.c:3919 msgid "Only one --key-file argument is allowed." msgstr "Разрешено указывать только один параметр --key-file." -#: src/cryptsetup.c:3831 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3923 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "Разрешено использовать только один параметр --use-[u]random." -#: src/cryptsetup.c:3835 +#: src/cryptsetup.c:3927 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "Параметр --use-[u]random допускается только для luksFormat." -#: src/cryptsetup.c:3839 +#: src/cryptsetup.c:3931 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "Параметр --uuid допускается только для luksFormat и luksUUID." -#: src/cryptsetup.c:3843 +#: src/cryptsetup.c:3935 msgid "Option --align-payload is allowed only for luksFormat." msgstr "Параметр --align-payload допускается только для luksFormat." -#: src/cryptsetup.c:3847 +#: src/cryptsetup.c:3939 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Параметры --luks2-metadata-size и --opt-luks2-keyslots-size допускаются только для операции luksFormat с LUKS2." -#: src/cryptsetup.c:3852 +#: src/cryptsetup.c:3944 msgid "Invalid LUKS2 metadata size specification." msgstr "Неправильно указан размер метаданных LUKS2." -#: src/cryptsetup.c:3856 +#: src/cryptsetup.c:3948 msgid "Invalid LUKS2 keyslots size specification." msgstr "Неправильно указан размер слота ключа LUKS2." -#: src/cryptsetup.c:3860 +#: src/cryptsetup.c:3952 msgid "Options --align-payload and --offset cannot be combined." msgstr "Параметры --align-payload и --offset не допускается указывать вместе." -#: src/cryptsetup.c:3866 +#: src/cryptsetup.c:3958 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "Параметр --skip поддерживается только для открытия устройств plain и loopaes." -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3965 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "Параметр --offset поддерживается только для открытия устройств plain и loopaes, luksFormat и перешифрования устройства." -#: src/cryptsetup.c:3879 +#: src/cryptsetup.c:3971 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "Параметр --tcrypt-hidden, --tcrypt-system или --tcrypt-backup поддерживается только для устройства TCRYPT." -#: src/cryptsetup.c:3884 +#: src/cryptsetup.c:3976 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "Параметр --tcrypt-hidden нельзя указывать вместе с --allow-discards." -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:3981 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "Параметр --veracrypt поддерживается только для устройств TCRYPT." -#: src/cryptsetup.c:3895 +#: src/cryptsetup.c:3987 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "Указано некорректное значение параметра --veracrypt-pim." -#: src/cryptsetup.c:3899 +#: src/cryptsetup.c:3991 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "Параметр --veracrypt-pim поддерживается только для устройств, совместимых с VeraCrypt." -#: src/cryptsetup.c:3907 +#: src/cryptsetup.c:3999 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "Параметр --veracrypt-query-pim поддерживается только для устройств, совместимых с VeraCrypt." -#: src/cryptsetup.c:3911 +#: src/cryptsetup.c:4003 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "Параметры --veracrypt-pim и --veracrypt-query-pim взаимно исключают друг друга." -#: src/cryptsetup.c:3918 +#: src/cryptsetup.c:4010 msgid "Option --priority can be only ignore/normal/prefer." msgstr "Значением параметра --priority может быть только ignore/normal/prefer." -#: src/cryptsetup.c:3923 src/cryptsetup.c:3961 +#: src/cryptsetup.c:4015 src/cryptsetup.c:4053 msgid "Keyslot specification is required." msgstr "Требуется указать слот ключа." -#: src/cryptsetup.c:3928 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4020 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "Производной функцией на основе пароля для ключа (PBKDF) может быть только pbkdf2 или argon2i/argon2id." -#: src/cryptsetup.c:3933 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4025 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "Принудительные итерации PBKDF нельзя объединять вместе с параметром времени итерации." -#: src/cryptsetup.c:3939 +#: src/cryptsetup.c:4031 msgid "Sector size option is not supported for this command." msgstr "Параметр размера сектора не поддерживается этой командой." -#: src/cryptsetup.c:3951 +#: src/cryptsetup.c:4043 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." msgstr "Параметр больших секторов IV поддерживается только для открытия устройств типа plain с размером сектора более 512 байт." -#: src/cryptsetup.c:3956 +#: src/cryptsetup.c:4048 msgid "Key size is required with --unbound option." msgstr "С параметром --unbound требуется задать размер ключа." -#: src/cryptsetup.c:3966 +#: src/cryptsetup.c:4058 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "Параметр --unbound можно использовать только в действиях luksAddKey и luksDump." -#: src/cryptsetup.c:3971 +#: src/cryptsetup.c:4063 msgid "Option --refresh may be used only with open action." msgstr "Параметр --refresh можно использовать только при действии open." -#: src/cryptsetup.c:3982 +#: src/cryptsetup.c:4074 msgid "Cannot disable metadata locking." msgstr "Невозможно выключить блокировку метаданных." -#: src/cryptsetup.c:3992 +#: src/cryptsetup.c:4085 msgid "Invalid max reencryption hotzone size specification." msgstr "Неправильный максимальный размер перешифрования hotzone." -#: src/cryptsetup.c:4000 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4093 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "Неправильно указан размер устройства." -#: src/cryptsetup.c:4003 +#: src/cryptsetup.c:4096 msgid "Maximum device reduce size is 1 GiB." msgstr "Максимальный размер сокращения устройства равен 1 ГиБ." -#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4099 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "Размер сокращения должен быть кратен 512 байтовому сектору." -#: src/cryptsetup.c:4011 +#: src/cryptsetup.c:4104 msgid "Invalid data size specification." msgstr "Неправильный размер устройства данных." -#: src/cryptsetup.c:4016 +#: src/cryptsetup.c:4109 msgid "Reduce size overflow." msgstr "Переполнение размера сокращения." -#: src/cryptsetup.c:4020 +#: src/cryptsetup.c:4113 msgid "LUKS2 decryption requires option --header." msgstr "Для расшифровки LUKS2 требуется параметр --header." -#: src/cryptsetup.c:4024 +#: src/cryptsetup.c:4117 msgid "Device size must be multiple of 512 bytes sector." msgstr "Размер устройства должен быть кратен 512 байтовому сектору." -#: src/cryptsetup.c:4028 +#: src/cryptsetup.c:4121 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "Параметры ---reduce-device-size и --data-size не допускается указывать вместе." -#: src/cryptsetup.c:4032 +#: src/cryptsetup.c:4125 msgid "Options --device-size and --size cannot be combined." msgstr "Параметры --device-size и --size не допускается указывать вместе." -#: src/cryptsetup.c:4036 +#: src/cryptsetup.c:4129 msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." msgstr "Параметры --keyslot-cipher и --keyslot-key-size нельзя использовать вместе." -#: src/veritysetup.c:67 +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "Указана недопустимая строка соли." -#: src/veritysetup.c:98 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "Невозможно создать образ хэша %s для записи." -#: src/veritysetup.c:108 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "Невозможно создать образ FEC %s для записи." -#: src/veritysetup.c:182 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "Указана недопустимая строка корневого хэша." -#: src/veritysetup.c:190 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "Неверный файл подписи %s." -#: src/veritysetup.c:197 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "Невозможно прочитать файл подписи %s." -#: src/veritysetup.c:397 +#: src/veritysetup.c:406 msgid " " msgstr "<устройство_данных> <устройство_хэша>" -#: src/veritysetup.c:397 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:492 msgid "format device" msgstr "отформатировать устройство" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid " " msgstr "<устройство_данных> <устройство_хэша> <корневой_хэш>" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid "verify device" msgstr "проверить устройство" -#: src/veritysetup.c:399 +#: src/veritysetup.c:408 msgid " " msgstr "<устройство_данных> <имя> <устройство_хэша> <корневой_хэш>" -#: src/veritysetup.c:401 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:495 msgid "show active device status" msgstr "показать состояние активного устройства" -#: src/veritysetup.c:402 +#: src/veritysetup.c:411 msgid "" msgstr "<устройство_хэша>" -#: src/veritysetup.c:402 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:496 msgid "show on-disk information" msgstr "показать информацию на диске" -#: src/veritysetup.c:421 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3124,7 +3165,7 @@ "<устройство_хэша> — устройство, содержащее проверочные данные\n" "<корневой_хэш> — хэш корневого узла на <устройстве_хэша>\n" -#: src/veritysetup.c:428 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3135,134 +3176,139 @@ "Встроенные параметры dm-verity по умолчанию:\n" "\tХэш: %s, Блок данных (байт): %u, Блок хэша (байт): %u, Размер соли: %u, Формат хэша: %u\n" -#: src/veritysetup.c:471 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "Не использовать проверочный суперблок" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Тип форматирования (1 - обычное, 0 - как в Chrome OS)" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "number" msgstr "число" -#: src/veritysetup.c:473 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "Размер блока устройства данных" -#: src/veritysetup.c:474 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "Размер блока устройства хэша" -#: src/veritysetup.c:475 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "байты чётности FEC" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "Количество блоков в файле данных" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "blocks" msgstr "блоков" -#: src/veritysetup.c:477 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "Путь к устройству с данными коррекции ошибок" -#: src/veritysetup.c:477 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:566 msgid "path" msgstr "путь" -#: src/veritysetup.c:478 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "Начальное смещение на устройстве хэша" -#: src/veritysetup.c:479 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "Начальное смещение на устройстве FEC" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "Алгоритм хэширования" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "string" msgstr "строка" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "Salt" msgstr "Соль" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "hex string" msgstr "шестн. строка" -#: src/veritysetup.c:483 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "Путь к файлу с подписью корневого хэша" -#: src/veritysetup.c:484 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "Перезапустить ядро, если обнаружится повреждение" -#: src/veritysetup.c:485 +#: src/veritysetup.c:495 msgid "Panic kernel if corruption is detected" msgstr "Включить панику в ядре, если обнаружится повреждение" -#: src/veritysetup.c:486 +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "Игнорировать повреждение, только запротоколировать" -#: src/veritysetup.c:487 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "Не проверять обнулённые блоки" -#: src/veritysetup.c:488 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "Проверять блок данных только при первом чтении" -#: src/veritysetup.c:588 +#: src/veritysetup.c:600 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "Параметр --ignore-corruption, --restart-on-corruption или --ignore-zero-blocks допускается только для операции open." -#: src/veritysetup.c:593 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "Параметр --root-hash-signature можно использовать только для действия open." -#: src/veritysetup.c:598 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "Параметры --ignore-corruption и --restart-on-corruption нельзя использовать вместе." -#: src/veritysetup.c:603 +#: src/veritysetup.c:615 msgid "Option --panic-on-corruption and --restart-on-corruption cannot be used together." msgstr "Параметры ---panic-on-corruption и --restart-on-corruption нельзя использовать вместе." -#: src/integritysetup.c:84 src/utils_password.c:305 +#: src/integritysetup.c:85 +#, c-format +msgid "Invalid key size. Maximum is %u bytes." +msgstr "Неверный размер ключа. Максимальное значение (в байтах) равно %u." + +#: src/integritysetup.c:95 src/utils_password.c:339 #, c-format msgid "Cannot read keyfile %s." msgstr "Невозможно прочитать файл ключа %s." -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:99 src/utils_password.c:344 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "Невозможно прочитать %d байт из файл ключа %s." -#: src/integritysetup.c:254 +#: src/integritysetup.c:266 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Отформатирован с размером тега %u, внутренняя целостность %s.\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:492 src/integritysetup.c:496 msgid "" msgstr "<устройство_целостности>" -#: src/integritysetup.c:480 +#: src/integritysetup.c:493 msgid " " msgstr "<устройство_целостности> <имя>" -#: src/integritysetup.c:502 +#: src/integritysetup.c:515 #, c-format msgid "" "\n" @@ -3273,403 +3319,409 @@ "<имя> — устройство, создаваемое на %s\n" "<устройство_целостности> — устройство, содержащее данные с тегами целостности\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 "" "\n" "Встроенные параметры dm-integrity:\n" "\tАлгоритм контрольной суммы: %s\n" +"\tМаксимальный размер файла ключа: %dКБ\n" -#: 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 "Количество 512-байтовых секторов на бит (режим битовой карты)." -#: 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 msgid "The size of the data integrity key" msgstr "Размер ключа целостности данных" -#: src/integritysetup.c:563 +#: src/integritysetup.c:580 msgid "Read the integrity key from a file" msgstr "Прочитать ключ целостности из файла" -#: src/integritysetup.c:565 +#: src/integritysetup.c:582 msgid "Journal integrity algorithm" msgstr "Алгоритм целостности журнала" -#: src/integritysetup.c:566 +#: src/integritysetup.c:583 msgid "The size of the journal integrity key" msgstr "Размер ключа целостности журнала" -#: src/integritysetup.c:567 +#: src/integritysetup.c:584 msgid "Read the journal integrity key from a file" msgstr "Прочитать ключ целостности журнала из файла" -#: src/integritysetup.c:569 +#: src/integritysetup.c:586 msgid "Journal encryption algorithm" msgstr "Алгоритм шифрования журнала" -#: src/integritysetup.c:570 +#: src/integritysetup.c:587 msgid "The size of the journal encryption key" msgstr "Размер ключа шифрования журнала" -#: src/integritysetup.c:571 +#: src/integritysetup.c:588 msgid "Read the journal encryption key from a file" msgstr "Прочитать ключ шифрования журнала из файла" -#: 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 "Автоматически вычислять начальные теги повторно." +msgstr "Автоматически пересчитывать начальные теги." + +#: src/integritysetup.c:596 +msgid "Do not protect superblock with HMAC (old kernels)" +msgstr "Не защищать суперблок с помощью HMAC (старые ядра)" -#: src/integritysetup.c:649 +#: src/integritysetup.c:597 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "Разрешить пересчёт томов с помощью ключей HMAC (старые ядра)" + +#: src/integritysetup.c:672 msgid "Option --integrity-recalculate can be used only for open action." msgstr "Параметр --integrity-recalculate можно использовать только для действия open." -#: 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 "Параметры --journal-size, --interleave-sectors, --sector-size, --tag-size и --no-wipe можно использовать только для действия format." -#: src/integritysetup.c:675 +#: src/integritysetup.c:698 msgid "Invalid journal size specification." msgstr "Неправильное задание размера журнала." -#: 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 msgid "Reencryption already in-progress." msgstr "Уже выполняется перешифрование." -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "Невозможно монопольно открыть устройство %s, оно уже используется." -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "Не удалось выделить выровненную память." -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "Невозможно прочитать с устройства %s." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "Отметка устройства LUKS1 %s бесполезна." -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "Установка внесистемного (offline) флага перешифрования LUKS2 на устройстве %s." -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "Невозможно записать на устройство %s." -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "Невозможно записать в файл протокола перешифрования." -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "Невозможно прочитать файл протокола перешифрования." -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "Файл протокола %s существует, подразумевается перешифрование.\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "Активируется временное устройство, задействуется старый заголовок LUKS." -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "Активируется временное устройство, задействуется новый заголовок LUKS." -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "Ошибка при активации временного устройства." -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "Не удалось задать смещение данных." -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "Не удалось задать размер метаданных." -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "Создан новый заголовок LUKS для устройства %s." -#: 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 "Эта версия cryptsetup-reencrypt не работает с новым типом внутреннего токена %s." -#: 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 msgid "Failed to write activation flags to new header." msgstr "Ошибка записи флагов активации в новый заголовок." -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "Ошибка чтения требований из резервной копии заголовка." -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "Создана резервная копия заголовка %s для устройства %s." -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "Ошибка при создании резервных копий заголовка LUKS." -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "Невозможно восстановить заголовок %s устройства %s." -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "Заголовок %s устройства %s восстановлен." -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "Невозможно открыть временное устройство LUKS." -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "Невозможно получить размер устройства." -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "Ошибка ввода-вывода при перешифровании." -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "Указан некорректный UUID." -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "Невозможно открыть файл протокола перешифрования." -#: 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 "Расшифровка не выполняется, указанный UUID можно использовать только для возобновления приостановленного процесса расшифровки." -#: src/cryptsetup_reencrypt.c:1504 +#: src/cryptsetup_reencrypt.c:1522 #, c-format msgid "Changed pbkdf parameters in keyslot %i." msgstr "Изменённые параметры pbkdf в слоте ключа %i." -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "Размер блока перешифрования" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "МиБ" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "Не изменять ключ, нет области перешифрования данных" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "Прочитать новый (главный) ключ тома из файла" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "Время итерации PBKDF2 для LUKS (мс)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "Использовать direct-io для доступа к устройствам" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "Вызывать fsync после каждого блока" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "Обновлять файл протокола после каждого блока" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "Использовать только этот слот (остальные будут выключены)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "Создать новый заголовок на не шифрованном устройстве" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "Окончательно расшифровать устройство (удалить шифрование)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "Используемый для возобновления шифрования UUID" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Тип метаданных LUKS: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[ПАРАМЕТР…] <устройство>" -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "Перешифрование изменит: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "ключ тома" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "установить хэш равным" -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr ", установить шифр равным" -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "Требуется аргумент." -#: 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 "Значение размера блока перешифрования должно быть в диапазоне от 1 МиБ до 64 МиБ." -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "Максимальный размер сокращения устройства равен 64 МиБ." -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "Параметр --new должен использоваться вместе с --reduce-device-size или --header." -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "Параметр --keep-key можно использовать только с --hash, --iter-time или --pbkdf-force-iterations." -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "Параметр --new нельзя использовать вместе с --decrypt." -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "Параметр --decrypt несовместим с указанными параметрами." -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "Параметр --uuid можно использовать только вместе с --decrypt." -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Некорректный тип luks. Возможные значения: «luks», «luks1» или «luks2»." @@ -3710,32 +3762,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "Сбой команды, код %i (%s).\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "Создан слот ключа %i." -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "Слот ключа %i разблокирован." -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "Слот ключа %i удалён." -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "Создан токен %i." -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "Токен %i удалён." -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3743,55 +3795,55 @@ "\n" "Затирание прервано." -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: Устройство %s уже содержит подпись раздела «%s».\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: Устройство %s уже содержит подпись суперблока «%s».\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "Ошибка при инициализации определения подписей устройства." -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "Ошибка выполнения stat для устройства %s." -#: 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 "Устройство %s уже используется. Нельзя продолжать выполнение операции форматирования." -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "Ошибка при открытии файла %s в режиме чтения-записи." -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "Существующая подпись раздела «%s» (смещение: % байт) на устройстве %s будет затёрта." -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "Существующая подпись суперблока «%s» (смещение: % байт) на устройстве %s будет затёрта." -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "Ошибка при затирании подписи устройства." -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "Ошибка при определении подписи устройства %s." -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3799,7 +3851,7 @@ "\n" "Перешифрование прервано." -#: src/utils_password.c:43 src/utils_password.c:75 +#: src/utils_password.c:43 src/utils_password.c:76 #, c-format msgid "Cannot check password quality: %s" msgstr "Невозможно проверить стойкость пароля: %s" @@ -3818,46 +3870,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "Ошибка при проверке стойкости пароля: некорректная парольная фраза (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:228 src/utils_password.c:242 msgid "Error reading passphrase from terminal." msgstr "Ошибка чтения парольной фразы с терминала." -#: src/utils_password.c:206 +#: src/utils_password.c:240 msgid "Verify passphrase: " msgstr "Парольная фраза повторно: " -#: src/utils_password.c:213 +#: src/utils_password.c:247 msgid "Passphrases do not match." msgstr "Парольные фразы не совпадают." -#: src/utils_password.c:250 +#: src/utils_password.c:284 msgid "Cannot use offset with terminal input." msgstr "Невозможно использовать смещение при вводе с терминала." -#: src/utils_password.c:253 +#: src/utils_password.c:287 #, c-format msgid "Enter passphrase: " msgstr "Введите парольную фразу: " -#: src/utils_password.c:256 +#: src/utils_password.c:290 #, c-format msgid "Enter passphrase for %s: " msgstr "Введите парольную фразу для %s: " -#: src/utils_password.c:287 +#: src/utils_password.c:321 msgid "No key available with this passphrase." msgstr "Ключ недоступен с этой парольной фразой." -#: 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 #, c-format msgid "Cannot open keyfile %s for write." msgstr "Невозможно открыть файл ключа %s для записи." -#: src/utils_password.c:335 +#: src/utils_password.c:372 #, c-format msgid "Cannot write to keyfile %s." msgstr "Невозможно записать в файл ключа %s." @@ -3900,6 +3952,15 @@ msgid "Failed to write JSON file." msgstr "Ошибка записи в файл JSON." +#~ msgid "WARNING: Locking directory %s/%s is missing!\n" +#~ msgstr "ПРЕДУПРЕЖДЕНИЕ: Каталог блокировки %s/%s отсутствует!\n" + +#~ msgid "Invalid size parameters for verity device." +#~ msgstr "Неправильный размер параметров для устройства verity." + +#~ msgid "Integrity algorithm must be specified if integrity key is used." +#~ msgstr "Если используется ключ целостности, то должен быть указан алгоритм целостности." + #~ msgid "Wrong key size." #~ msgstr "Неверный размер ключа." diff -Nru cryptsetup-2.3.4/po/sr.po cryptsetup-2.3.6/po/sr.po --- cryptsetup-2.3.4/po/sr.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/sr.po 2021-05-28 04:57:08.000000000 -0500 @@ -1,13 +1,13 @@ # Serbian translation for cryptsetup. # Copyright © 2014 Free Software Foundation, Inc. # This file is distributed under the same license as the cryptsetup package. -# Мирослав Николић , 2014–2020. +# Мирослав Николић , 2014–2021. msgid "" msgstr "" -"Project-Id-Version: cryptsetup-2.3.2-rc0\n" +"Project-Id-Version: cryptsetup-2.3.5-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-04-17 12:18+0200\n" -"PO-Revision-Date: 2020-05-02 22:38+0200\n" +"POT-Creation-Date: 2021-03-04 11:28+0100\n" +"PO-Revision-Date: 2021-03-28 09:55+0200\n" "Last-Translator: Мирослав Николић \n" "Language-Team: Serbian <(nothing)>\n" "Language: sr\n" @@ -15,64 +15,64 @@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Generator: Virtaal 0.7.1\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/libdevmapper.c:399 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "Не могу да покренем мапера уређаја, радим као обичан корисник." -#: lib/libdevmapper.c:402 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "Не могу да покренем мапера уређаја. Да ли је учитан модул кернела „dm_mod“?" -#: lib/libdevmapper.c:1128 +#: lib/libdevmapper.c:1167 msgid "Requested deferred flag is not supported." msgstr "Затражена одложена заставица није подржана." -#: lib/libdevmapper.c:1195 +#: lib/libdevmapper.c:1234 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "ДМ-УЈИБ за уређај „%s“ је скраћен." -#: lib/libdevmapper.c:1517 +#: lib/libdevmapper.c:1565 msgid "Unknown dm target type." msgstr "Непозната врста „dm“ мете." -#: lib/libdevmapper.c:1620 lib/libdevmapper.c:1676 +#: lib/libdevmapper.c:1686 lib/libdevmapper.c:1691 lib/libdevmapper.c:1751 +#: lib/libdevmapper.c:1754 msgid "Requested dm-crypt performance options are not supported." msgstr "Затражене опције перформанси дм-шифровања нису подржане." -#: lib/libdevmapper.c:1627 +#: lib/libdevmapper.c:1698 lib/libdevmapper.c:1702 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Затражене опције рада оштећених података дм-веритија нису подржане." -#: lib/libdevmapper.c:1631 +#: lib/libdevmapper.c:1706 msgid "Requested dm-verity FEC options are not supported." msgstr "Затражене „dm-verity FEC“ опције нису подржане." -#: lib/libdevmapper.c:1635 +#: lib/libdevmapper.c:1710 msgid "Requested data integrity options are not supported." msgstr "Затражене опције целовитости података нису подржане." -#: lib/libdevmapper.c:1637 +#: lib/libdevmapper.c:1712 msgid "Requested sector_size option is not supported." msgstr "Затражене опције величине одељка нису подржане." -#: lib/libdevmapper.c:1642 +#: lib/libdevmapper.c:1717 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "Затражене опције самосталног прерачунавања ознака целовитости нису подржане." -#: lib/libdevmapper.c:1646 lib/libdevmapper.c:1679 lib/libdevmapper.c:1682 -#: lib/luks2/luks2_json_metadata.c:2160 +#: lib/libdevmapper.c:1721 lib/libdevmapper.c:1757 lib/libdevmapper.c:1760 +#: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Одбацивање/ОДСЕЦАЊЕ није подржано." -#: lib/libdevmapper.c:1650 +#: lib/libdevmapper.c:1725 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "Затражени режим битмапе дм-целовитости није подржан." -#: lib/libdevmapper.c:2602 +#: lib/libdevmapper.c:2693 #, c-format msgid "Failed to query dm-%s segment." msgstr "Нисам успео да пропитам „dm-%s“ подеок." @@ -114,7 +114,7 @@ msgid "Cannot initialize crypto backend." msgstr "Не могу да покренем позадинца криптографије." -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "Хеш алгоритам „%s“ није подржан." @@ -128,7 +128,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "Не могу да одредим врсту уређаја. Несагласно покретање уређаја?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "Ова радња је подржана само за ЛУКС уређај." @@ -150,7 +150,7 @@ msgid "Key slot %d is full, please select another one." msgstr "Утор кључа %d је пун, изаберите неки други." -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "Величина уређаја није поравната на величину логичког блока уређаја." @@ -159,7 +159,7 @@ msgid "Header detected but device %s is too small." msgstr "Заглавље је откривено али уређај „%s“ је премали." -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "Ова радња није подржана за ову врсту уређаја." @@ -167,7 +167,7 @@ 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 #, c-format msgid "Unsupported LUKS version %d." msgstr "Неподржано ЛУКС издање %d." @@ -176,8 +176,8 @@ msgid "Detached metadata device is not supported for this crypt type." msgstr "Откачени уређај метаподатака није подржан за ову врсту криптографије." -#: 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:4532 #, c-format msgid "Device %s is not active." msgstr "Уређај „%s“ није радан." @@ -191,7 +191,7 @@ msgid "Invalid plain crypt parameters." msgstr "Неисправни параметри обичне криптографије." -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:86 msgid "Invalid key size." msgstr "Неисправна величина кључа." @@ -200,11 +200,11 @@ msgstr "УЈИБ није подржан за ову врсту криптографије." #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1221 src/cryptsetup.c:3922 +#: src/cryptsetup.c:1293 src/cryptsetup.c:4023 msgid "Unsupported encryption sector size." msgstr "Неподржана величина одељка шифровања." -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "Величина уређаја није поравната на затражену величину одељка." @@ -248,8 +248,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "УПОЗОРЕЊЕ: Величина области ЛУКС2 утора кључева је промењена на % бајта.\n" -#: 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:846 lib/luks1/keyencryption.c:255 +#: lib/luks2/luks2_reencrypt.c:2356 lib/luks2/luks2_reencrypt.c:3381 #, c-format msgid "Device %s is too small." msgstr "Уређај „%s“ је премали." @@ -282,16 +282,16 @@ msgid "Can't format VERITY without device." msgstr "Не могу да обликујем „VERITY“ без уређаја." -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "Неподржана врста „VERITY“ хеша %d." -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "Неподржана величина блока „VERITY“." -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "Неподржан померај хеша „VERITY“." @@ -321,236 +321,236 @@ msgid "Unknown crypt device type %s requested." msgstr "Затражена је непозната врста „%s“ криптографског уређаја." -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "Неподржани параметри на уређају „%s“." -#: 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:2408 +#: lib/luks2/luks2_reencrypt.c:2751 #, c-format msgid "Mismatching parameters on device %s." msgstr "Неодговарајући параметри на уређају „%s“." -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3159 #, c-format msgid "Failed to reload device %s." msgstr "Нисам успео поново да учитам уређај „%s“." -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "Нисам успео да обуставим уређај „%s“." -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3094 lib/luks2/luks2_reencrypt.c:3163 #, c-format msgid "Failed to resume device %s." msgstr "Нисам успео да наставим са уређајем „%s“." -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "Кобна грешка приликом поновног учитавања уређаја „%s“ (на врху уређаја „%s“)." -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "Нисам успео да променим уређај „%s“ на дм-грешку." -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "Не могу да променим величину уређаја петље." -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "Да ли стварно желите да измените УЈИБ уређаја?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "Датотека резерве заглавља не садржи сагласно ЛУКС заглавље." -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "Волумен „%s“ није радан." -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "Волумен „%s“ је већ обустављен." -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "Обустављање није подржано за уређај „%s“." -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "Грешка за време обустављања уређаја „%s“." -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "Волумен „%s“ није обустављен." - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "Настављање није подржано за уређај „%s“." -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "Грешка за време настављања уређаја „%s“." -#: 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 +#, c-format +msgid "Volume %s is not suspended." +msgstr "Волумен „%s“ није обустављен." + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5859 msgid "Volume key does not match the volume." msgstr "Кључ волумена не одговара волумену." -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "Не могу да додам утор кључа, сви утори су искључени а није обезбеђен ниједан кључ волумена." -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "Нисам успео да разменим нови утор кључа." -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "Утор кључа „%d“ није исправан." -#: lib/setup.c:3675 src/cryptsetup.c:1567 src/cryptsetup.c:1912 +#: lib/setup.c:3679 src/cryptsetup.c:1631 src/cryptsetup.c:1976 #, c-format msgid "Keyslot %d is not active." msgstr "Утор кључа „%d“ није радан." -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "Заглавље уређаја се преклапа са облашћу података." -#: lib/setup.c:3981 +#: lib/setup.c:3991 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:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Failed to get reencryption lock." msgstr "Нисам успео да добавим закључавање поновног шифровања." -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2869 msgid "LUKS2 reencryption recovery failed." msgstr "Опоравак ЛУКС2 поновног шифровања није успело." -#: lib/setup.c:4127 lib/setup.c:4379 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "Врста уређаја није исправно покренута." -#: lib/setup.c:4171 -#, c-format -msgid "Cannot use device %s, name is invalid or still in use." -msgstr "Не могу да користим уређај „%s“, назив није исправан или је још у употреби." - -#: lib/setup.c:4174 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "Већ постоји уређај „%s“." -#: lib/setup.c:4296 +#: lib/setup.c:4192 +#, c-format +msgid "Cannot use device %s, name is invalid or still in use." +msgstr "Не могу да користим уређај „%s“, назив није исправан или је још у употреби." + +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "Наведен је неисправан кључ волумена за обичан уређај." -#: lib/setup.c:4405 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "Наведен је неисправан хеш корена за уређај тачности." -#: lib/setup.c:4412 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "Потпис хеша корена је потребан." -#: lib/setup.c:4421 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "Привезак кључева кернела недостаје: потребан је за прослеђивање потписа кернелу." -#: lib/setup.c:4438 lib/setup.c:5915 +#: lib/setup.c:4458 lib/setup.c:5935 msgid "Failed to load key in kernel keyring." msgstr "Нисам успео да учитам кључ у привеску кључева кернела." -#: lib/setup.c:4491 lib/setup.c:4507 lib/luks2/luks2_json_metadata.c:2296 -#: src/cryptsetup.c:2659 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2741 #, c-format msgid "Device %s is still in use." msgstr "Уређај „%s“ је још увеку употреби." -#: lib/setup.c:4516 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "Неисправан уређај „%s“." -#: lib/setup.c:4632 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "Међумеморија кључа волумена је премала." -#: lib/setup.c:4640 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "Не могу да довучем кључ волумена за обичан уређај." -#: lib/setup.c:4657 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "Не могу да довучем хеш корена за уређај тачности." -#: lib/setup.c:4659 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Ова радња није подржана за криптографски уређај „%s“." -#: lib/setup.c:4865 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "Радња исписа није подржана за ову врсту уређаја." -#: lib/setup.c:5190 +#: lib/setup.c:5210 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "Померај података није умножак %u бајта." -#: lib/setup.c:5475 +#: lib/setup.c:5495 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "Не могу да преобратим уређај „%s“ који је још увек у употреби." -#: lib/setup.c:5772 +#: lib/setup.c:5792 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "Нисам успео да доделим утор кључа „%u“ као нови кључ волумена." -#: lib/setup.c:5845 +#: lib/setup.c:5865 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "Нисам успео да покренем основне параметре ЛУКС2 утора кључа." -#: lib/setup.c:5851 +#: lib/setup.c:5871 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "Нисам успео да доделим утор кључа „%d“ за преглед." -#: lib/setup.c:5982 +#: lib/setup.c:6002 msgid "Kernel keyring is not supported by the kernel." msgstr "Привезак кључева кернела није подржан кернелом." -#: lib/setup.c:5992 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6012 lib/luks2/luks2_reencrypt.c:2966 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "Нисам успео да прочитам пропусну реч из привеска кључа (грешка %d)." -#: lib/setup.c:6016 +#: lib/setup.c:6036 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "Нисам успео да остварим опште закључавање серијализације приступа чврстој меморији." @@ -578,8 +578,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "Не могу да премотам на затражени померај датотеке кључа." -#: 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:195 +#: src/utils_password.c:208 msgid "Out of memory while reading passphrase." msgstr "Нестало је меморије приликом читања пропусне речи." @@ -610,40 +610,45 @@ msgid "Device %s is not compatible." msgstr "Уређај „%s“ није сагласан." -#: lib/utils_device.c:642 +#: lib/utils_device.c:538 +#, c-format +msgid "Ignoring bogus optimal-io size for data device (%u bytes)." +msgstr "Занемарујем лажну оптималну-уи величину за уређај података (%u бајта)." + +#: lib/utils_device.c:660 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "Уређај „%s“ је премали. Захтева барем % бајта." -#: lib/utils_device.c:723 +#: lib/utils_device.c:741 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "Не могу да користим уређај „%s“ који је у употреби (већ мапиран или прикачен)." -#: lib/utils_device.c:727 +#: lib/utils_device.c:745 #, c-format msgid "Cannot use device %s, permission denied." msgstr "Не могу да користим уређај „%s“, овлашћење је одбијено." -#: lib/utils_device.c:730 +#: lib/utils_device.c:748 #, c-format msgid "Cannot get info about device %s." msgstr "Не могу да добавим податке о уређају „%s“." -#: lib/utils_device.c:753 +#: lib/utils_device.c:771 msgid "Cannot use a loopback device, running as non-root user." msgstr "Не могу да користим уређај повратне петље, радим као обичан корисник." -#: lib/utils_device.c:763 +#: lib/utils_device.c:781 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "Прикачињање уређаја повратне петље није успело (потребан је уређај петље са опцијом самочишћења)." -#: lib/utils_device.c:809 +#: lib/utils_device.c:827 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "Захтевани померај је изван стварне величине уређаја „%s“." -#: lib/utils_device.c:817 +#: lib/utils_device.c:835 #, c-format msgid "Device %s has zero size." msgstr "Уређај „%s“ има нулту величину." @@ -717,16 +722,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "УПОЗОРЕЊЕ: Директоријум закључавања „%s/%s“ недостаје!\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "Директоријум закључавања „%s/%s“ биће направљен са основним преведеним овлашћењима." #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Закључавање је прекинуто. Путања закључавања „%s/%s“ је неискористива („%s“ није директоријум)." -#: 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 msgid "Cannot seek to device offset." msgstr "Не могу да премотам на померај уређаја." @@ -753,8 +758,8 @@ 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:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." msgstr "Не могу да пишем на уређај „%s“, овлашћење је одбијено." @@ -773,12 +778,12 @@ msgstr "Грешка УИ приликом шифровања утора кључа." #: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "Не могу да отворим уређај „%s“." @@ -799,43 +804,43 @@ msgid "LUKS keyslot %u is invalid." msgstr "ЛУКС утор кључа „%u“ није исправан." -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 -#: lib/luks2/luks2_json_metadata.c:1083 src/cryptsetup.c:1428 -#: src/cryptsetup.c:1554 src/cryptsetup.c:1611 src/cryptsetup.c:1667 -#: src/cryptsetup.c:1734 src/cryptsetup.c:1837 src/cryptsetup.c:1901 -#: src/cryptsetup.c:2131 src/cryptsetup.c:2326 src/cryptsetup.c:2386 -#: src/cryptsetup.c:2452 src/cryptsetup.c:2616 src/cryptsetup.c:3266 -#: src/cryptsetup.c:3275 src/cryptsetup_reencrypt.c:1388 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1492 +#: src/cryptsetup.c:1618 src/cryptsetup.c:1675 src/cryptsetup.c:1731 +#: src/cryptsetup.c:1798 src/cryptsetup.c:1901 src/cryptsetup.c:1965 +#: src/cryptsetup.c:2195 src/cryptsetup.c:2406 src/cryptsetup.c:2468 +#: src/cryptsetup.c:2534 src/cryptsetup.c:2698 src/cryptsetup.c:3363 +#: src/cryptsetup.c:3372 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "Уређај „%s“ није исправан ЛУКС уређај." -#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1100 +#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1108 #, c-format msgid "Requested header backup file %s already exists." msgstr "Затражена датотека резерве заглавља „%s“ већ постоји." -#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1102 +#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1110 #, c-format msgid "Cannot create header backup file %s." msgstr "Не могу да направим резервну датотеку заглавља „%s“." -#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1109 +#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1117 #, c-format msgid "Cannot write header backup file %s." msgstr "Не могу да запишем резервну датотеку заглавља „%s“." -#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1161 +#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1169 msgid "Backup file does not contain valid LUKS header." msgstr "Датотека резерве не садржи исправно ЛУКС заглавље." -#: 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:1190 #, c-format msgid "Cannot open header backup file %s." msgstr "Не могу да отворим резервну датотеку заглавља „%s“." -#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1190 +#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1198 #, c-format msgid "Cannot read header backup file %s." msgstr "Не могу да прочитам резервну датотеку заглавља „%s“." @@ -857,7 +862,7 @@ msgid "already contains LUKS header. Replacing header will destroy existing keyslots." msgstr "већ садржи ЛУКС заглавље. Замена заглавља ће уништити постојеће уторе кључева." -#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1224 +#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1232 msgid "" "\n" "WARNING: real device header has different UUID than backup!" @@ -869,101 +874,101 @@ msgid "Non standard key size, manual repair required." msgstr "Неуобичајена величина кључа, потребна је ручна поправка." -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "Неуобичајено поравнање утора кључева, потребна је ручна поправка." -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "Поправљам уторе кључева." -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Утор кључа %i: померај је оправљен (%u —> %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Утор кључа %i: траке су оправљене (%u —> %u)." -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Утор кључа %i: лажан потпис партиције." -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Утор кључа %i: присолак је обрисан." -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "Записујем ЛУКС заглавље на диск." -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "Поправка није успела." -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "Затражени ЛУКС хеш „%s“ није подржан." -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1128 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1185 msgid "No known problems detected for LUKS header." msgstr "Нису откривени познати проблеми за ЛУКС заглавље." -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Грешка приликом освежавања ЛУКС заглавља на уређају „%s“." -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Грешка поновног читања ЛУКС заглавља након освежења на уређају „%s“." -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "Померај података за ЛУКС заглавље мора бити или 0 или већи од величине заглавља." -#: 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:2779 +#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832 +#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2861 msgid "Wrong LUKS UUID format provided." msgstr "Достављен је погрешан запис ЛУКС УЈИБ-а." -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "Не могу да направим ЛУКС заглавље: није успело читање насумичног присолка." -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "Не могу да направим ЛУКС заглавље: није успео преглед заглавља (користим хеш „%s“)." -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "Утор кључа „%d“ је радан, прво прочистите." -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "Материјал утора кључа „%d“ обухвата премало трака. Да управљам заглављем?" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "Не могу да отворим утор кључа (користим хеш %s)." -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "Утор кључа %d није исправан, изаберите га између 0 и %d." -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "Не могу да обришем уређај „%s“." @@ -999,11 +1004,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "„PBKDF2“ алгоритам хеша „%s“ није доступан, прескачем." -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1005 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1056 msgid "Required kernel crypto interface not available." msgstr "Није доступно затражено сучеље криптографије језгра." -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1007 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1058 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Уверите се да је учитан модул кернела „algif_skcipher“." @@ -1016,154 +1021,173 @@ msgid "Kernel does not support activation for this TCRYPT legacy mode." msgstr "Језгро не подржава покретање за овај стари „TCRYPT“ режим." -#: lib/tcrypt/tcrypt.c:793 +#: lib/tcrypt/tcrypt.c:790 #, c-format msgid "Activating TCRYPT system encryption for partition %s." msgstr "Покрећем „TCRYPT“ систем шифровања за партицију „%s“." -#: lib/tcrypt/tcrypt.c:871 +#: lib/tcrypt/tcrypt.c:868 msgid "Kernel does not support TCRYPT compatible mapping." msgstr "Кернел не подржава мапирање сагласно са „TCRYPT“-ом." -#: lib/tcrypt/tcrypt.c:1093 +#: lib/tcrypt/tcrypt.c:1090 msgid "This function is not supported without TCRYPT header load." msgstr "Ова функција није подржана без учитавања „TCRYPT“ заглавља." -#: lib/bitlk/bitlk.c:332 +#: lib/bitlk/bitlk.c:350 #, c-format msgid "Unexpected metadata entry type '%u' found when parsing supported Volume Master Key." msgstr "Нађох неочекивану врсту уноса метаподатака „%u“ приликом обраде подржаног главног кључа волумена." -#: lib/bitlk/bitlk.c:379 +#: lib/bitlk/bitlk.c:397 msgid "Invalid string found when parsing Volume Master Key." msgstr "Нађох неисправну ниску приликом обраде главног кључа волумена." -#: lib/bitlk/bitlk.c:384 +#: lib/bitlk/bitlk.c:402 #, c-format msgid "Unexpected string ('%s') found when parsing supported Volume Master Key." msgstr "Нађох неочекивану ниску („%s“) приликом обраде подржаног главног кључа волумена." -#: lib/bitlk/bitlk.c:398 +#: lib/bitlk/bitlk.c:419 #, c-format msgid "Unexpected metadata entry value '%u' found when parsing supported Volume Master Key." msgstr "Нађох неочекивану вредност уноса метаподатака „%u“ приликом обраде подржаног главног кључа волумена." -#: lib/bitlk/bitlk.c:477 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "Нисам успео да прочитам „BITLK“ потпис из „%s“." -#: lib/bitlk/bitlk.c:483 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Неисправан или непознат потпис за „BITLK“ уређај." + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "„BITLK“ издање 1 тренутно није подржано." -#: lib/bitlk/bitlk.c:489 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "Неисправан или непознат потпис учитавања за „BITLK“ уређај." -#: lib/bitlk/bitlk.c:501 -msgid "Invalid or unknown signature for BITLK device." -msgstr "Неисправан или непознат потпис за „BITLK“ уређај." +#: lib/bitlk/bitlk.c:538 +#, c-format +msgid "Unsupported sector size %." +msgstr "Неподржана величина одељка „%“." -#: lib/bitlk/bitlk.c:509 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "Нисам успео да прочитам „BITLK“ заглавље из „%s“." -#: lib/bitlk/bitlk.c:534 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "Нисам успео да прочитам „BITLK FVE“ метаподатаке из „%s“." -#: lib/bitlk/bitlk.c:585 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "Непозната или неподржана врста криптографије." -#: lib/bitlk/bitlk.c:618 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "Нисам успео да прочитам уносе „BITLK“ метаподатака из „%s“." -#: lib/bitlk/bitlk.c:911 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "Нађох неочекивану врсту уноса метаподатака „%u“ приликом обраде спољног кључа." + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "Нађох неочекивану вредност уноса метаподатака „%u“ приликом обраде спољног кључа." + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "Нађох неочекивану врсту уноса метаподатака приликом обраде кључа почретања." + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "Радња није подржана." -#: lib/bitlk/bitlk.c:919 -msgid "Wrong key size." -msgstr "Погрешна величина кључа." +#: lib/bitlk/bitlk.c:1079 +msgid "Unexpected key data size." +msgstr "Неочекивана величина података кључа." -#: lib/bitlk/bitlk.c:971 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "Овај „BITLK“ уређај је у неподржаном стању и не може бити активиран." -#: lib/bitlk/bitlk.c:977 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "„BITLK“ уређај са врстом „%s“ се не може активирати." -#: lib/bitlk/bitlk.c:1059 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "Активирање делимично дешифрованог „BITLK“ уређаја није подржано." -#: lib/bitlk/bitlk.c:1192 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "Не могу да активирам уређај, „dm-crypt“-у кернела недостаје подршка за „BITLK IV“." -#: lib/bitlk/bitlk.c:1196 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "Не могу да активирам уређај, „dm-crypt“-у кернела недостаје подршка за „BITLK Elephant“ дифузера." -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "Уређај тачности %s не користи заглавље на-диску." -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "Уређај „%s“ није исправан „VERITY“ уређај." -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "Неподржано издање „VERITY“ %d." -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "Заглавље „VERITY“ је оштећено." -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "Достављен је погрешан УЈИБ „VERITY“ запис на уређају „%s“." -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "Грешка приликом освежавања заглавља тачности на уређају „%s“." -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "Провера хеш потписа корена није подржана." -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "Грешке се не могу поправити са „FEC“ уређајем." -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "Нађох поправљиве грешке (%u) са „FEC“ уређајем." -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "Кернел не подржава мапирање дм-тачности." -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "Кернел не подржава опцију потписа дм-тачности." -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "Уређај тачности је открио оштећење након покретања." @@ -1172,41 +1196,37 @@ msgid "Spare area is not zeroed at position %." msgstr "Сувишна област није нулирана на положају %." -#: 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 msgid "Device offset overflow." msgstr "Прекорачење помераја уређаја." -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "Провера није успела на положају %." -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "Неисправни параметри величине за уређај тачности." - -#: 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 msgid "Verification of data area failed." msgstr "Провера области података није успела." -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "Провера хеша корена није успела." -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "Улазно/излазна грешка приликом стварања области хеша." -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "Стварање области хеша није успело." -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "УПОЗОРЕЊЕ: Језгро не може да покрене уређајако величина блока података премашује величину странице (%u)." @@ -1215,53 +1235,61 @@ msgid "Failed to allocate RS context." msgstr "Нисам успео да доделим „RS“ контекст." -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "Нисам успео да доделим међумеморију." -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Нисам успео да прочитам „RS“ блок % бајта %d." -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "Нисам успео да прочитам паритет „RS“ блока %." -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "Нисам успео да поправим паритет за блок %." -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "Нисам успео да запишем паритет „RS“ блока %." -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "Величине блокова морају одговарати за „FEC“." -#: 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 "Неисправна дужина „FEC“ сегмента." + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "Нисам успео да одредим величину за уређај „%s“." -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:353 msgid "Kernel does not support dm-integrity mapping." msgstr "Кернел не подржава мапирање дм-целовитости." -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "Кернел не подржава поравнање фиксних метаподатака дм-целовитости." -#: 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:967 +#: lib/luks2/luks2_json_metadata.c:1252 #, c-format msgid "Failed to acquire write lock on device %s." msgstr "Нисам успео да остварим закључавање писања на уређају „%s“." @@ -1282,45 +1310,45 @@ msgid "Requested data offset is too small." msgstr "Затражени померај података је премали." -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "УПОЗОРЕЊЕ: област утора кључа (% бајта) је врло мала, доступан број ЛУКС2 утора кључа врло ограничен.\n" -#: 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:954 lib/luks2/luks2_json_metadata.c:1082 +#: lib/luks2/luks2_json_metadata.c:1158 lib/luks2/luks2_keyslot_luks2.c:92 #: lib/luks2/luks2_keyslot_luks2.c:114 #, c-format msgid "Failed to acquire read lock on device %s." msgstr "Нисам успео да остварим закључавање читања на уређају „%s“." -#: lib/luks2/luks2_json_metadata.c:1167 +#: lib/luks2/luks2_json_metadata.c:1175 #, c-format msgid "Forbidden LUKS2 requirements detected in backup %s." msgstr "Забрањени ЛУКС2 захтеви су откривени у резерви „%s“." -#: lib/luks2/luks2_json_metadata.c:1208 +#: lib/luks2/luks2_json_metadata.c:1216 msgid "Data offset differ on device and backup, restore failed." msgstr "Померај података се разликује на уређају и резерви, враћање није успело." -#: lib/luks2/luks2_json_metadata.c:1214 +#: lib/luks2/luks2_json_metadata.c:1222 msgid "Binary header with keyslot areas size differ on device and backup, restore failed." msgstr "Бинарно заглавље са областима утора кључа се разликује на уређају и резерви, враћање није успело." -#: lib/luks2/luks2_json_metadata.c:1221 +#: lib/luks2/luks2_json_metadata.c:1229 #, c-format msgid "Device %s %s%s%s%s" msgstr "Уређај %s %s%s%s%s" -#: lib/luks2/luks2_json_metadata.c:1222 +#: lib/luks2/luks2_json_metadata.c:1230 msgid "does not contain LUKS2 header. Replacing header can destroy data on that device." msgstr "не садржи ЛУКС2 заглавље. Замена заглавља може да уништи податке на том уређају." -#: lib/luks2/luks2_json_metadata.c:1223 +#: lib/luks2/luks2_json_metadata.c:1231 msgid "already contains LUKS2 header. Replacing header will destroy existing keyslots." msgstr "већ садржи „LUKS2“ заглавље. Замена заглавља ће уништити постојеће уторе кључева." -#: lib/luks2/luks2_json_metadata.c:1225 +#: lib/luks2/luks2_json_metadata.c:1233 msgid "" "\n" "WARNING: unknown LUKS2 requirements detected in real device header!\n" @@ -1330,7 +1358,7 @@ "УПОЗОРЕЊЕ: непознати ЛУКС2 захтеви су откривени у стварном заглављу уређаја!\n" "Замена заглавља резервом може оштетити податке на том уређају!" -#: lib/luks2/luks2_json_metadata.c:1227 +#: lib/luks2/luks2_json_metadata.c:1235 msgid "" "\n" "WARNING: Unfinished offline reencryption detected on the device!\n" @@ -1340,50 +1368,50 @@ "УПОЗОРЕЊЕ: Недовршено ван мрежно поновно шифровање је откривено на уређају!\n" "Замена заглавља резервом може оштетити податке." -#: lib/luks2/luks2_json_metadata.c:1323 +#: lib/luks2/luks2_json_metadata.c:1333 #, c-format msgid "Ignored unknown flag %s." msgstr "Занемарена непозната заставица „%s“." -#: lib/luks2/luks2_json_metadata.c:2010 lib/luks2/luks2_reencrypt.c:1746 +#: lib/luks2/luks2_json_metadata.c:2020 lib/luks2/luks2_reencrypt.c:1746 #, c-format msgid "Missing key for dm-crypt segment %u" msgstr "Недостаје кључ за „dm-crypt“ подеок %u" -#: lib/luks2/luks2_json_metadata.c:2022 lib/luks2/luks2_reencrypt.c:1764 +#: lib/luks2/luks2_json_metadata.c:2032 lib/luks2/luks2_reencrypt.c:1764 msgid "Failed to set dm-crypt segment." msgstr "Нисам успео да подесим „dm-crypt“ подеок." -#: lib/luks2/luks2_json_metadata.c:2028 lib/luks2/luks2_reencrypt.c:1770 +#: lib/luks2/luks2_json_metadata.c:2038 lib/luks2/luks2_reencrypt.c:1770 msgid "Failed to set dm-linear segment." msgstr "Нисам успео да подесим „dm-linear“ подеок." -#: lib/luks2/luks2_json_metadata.c:2155 +#: lib/luks2/luks2_json_metadata.c:2165 msgid "Unsupported device integrity configuration." msgstr "Неподржано подешавање целовитости уређаја." -#: lib/luks2/luks2_json_metadata.c:2241 +#: lib/luks2/luks2_json_metadata.c:2251 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:2262 lib/luks2/luks2_reencrypt.c:3204 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "Нисам успео да заменим обустављени уређај „%s“ са метом „dm-error“." -#: lib/luks2/luks2_json_metadata.c:2332 +#: lib/luks2/luks2_json_metadata.c:2342 msgid "Failed to read LUKS2 requirements." msgstr "Нисам успео да прочитам ЛУКС2 захтеве." -#: lib/luks2/luks2_json_metadata.c:2339 +#: lib/luks2/luks2_json_metadata.c:2349 msgid "Unmet LUKS2 requirements detected." msgstr "Неоствариви ЛУКС2 захтеви су откривени." -#: lib/luks2/luks2_json_metadata.c:2347 +#: lib/luks2/luks2_json_metadata.c:2357 msgid "Operation incompatible with device marked for legacy reencryption. Aborting." msgstr "Радња је несагласна са уређајем означеним за старо поновно шифровање. Прекидам." -#: lib/luks2/luks2_json_metadata.c:2349 +#: lib/luks2/luks2_json_metadata.c:2359 msgid "Operation incompatible with device marked for LUKS2 reencryption. Aborting." msgstr "Радња је несагласна са уређајем означеним за ЛУКС2 поновно шифровање. Прекидам." @@ -1421,7 +1449,7 @@ msgid "Unable to move keyslot area. LUKS2 keyslots area too small." msgstr "Не могу да преместим област утора кључа. Област ЛУКС2 утора кључа је премала." -#: 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 msgid "Unable to move keyslot area." msgstr "Не могу да преместим област утора кључа." @@ -1475,7 +1503,7 @@ #: 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:3044 msgid "Failed to initialize old segment storage wrapper." msgstr "Нисам успео да покренем старог увијача смештаја подеока." @@ -1487,7 +1515,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "Нисам успео да прочитам суму провере за текућу врућу зону." -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3052 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "Нисам успео да прочитам област вруће зоне са почетком на %." @@ -1545,8 +1573,8 @@ msgid "Data shift (% sectors) is less than future data offset (% 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:2366 lib/luks2/luks2_reencrypt.c:2793 +#: lib/luks2/luks2_reencrypt.c:2814 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "Нисам успео да отворим „%s“ у искључивом режиму (већ мапиран или прикачен)." @@ -1555,7 +1583,7 @@ msgid "Device not marked for LUKS2 reencryption." msgstr "Уређај није означен за ЛУКС2 поновно шифровање." -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3309 msgid "Failed to load LUKS2 reencryption context." msgstr "Нисам успео да учитам контекст ЛУКС2 поновног шифровања." @@ -1579,85 +1607,85 @@ msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "Не могу да наставим са поновним шифровањем. Прво покрените опоравак поновног шифровања." -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2764 msgid "Active device size and requested reencryption size don't match." msgstr "Активна величина уређаја и величина затраженог поновног шифровања не одговарају." -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2778 msgid "Illegal device size requested in reencryption parameters." msgstr "Неисправна величина уређаја је затражена у параметрима поновног шифровања." -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2848 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "Поновно шифровање је у току. Не могу да обавим опоравак." -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2920 msgid "LUKS2 reencryption already initialized in metadata." msgstr "ЛУКС2 поновно шифровање је већ покренуто у метаподацима." -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2927 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "Нисам успео да покренем ЛУКС2 поновно шифровање у метаподацима." -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3018 msgid "Failed to set device segments for next reencryption hotzone." msgstr "Нисам успео да поставим подеоке уређаја за следећу врућу зону поновног шифровања." -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3060 msgid "Failed to write reencryption resilience metadata." msgstr "Нисам успео да запишем метаподатаке гипкости поновног шифровања." -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3067 msgid "Decryption failed." msgstr "Дешифровање није успело." -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3072 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "Нисам успео да запишем област вруће зоне са почетком на %." -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3077 msgid "Failed to sync data." msgstr "Нисам успео да усагласим податке." -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3085 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "Нисам успео да освежим метаподатке након тренутно завршеног поновног шифровања вруће зоне." -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3152 msgid "Failed to write LUKS2 metadata." msgstr "Нисам успео да запишем ЛУКС2 метаподатке." -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3175 msgid "Failed to wipe backup segment data." msgstr "Нисам успео да очистим податке подеока резерве." -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3188 msgid "Failed to disable reencryption requirement flag." msgstr "Нисам успео да искључим заставицу захтева поновног шифровања." -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3196 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "Кобна грешка приликом поновног шифровања комада који почиње на %, % подеока дуг." -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3205 msgid "Do not resume the device unless replaced with error target manually." msgstr "Не наставља са уређајем осим ако није ручно замењен метом грешке." -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3254 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "Не могу да наставим са поновним шифровањем. Неочекивано стање поновног шифровања." -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3260 msgid "Missing or invalid reencrypt context." msgstr "Недостаје или неисправан контекст поновног шифровања." -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3267 msgid "Failed to initialize reencryption device stack." msgstr "Нисам успео да покренем поновно шифровање спремника уређаја." -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3286 lib/luks2/luks2_reencrypt.c:3322 msgid "Failed to update reencryption context." msgstr "Нисам успео да освежим контекст поновног шифровања." @@ -1670,69 +1698,69 @@ msgid "Failed to create builtin token %s." msgstr "Нисам успео да направим уграђену скупину „%s“." -#: src/cryptsetup.c:163 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "Не могу да одрадим проверу пропусне речи на не-конзолним улазима." -#: src/cryptsetup.c:216 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Параметри шифровања утора кључа се могу поставити само за ЛУКС2 уређај." -#: src/cryptsetup.c:246 src/cryptsetup.c:954 src/cryptsetup.c:1264 -#: src/cryptsetup.c:3140 src/cryptsetup_reencrypt.c:723 -#: src/cryptsetup_reencrypt.c:793 +#: src/cryptsetup.c:291 src/cryptsetup.c:1005 src/cryptsetup.c:1336 +#: src/cryptsetup.c:3231 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "Није откривен познат образац одреднице шифрера." -#: src/cryptsetup.c:254 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "УПОЗОРЕЊЕ: Параметар „--hash“ је занемарен у обичном режиму са наведеном кључном датотеком.\n" -#: src/cryptsetup.c:262 +#: 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 "УПОЗОРЕЊЕ: Опција „--keyfile-size“ је занемарена, величина читања је иста као величина кључа шифровања.\n" -#: src/cryptsetup.c:302 +#: src/cryptsetup.c:347 #, c-format msgid "Detected device signature(s) on %s. Proceeding further may damage existing data." msgstr "Открих потпис(е) уређаја на „%s“. Даље настављање може оштетити постојеће податке." -#: src/cryptsetup.c:308 src/cryptsetup.c:1085 src/cryptsetup.c:1137 -#: src/cryptsetup.c:1241 src/cryptsetup.c:1314 src/cryptsetup.c:1969 -#: src/cryptsetup.c:2677 src/cryptsetup.c:2800 src/integritysetup.c:233 +#: src/cryptsetup.c:353 src/cryptsetup.c:1142 src/cryptsetup.c:1194 +#: src/cryptsetup.c:1313 src/cryptsetup.c:1386 src/cryptsetup.c:2033 +#: src/cryptsetup.c:2759 src/cryptsetup.c:2883 src/integritysetup.c:243 msgid "Operation aborted.\n" msgstr "Радња је обустављена.\n" -#: src/cryptsetup.c:376 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "Захтевана је опција „--key-file“." -#: src/cryptsetup.c:429 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "Унесите „VeraCrypt PIM“: " -#: src/cryptsetup.c:438 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "Неисправна „PIM“ вредност: грешка обраде." -#: src/cryptsetup.c:441 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "Неисправна „PIM“ вредност: 0." -#: src/cryptsetup.c:444 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "Неисправна „PIM“ вредност: изван опсега." -#: src/cryptsetup.c:467 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "Није откривено заглавље уређаја са овом пропусном речи." -#: src/cryptsetup.c:536 +#: src/cryptsetup.c:581 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "Уређај „%s“ није исправан „BITLK“ уређај." -#: src/cryptsetup.c:571 +#: src/cryptsetup.c:616 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1742,68 +1770,68 @@ "који омогућава приступ шифрованој партицији без лозинке.\n" "Овај избачај треба увек бити смештен шифрован на безбедном месту." -#: src/cryptsetup.c:668 +#: src/cryptsetup.c:713 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "Уређај „%s“ је још увек активан и заказан за одложено уклањање.\n" -#: src/cryptsetup.c:696 +#: src/cryptsetup.c:741 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "Сразмеравање активног уређаја захтева кључ волумена у привеску кључева али је постављена „--disable-keyring“ опција." -#: src/cryptsetup.c:833 +#: src/cryptsetup.c:884 msgid "Benchmark interrupted." msgstr "Оцењивање је прекинуто." -#: src/cryptsetup.c:854 +#: src/cryptsetup.c:905 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "„PBKDF2-%-9s“ Н/Д\n" -#: src/cryptsetup.c:856 +#: src/cryptsetup.c:907 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "„PBKDF2-%-9s“ %7u понављања у секунди за %zu-битни кључ\n" -#: src/cryptsetup.c:870 +#: src/cryptsetup.c:921 #, c-format msgid "%-10s N/A\n" msgstr "%-10s Н/Д\n" -#: src/cryptsetup.c:872 +#: src/cryptsetup.c:923 #, c-format msgid "%-10s %4u iterations, %5u memory, %1u parallel threads (CPUs) for %zu-bit key (requested %u ms time)\n" msgstr "%-10s %4u понављања, %5u меморије, %1u паралелних нити (процесора) за %zu-битни кључ (захтева се %u ms време)\n" -#: src/cryptsetup.c:896 +#: src/cryptsetup.c:947 msgid "Result of benchmark is not reliable." msgstr "Резултат оцењивања није поуздан." -#: src/cryptsetup.c:946 +#: src/cryptsetup.c:997 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Пробе су приближне користећи само меморију (без УИ смештаја).\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:966 +#: src/cryptsetup.c:1017 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*s Алгоритам | Кључ | Шифровање | Дешифровање\n" -#: src/cryptsetup.c:970 +#: src/cryptsetup.c:1021 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "Шифрер „%s“ (са %i битним кључем) није доступан." #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:989 +#: src/cryptsetup.c:1040 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "# Алгоритам | Кључ | Шифровање | Дешифровање\n" -#: src/cryptsetup.c:998 +#: src/cryptsetup.c:1049 msgid "N/A" msgstr "Недоступно" -#: src/cryptsetup.c:1078 +#: src/cryptsetup.c:1135 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1811,19 +1839,19 @@ "Изгледа да уређај не захтева опоравак поновног шифровања.\n" "Да ли желите да наставите?" -#: src/cryptsetup.c:1084 +#: src/cryptsetup.c:1141 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "Да наставим са опоравком ЛУКС2 поновног шифровања?" -#: src/cryptsetup.c:1093 +#: src/cryptsetup.c:1150 msgid "Enter passphrase for reencryption recovery: " msgstr "Унесите пропусну реч за опоравак поновног шифровања: " -#: src/cryptsetup.c:1136 +#: src/cryptsetup.c:1193 msgid "Really try to repair LUKS device header?" msgstr "Стварно да покушам да поправим заглавље ЛУКС уређаја?" -#: src/cryptsetup.c:1155 src/integritysetup.c:146 +#: src/cryptsetup.c:1212 src/integritysetup.c:158 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" @@ -1831,104 +1859,108 @@ "Бришем уређај да бих започео суму провере целовитости.\n" "Можете прекинути ово притиском на „CTRL+c“ (остатак необрисаног уређаја садржаће неисправну суму провере).\n" -#: src/cryptsetup.c:1177 src/integritysetup.c:168 +#: src/cryptsetup.c:1234 src/integritysetup.c:180 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "Не могу да деактивирам привремени уређај „%s“." -#: src/cryptsetup.c:1226 +#: src/cryptsetup.c:1298 msgid "Integrity option can be used only for LUKS2 format." msgstr "Опција целовитости се може користити само за ЛУКС2 запис." -#: src/cryptsetup.c:1231 src/cryptsetup.c:1291 +#: src/cryptsetup.c:1303 src/cryptsetup.c:1363 msgid "Unsupported LUKS2 metadata size options." msgstr "Неподржана опција величине ЛУКС2 метаподатака." -#: src/cryptsetup.c:1248 +#: src/cryptsetup.c:1312 +msgid "Header file does not exist, do you want to create it?" +msgstr "Датотека заглавља не постоји, да ли желите да је направите?" + +#: src/cryptsetup.c:1320 #, c-format msgid "Cannot create header file %s." msgstr "Не могу да направим датотеку заглавља „%s“." -#: src/cryptsetup.c:1271 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:1343 src/integritysetup.c:206 src/integritysetup.c:214 +#: src/integritysetup.c:223 src/integritysetup.c:296 src/integritysetup.c:304 +#: src/integritysetup.c:314 msgid "No known integrity specification pattern detected." msgstr "Није откривен познат образац одреднице целовитости." -#: src/cryptsetup.c:1284 +#: src/cryptsetup.c:1356 #, c-format msgid "Cannot use %s as on-disk header." msgstr "Не могу да користим „%s“ као заглавље на-диску." -#: src/cryptsetup.c:1308 src/integritysetup.c:227 +#: src/cryptsetup.c:1380 src/integritysetup.c:237 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "Ово ће неповратно да препише податке на „%s“." -#: src/cryptsetup.c:1349 src/cryptsetup.c:1683 src/cryptsetup.c:1750 -#: src/cryptsetup.c:1852 src/cryptsetup.c:1918 src/cryptsetup_reencrypt.c:553 +#: src/cryptsetup.c:1413 src/cryptsetup.c:1747 src/cryptsetup.c:1814 +#: src/cryptsetup.c:1916 src/cryptsetup.c:1982 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "Нисам успео да подесим „pbkdf“ параметре." -#: src/cryptsetup.c:1434 +#: src/cryptsetup.c:1498 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "Смањени померај података је допуштен само за откачена ЛУКС заглавља." -#: src/cryptsetup.c:1445 src/cryptsetup.c:1756 +#: src/cryptsetup.c:1509 src/cryptsetup.c:1820 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "Не могу да одредим величину кључа за ЛУКС без утора кључа, користите „--key-size“ опцију." -#: src/cryptsetup.c:1483 +#: src/cryptsetup.c:1547 msgid "Device activated but cannot make flags persistent." msgstr "Уређај је активиран али не могу да учиним заставице трајним." -#: src/cryptsetup.c:1564 src/cryptsetup.c:1634 +#: src/cryptsetup.c:1628 src/cryptsetup.c:1698 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "Утор кључа „%d“ је изабран за брисање." -#: src/cryptsetup.c:1576 src/cryptsetup.c:1637 +#: src/cryptsetup.c:1640 src/cryptsetup.c:1701 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "Ово је последњи утор кључа. Уређај ће постати неупотребљив након чишћења овог кључа." -#: src/cryptsetup.c:1577 +#: src/cryptsetup.c:1641 msgid "Enter any remaining passphrase: " msgstr "Унесите неку преосталу пропусну реч: " -#: src/cryptsetup.c:1578 src/cryptsetup.c:1639 +#: src/cryptsetup.c:1642 src/cryptsetup.c:1703 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Радња је прекинута, утор кључа НИЈЕ обрисан.\n" -#: src/cryptsetup.c:1616 +#: src/cryptsetup.c:1680 msgid "Enter passphrase to be deleted: " msgstr "Унесите пропусну реч за брисање: " -#: src/cryptsetup.c:1697 src/cryptsetup.c:1771 src/cryptsetup.c:1805 +#: src/cryptsetup.c:1761 src/cryptsetup.c:1835 src/cryptsetup.c:1869 msgid "Enter new passphrase for key slot: " msgstr "Унесите нову пропусну реч за утор кључа: " -#: src/cryptsetup.c:1788 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1852 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "Унесите неку постојећу пропусну реч: " -#: src/cryptsetup.c:1856 +#: src/cryptsetup.c:1920 msgid "Enter passphrase to be changed: " msgstr "Унесите пропусну реч за мењање: " -#: src/cryptsetup.c:1872 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1936 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "Унесите нову пропусну реч: " -#: src/cryptsetup.c:1922 +#: src/cryptsetup.c:1986 msgid "Enter passphrase for keyslot to be converted: " msgstr "Унесите пропусну реч за утор кључа за претварање: " -#: src/cryptsetup.c:1946 +#: src/cryptsetup.c:2010 msgid "Only one device argument for isLuks operation is supported." msgstr "Подржан је само један аргумент уређаја за радњу „isLuks“." -#: src/cryptsetup.c:1996 +#: src/cryptsetup.c:2060 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -1938,12 +1970,12 @@ "који омогућава приступ шифрованој партицији без лозинке.\n" "Овај избачај треба бити смештен шифрован на безбедном месту." -#: src/cryptsetup.c:2061 +#: src/cryptsetup.c:2125 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "Утор кључа %d не садржи несвезани кључ." -#: src/cryptsetup.c:2067 +#: src/cryptsetup.c:2131 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -1951,30 +1983,40 @@ "Избачај заглавља са кључем волумена је осетљив податак\n" "Овај избачај треба увек бити смештен шифрован на безбедном месту." -#: src/cryptsetup.c:2202 src/cryptsetup.c:2223 +#: src/cryptsetup.c:2220 src/cryptsetup.c:2249 +#, c-format +msgid "%s is not active %s device name." +msgstr "„%s“ није назив активног „%s“ уређаја." + +#: src/cryptsetup.c:2244 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "„%s“ није назив активног ЛУКС уређаја или недостаје заглавље." + +#: src/cryptsetup.c:2282 src/cryptsetup.c:2303 msgid "Option --header-backup-file is required." msgstr "Захтевана је опција „--header-backup-file“." -#: src/cryptsetup.c:2253 +#: src/cryptsetup.c:2333 #, c-format msgid "%s is not cryptsetup managed device." msgstr "„%s“ није уређај управљан криптоподешавањем." -#: src/cryptsetup.c:2264 +#: src/cryptsetup.c:2344 #, c-format msgid "Refresh is not supported for device type %s" msgstr "Освежавање није подржано за врсту уређаја „%s“" -#: src/cryptsetup.c:2306 +#: src/cryptsetup.c:2386 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Непозната врста уређаја метаподатака „%s“." -#: src/cryptsetup.c:2309 +#: src/cryptsetup.c:2389 msgid "Command requires device and mapped name as arguments." msgstr "Наредба захтева уређај и мапирани назив као аргумент." -#: src/cryptsetup.c:2331 +#: src/cryptsetup.c:2411 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -1983,95 +2025,95 @@ "Ова радња ће обрисати све уторе кључева на уређају „%s“.\n" "Уређај ће постати неупотребљив након ове радње." -#: src/cryptsetup.c:2338 +#: src/cryptsetup.c:2418 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Радња је прекинута, утори кључева НИСУ обрисани.\n" -#: src/cryptsetup.c:2375 +#: src/cryptsetup.c:2457 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Неисправна ЛУКС врста, само „luks1“ и „luks2“ су подржане." -#: src/cryptsetup.c:2393 +#: src/cryptsetup.c:2475 #, c-format msgid "Device is already %s type." msgstr "Уређај је већ „%s“ врсте." -#: src/cryptsetup.c:2398 +#: src/cryptsetup.c:2480 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Ова радња ће претворити „%s“ у „%s“ запис.\n" -#: src/cryptsetup.c:2404 +#: src/cryptsetup.c:2486 msgid "Operation aborted, device was NOT converted.\n" msgstr "Радња је прекинута, уређај НИЈЕ претворен.\n" -#: src/cryptsetup.c:2444 +#: src/cryptsetup.c:2526 msgid "Option --priority, --label or --subsystem is missing." msgstr "Недостаје опција „--priority“, „--label“ или „--subsystem“." -#: src/cryptsetup.c:2478 src/cryptsetup.c:2511 src/cryptsetup.c:2534 +#: src/cryptsetup.c:2560 src/cryptsetup.c:2593 src/cryptsetup.c:2616 #, c-format msgid "Token %d is invalid." msgstr "Скупина „%d“ није исправна." -#: src/cryptsetup.c:2481 src/cryptsetup.c:2537 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2619 #, c-format msgid "Token %d in use." msgstr "Скупина „%d“ је у употреби." -#: src/cryptsetup.c:2488 +#: src/cryptsetup.c:2570 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "Нисам успео да додам „luks2-keyring“ скупину „%d“." -#: src/cryptsetup.c:2497 src/cryptsetup.c:2559 +#: src/cryptsetup.c:2579 src/cryptsetup.c:2641 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "Нисам успео да доделим скупину „%d“ утору кључа %d." -#: src/cryptsetup.c:2514 +#: src/cryptsetup.c:2596 #, c-format msgid "Token %d is not in use." msgstr "Скупина „%d“ није у употреби." -#: src/cryptsetup.c:2549 +#: src/cryptsetup.c:2631 msgid "Failed to import token from file." msgstr "Нисам успео да увезем скупину из датотеке." -#: src/cryptsetup.c:2574 +#: src/cryptsetup.c:2656 #, c-format msgid "Failed to get token %d for export." msgstr "Нисам успео да добавим скупину „%d“ за извоз." -#: src/cryptsetup.c:2589 +#: src/cryptsetup.c:2671 msgid "--key-description parameter is mandatory for token add action." msgstr "„--key-description“ параметар је обавезан за радњу додавања скупине." -#: src/cryptsetup.c:2595 src/cryptsetup.c:2603 +#: src/cryptsetup.c:2677 src/cryptsetup.c:2685 msgid "Action requires specific token. Use --token-id parameter." msgstr "Радња захтева нарочиту скупину. Користите параметар „--token-id“." -#: src/cryptsetup.c:2608 +#: src/cryptsetup.c:2690 #, c-format msgid "Invalid token operation %s." msgstr "Неисправна радња скупине „%s“." -#: src/cryptsetup.c:2663 +#: src/cryptsetup.c:2745 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "Самооткривени активан дм уређај „%sд за уређај података „%s“.\n" -#: src/cryptsetup.c:2667 +#: src/cryptsetup.c:2749 #, c-format msgid "Device %s is not a block device.\n" msgstr "Уређај „%s“ није блок уређај.\n" -#: src/cryptsetup.c:2669 +#: src/cryptsetup.c:2751 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "Нисам успео да самооткријем држаче „%s“ уређаја." -#: src/cryptsetup.c:2671 +#: src/cryptsetup.c:2753 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2084,233 +2126,238 @@ "То може довести до оштећења података ако је уређај заправо активиран.\n" "Да покренете поновно шифровање у режиму на мрежи, користите параметар „--active-name“.\n" -#: src/cryptsetup.c:2751 +#: src/cryptsetup.c:2833 msgid "Invalid LUKS device type." msgstr "Неисправна врста ЛУКС уређаја." -#: src/cryptsetup.c:2756 +#: src/cryptsetup.c:2838 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." msgstr "Шифровање без откаченог заглавља (--header) није могуће без смањења величине уређаја података (--reduce-device-size)." -#: src/cryptsetup.c:2761 +#: src/cryptsetup.c:2843 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "Затражени померај података мора бити мањи или једнак половини параметра „--reduce-device-size“." -#: src/cryptsetup.c:2770 +#: src/cryptsetup.c:2852 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "Подешавам „--reduce-device-size“ вредност на двоструко од „--offset“ % (подеока).\n" -#: src/cryptsetup.c:2774 +#: src/cryptsetup.c:2856 msgid "Encryption is supported only for LUKS2 format." msgstr "Шифровање је подржано само за ЛУКС2 запис." -#: src/cryptsetup.c:2796 +#: src/cryptsetup.c:2879 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "Откривен је ЛУКС уређај на „%s“. Да ли желите опет да шифрујете тај ЛУКС уређај?" -#: src/cryptsetup.c:2811 +#: src/cryptsetup.c:2894 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "Привремена датотека заглавља „%s“ већ постоји. Прекидам." -#: src/cryptsetup.c:2813 src/cryptsetup.c:2820 +#: src/cryptsetup.c:2896 src/cryptsetup.c:2903 #, c-format msgid "Cannot create temporary header file %s." msgstr "Не могу да направим привремену датотеку заглавља „%s“." -#: src/cryptsetup.c:2884 +#: src/cryptsetup.c:2970 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "„%s/%s“ је сада активно и спремно за шифровање на мрежи.\n" -#: src/cryptsetup.c:3048 src/cryptsetup.c:3054 +#: src/cryptsetup.c:3134 src/cryptsetup.c:3140 msgid "Not enough free keyslots for reencryption." msgstr "Нема довољно слободних утора кључева за поновно шифровање." -#: src/cryptsetup.c:3074 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3160 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "Датотека кључа може бити коришћена само са „--key-slot“ или са тачно једним активним утором кључа." -#: src/cryptsetup.c:3083 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3169 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "Унесите пропусну реч за утор кључа %d: " -#: src/cryptsetup.c:3091 +#: src/cryptsetup.c:3177 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "Унесите пропусну реч за утор кључа %u: " -#: src/cryptsetup.c:3258 +#: src/cryptsetup.c:3222 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "Пребацујем шифрера података на „%s“.\n" + +#: src/cryptsetup.c:3355 msgid "Command requires device as argument." msgstr "Наредба захтева уређај као аргумент." -#: src/cryptsetup.c:3280 +#: src/cryptsetup.c:3377 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "Само је ЛУКС2 запис тренутно подржан. Користите алат „cryptsetup-reencrypt“ за ЛУКС1." -#: src/cryptsetup.c:3292 +#: src/cryptsetup.c:3389 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "Старо ванмрежно поновно шифровање је већ у току. Користите помагало „cryptsetup-reencrypt“." -#: src/cryptsetup.c:3302 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3399 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "Поновно шифровање уређаја са профилом целовитости није подржано." -#: src/cryptsetup.c:3310 +#: src/cryptsetup.c:3407 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "ЛУКС2 поновно шифровање је већ покренуто. Прекидам радњу." -#: src/cryptsetup.c:3314 +#: src/cryptsetup.c:3411 msgid "LUKS2 device is not in reencryption." msgstr "ЛУКС2 уређај није у поновном шифровању." -#: src/cryptsetup.c:3341 +#: src/cryptsetup.c:3438 msgid " [--type ] []" msgstr "<уређај> [--type <врста>] [<назив>]" -#: src/cryptsetup.c:3341 src/veritysetup.c:394 src/integritysetup.c:480 +#: src/cryptsetup.c:3438 src/veritysetup.c:408 src/integritysetup.c:494 msgid "open device as " msgstr "отвара уређај као <назив>" -#: src/cryptsetup.c:3342 src/cryptsetup.c:3343 src/cryptsetup.c:3344 -#: src/veritysetup.c:395 src/veritysetup.c:396 src/integritysetup.c:481 -#: src/integritysetup.c:482 +#: src/cryptsetup.c:3439 src/cryptsetup.c:3440 src/cryptsetup.c:3441 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:495 +#: src/integritysetup.c:496 msgid "" msgstr "<назив>" -#: src/cryptsetup.c:3342 src/veritysetup.c:395 src/integritysetup.c:481 +#: src/cryptsetup.c:3439 src/veritysetup.c:409 src/integritysetup.c:495 msgid "close device (remove mapping)" msgstr "затвара уређај (уклања мапирање)" -#: src/cryptsetup.c:3343 +#: src/cryptsetup.c:3440 msgid "resize active device" msgstr "мења величину радног уређаја" -#: src/cryptsetup.c:3344 +#: src/cryptsetup.c:3441 msgid "show device status" msgstr "показује стање уређаја" -#: src/cryptsetup.c:3345 +#: src/cryptsetup.c:3442 msgid "[--cipher ]" msgstr "[--cipher <шифрер>]" -#: src/cryptsetup.c:3345 +#: src/cryptsetup.c:3442 msgid "benchmark cipher" msgstr "шифрер оцењивања" -#: src/cryptsetup.c:3346 src/cryptsetup.c:3347 src/cryptsetup.c:3348 -#: src/cryptsetup.c:3349 src/cryptsetup.c:3350 src/cryptsetup.c:3357 -#: src/cryptsetup.c:3358 src/cryptsetup.c:3359 src/cryptsetup.c:3360 -#: src/cryptsetup.c:3361 src/cryptsetup.c:3362 src/cryptsetup.c:3363 -#: src/cryptsetup.c:3364 src/cryptsetup.c:3365 +#: src/cryptsetup.c:3443 src/cryptsetup.c:3444 src/cryptsetup.c:3445 +#: src/cryptsetup.c:3446 src/cryptsetup.c:3447 src/cryptsetup.c:3454 +#: src/cryptsetup.c:3455 src/cryptsetup.c:3456 src/cryptsetup.c:3457 +#: src/cryptsetup.c:3458 src/cryptsetup.c:3459 src/cryptsetup.c:3460 +#: src/cryptsetup.c:3461 src/cryptsetup.c:3462 msgid "" msgstr "<уређај>" -#: src/cryptsetup.c:3346 +#: src/cryptsetup.c:3443 msgid "try to repair on-disk metadata" msgstr "покушава да поправи метаподатке на-диску" -#: src/cryptsetup.c:3347 +#: src/cryptsetup.c:3444 msgid "reencrypt LUKS2 device" msgstr "ЛУКС2 уређај поновног шифровања" -#: src/cryptsetup.c:3348 +#: src/cryptsetup.c:3445 msgid "erase all keyslots (remove encryption key)" msgstr "брише све уторе кључева (уклања кључ шифровања)" -#: src/cryptsetup.c:3349 +#: src/cryptsetup.c:3446 msgid "convert LUKS from/to LUKS2 format" msgstr "претвара ЛУКС из/у ЛУКС2 запис" -#: src/cryptsetup.c:3350 +#: src/cryptsetup.c:3447 msgid "set permanent configuration options for LUKS2" msgstr "поставља трајне опције подешавања за ЛУКС2" -#: src/cryptsetup.c:3351 src/cryptsetup.c:3352 +#: src/cryptsetup.c:3448 src/cryptsetup.c:3449 msgid " []" msgstr "<уређај> [<нова датотека кључа>]" -#: src/cryptsetup.c:3351 +#: src/cryptsetup.c:3448 msgid "formats a LUKS device" msgstr "форматира ЛУКС уређај" -#: src/cryptsetup.c:3352 +#: src/cryptsetup.c:3449 msgid "add key to LUKS device" msgstr "додаје кључ у ЛУКС уређај" -#: src/cryptsetup.c:3353 src/cryptsetup.c:3354 src/cryptsetup.c:3355 +#: src/cryptsetup.c:3450 src/cryptsetup.c:3451 src/cryptsetup.c:3452 msgid " []" msgstr "<уређај> [<датотека кључа>]" -#: src/cryptsetup.c:3353 +#: src/cryptsetup.c:3450 msgid "removes supplied key or key file from LUKS device" msgstr "уклања достављени кључ или датотеку кључа из ЛУКС уређаја" -#: src/cryptsetup.c:3354 +#: src/cryptsetup.c:3451 msgid "changes supplied key or key file of LUKS device" msgstr "мења достављени кључ или датотеку кључа ЛУКС уређаја" -#: src/cryptsetup.c:3355 +#: src/cryptsetup.c:3452 msgid "converts a key to new pbkdf parameters" msgstr "претвара кључ у нове „pbkdf“ параметре" -#: src/cryptsetup.c:3356 +#: src/cryptsetup.c:3453 msgid " " msgstr "<уређај> <утор кључа>" -#: src/cryptsetup.c:3356 +#: src/cryptsetup.c:3453 msgid "wipes key with number from LUKS device" msgstr "брише кључ са бројем <утор кључа> са ЛУКС уређаја" -#: src/cryptsetup.c:3357 +#: src/cryptsetup.c:3454 msgid "print UUID of LUKS device" msgstr "исписује УЈИБ ЛУКС уређаја" -#: src/cryptsetup.c:3358 +#: src/cryptsetup.c:3455 msgid "tests for LUKS partition header" msgstr "испробава <уређај> за заглављем ЛУКС партиције" -#: src/cryptsetup.c:3359 +#: src/cryptsetup.c:3456 msgid "dump LUKS partition information" msgstr "исписује податке ЛУКС партиције" -#: src/cryptsetup.c:3360 +#: src/cryptsetup.c:3457 msgid "dump TCRYPT device information" msgstr "исписује податке ТКРИПТ уређаја" -#: src/cryptsetup.c:3361 +#: src/cryptsetup.c:3458 msgid "dump BITLK device information" msgstr "исписује податке „BITLK“ уређаја" -#: src/cryptsetup.c:3362 +#: src/cryptsetup.c:3459 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "Обуставља ЛУКС уређај и брише кључ (сви УИ су замрзнути)" -#: src/cryptsetup.c:3363 +#: src/cryptsetup.c:3460 msgid "Resume suspended LUKS device" msgstr "Наставља са обустављеним ЛУКС уређајем" -#: src/cryptsetup.c:3364 +#: src/cryptsetup.c:3461 msgid "Backup LUKS device header and keyslots" msgstr "Прави резерву заглавља „LUKS“ уређаја и утора кључева" -#: src/cryptsetup.c:3365 +#: src/cryptsetup.c:3462 msgid "Restore LUKS device header and keyslots" msgstr "Враћа заглавље „LUKS“ уређаја и уторе кључева" -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3463 msgid " " msgstr "<додај|уклони|увези|извези> <уређај>" -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3463 msgid "Manipulate LUKS2 tokens" msgstr "Управља ЛУКС2 скупинама" -#: src/cryptsetup.c:3384 src/veritysetup.c:412 src/integritysetup.c:498 +#: src/cryptsetup.c:3481 src/veritysetup.c:426 src/integritysetup.c:512 msgid "" "\n" " is one of:\n" @@ -2318,7 +2365,7 @@ "\n" "<радња> је једна од следећих:\n" -#: src/cryptsetup.c:3390 +#: src/cryptsetup.c:3487 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2330,7 +2377,7 @@ "\tотварање: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tзатвори: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3394 +#: src/cryptsetup.c:3491 #, c-format msgid "" "\n" @@ -2345,7 +2392,7 @@ "<утор кључа> је број ЛУКС утора кључа за мењање\n" "<датотека кључа> изборна датотека кључа за нови кључ за радњу „luksAddKey“\n" -#: src/cryptsetup.c:3401 +#: src/cryptsetup.c:3498 #, c-format msgid "" "\n" @@ -2354,7 +2401,7 @@ "\n" "Основни уграђени запис метаподатака је „%s“ (за „luksFormat“ радњу).\n" -#: src/cryptsetup.c:3406 +#: src/cryptsetup.c:3503 #, c-format msgid "" "\n" @@ -2371,7 +2418,7 @@ "Основни „PBKDF“ за ЛУКС2: %s\n" "\tВреме понављања: %d, Захтевана меморија: %dkB, Паралелне нити: %d\n" -#: src/cryptsetup.c:3417 +#: src/cryptsetup.c:3514 #, c-format msgid "" "\n" @@ -2386,443 +2433,451 @@ "\tобично: %s, Кључ: %d бита, Хеширање лозинке: %s\n" "\tЛУКС: %s, Кључ: %d бита, Хеширање ЛУКС заглавља: %s, РНГ: %s\n" -#: src/cryptsetup.c:3426 +#: src/cryptsetup.c:3523 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tЛУКС: Основна величина кључа са „XTS“ режимом (два унутрашња кључа) биће удвостручена.\n" -#: src/cryptsetup.c:3442 src/veritysetup.c:569 src/integritysetup.c:642 +#: src/cryptsetup.c:3541 src/veritysetup.c:587 src/integritysetup.c:664 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: захтева „%s“ као аргумент" -#: src/cryptsetup.c:3475 src/veritysetup.c:457 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3573 src/veritysetup.c:472 src/integritysetup.c:552 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "Приказује ову поруку помоћи" -#: src/cryptsetup.c:3476 src/veritysetup.c:458 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3574 src/veritysetup.c:473 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "Прикажите кратку поруку о коришћењу" -#: src/cryptsetup.c:3477 src/veritysetup.c:459 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3575 src/veritysetup.c:474 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "Исписује издање пакета" -#: src/cryptsetup.c:3481 src/veritysetup.c:463 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3579 src/veritysetup.c:478 src/integritysetup.c:558 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "Опције помоћи:" -#: src/cryptsetup.c:3482 src/veritysetup.c:464 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3580 src/veritysetup.c:479 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "Приказује опширније поруке о грешкама" -#: src/cryptsetup.c:3483 src/veritysetup.c:465 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3581 src/veritysetup.c:480 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "Приказује поруке прочишћавања" -#: src/cryptsetup.c:3484 +#: src/cryptsetup.c:3582 msgid "Show debug messages including JSON metadata" msgstr "Приказује поруке прочишћавања укључујући „JSON“ метаподатке" -#: src/cryptsetup.c:3485 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3583 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "Шифрер коришћен за шифровање диска (видите „/proc/crypto“)" -#: src/cryptsetup.c:3486 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3584 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "Хеш коришћен за стварање кључа шифровања из лозинке" -#: src/cryptsetup.c:3487 +#: src/cryptsetup.c:3585 msgid "Verifies the passphrase by asking for it twice" msgstr "Проверава лозинку тражећи је два пута" -#: src/cryptsetup.c:3488 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3586 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "Чита кључ из датотеке" -#: src/cryptsetup.c:3489 +#: src/cryptsetup.c:3587 msgid "Read the volume (master) key from file." msgstr "Чита (главни) кључ вочумена из датотеке." -#: src/cryptsetup.c:3490 +#: src/cryptsetup.c:3588 msgid "Dump volume (master) key instead of keyslots info" msgstr "Даје (главни) кључ волумена уместо података утора кључева" -#: src/cryptsetup.c:3491 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3589 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "Величина кључа шифровања" -#: src/cryptsetup.c:3491 src/cryptsetup.c:3551 src/integritysetup.c:562 -#: src/integritysetup.c:566 src/integritysetup.c:570 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3589 src/cryptsetup.c:3652 src/integritysetup.c:578 +#: src/integritysetup.c:582 src/integritysetup.c:586 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "БИТА" -#: src/cryptsetup.c:3492 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3590 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "Ограничава читање из датотеке кључа" -#: src/cryptsetup.c:3492 src/cryptsetup.c:3493 src/cryptsetup.c:3494 -#: src/cryptsetup.c:3495 src/cryptsetup.c:3498 src/cryptsetup.c:3548 -#: src/cryptsetup.c:3549 src/cryptsetup.c:3557 src/cryptsetup.c:3558 -#: 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:3590 src/cryptsetup.c:3591 src/cryptsetup.c:3592 +#: src/cryptsetup.c:3593 src/cryptsetup.c:3596 src/cryptsetup.c:3649 +#: src/cryptsetup.c:3650 src/cryptsetup.c:3658 src/cryptsetup.c:3659 +#: src/veritysetup.c:483 src/veritysetup.c:484 src/veritysetup.c:485 +#: src/veritysetup.c:488 src/veritysetup.c:489 src/integritysetup.c:567 +#: src/integritysetup.c:573 src/integritysetup.c:574 +#: src/cryptsetup_reencrypt.c:1653 src/cryptsetup_reencrypt.c:1654 +#: src/cryptsetup_reencrypt.c:1655 src/cryptsetup_reencrypt.c:1656 msgid "bytes" msgstr "бајта" -#: src/cryptsetup.c:3493 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3591 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "Број бајтова за прескакање у датотеци кључа" -#: src/cryptsetup.c:3494 +#: src/cryptsetup.c:3592 msgid "Limits the read from newly added keyfile" msgstr "Ограничава читање из новододате датотеке кључа" -#: src/cryptsetup.c:3495 +#: src/cryptsetup.c:3593 msgid "Number of bytes to skip in newly added keyfile" msgstr "Број бајтова за прескакање у новододатој датотеци кључа" -#: src/cryptsetup.c:3496 +#: src/cryptsetup.c:3594 msgid "Slot number for new key (default is first free)" msgstr "Број утора за нови кључ (основно је први слободан)" -#: src/cryptsetup.c:3497 +#: src/cryptsetup.c:3595 msgid "The size of the device" msgstr "Величина уређаја" -#: src/cryptsetup.c:3497 src/cryptsetup.c:3499 src/cryptsetup.c:3500 -#: src/cryptsetup.c:3506 src/integritysetup.c:552 src/integritysetup.c:559 +#: src/cryptsetup.c:3595 src/cryptsetup.c:3597 src/cryptsetup.c:3598 +#: src/cryptsetup.c:3604 src/integritysetup.c:568 src/integritysetup.c:575 msgid "SECTORS" msgstr "ОДЕЉЦИ" -#: src/cryptsetup.c:3498 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3596 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "Користи само наведену величину уређаја (занемарује остатак уређаја). ОВО ЈЕ ОПСАНО!" -#: src/cryptsetup.c:3499 +#: src/cryptsetup.c:3597 msgid "The start offset in the backend device" msgstr "Почетни померај у позадинском уређају" -#: src/cryptsetup.c:3500 +#: src/cryptsetup.c:3598 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Број одељака шифрованих података за прескакање на почетку" -#: src/cryptsetup.c:3501 +#: src/cryptsetup.c:3599 msgid "Create a readonly mapping" msgstr "Прави мапирање само за читање" -#: src/cryptsetup.c:3502 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3600 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "Не тражи потврђивање" -#: src/cryptsetup.c:3503 +#: src/cryptsetup.c:3601 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Време за упит међудејствене лозинке (у секундама)" -#: src/cryptsetup.c:3503 src/cryptsetup.c:3504 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3601 src/cryptsetup.c:3602 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "секунде" -#: src/cryptsetup.c:3504 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3602 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "Напредак освежења реда (у секундама)" -#: src/cryptsetup.c:3505 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "Колико често унос лозинке може бити покушан" -#: src/cryptsetup.c:3506 +#: src/cryptsetup.c:3604 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Поравнава утовар на границе одељка — за „luksFormat“" -#: src/cryptsetup.c:3507 +#: src/cryptsetup.c:3605 msgid "File with LUKS header and keyslots backup" msgstr "Датотека са резервом „LUKS“ заглавља и уторима кључева" -#: src/cryptsetup.c:3508 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3606 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "Користи „/dev/random“ за стварање кључа волумена" -#: src/cryptsetup.c:3509 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3607 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "Користи „/dev/urandom“ за стварање кључа волумена" -#: src/cryptsetup.c:3510 +#: src/cryptsetup.c:3608 msgid "Share device with another non-overlapping crypt segment" msgstr "Дели уређај са другим не-преклапајућим подеоком шифрера" -#: src/cryptsetup.c:3511 src/veritysetup.c:477 +#: src/cryptsetup.c:3609 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "УЈИБ уређаја за коришћење" -#: src/cryptsetup.c:3512 src/integritysetup.c:579 +#: src/cryptsetup.c:3610 src/integritysetup.c:598 msgid "Allow discards (aka TRIM) requests for device" msgstr "Допушта одбацивања (тј. СКРАЋЕЊЕ) захтева за уређај" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3611 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "Уређај или датотека са одвојеним ЛУКС заглављем" -#: src/cryptsetup.c:3514 +#: src/cryptsetup.c:3612 msgid "Do not activate device, just check passphrase" msgstr "Не покреће уређај, само проверава лозинку" -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3613 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Користи скривено заглавље (скривени ТКРИПТ уређај)" -#: src/cryptsetup.c:3516 +#: src/cryptsetup.c:3614 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "Уређај је ТКРИПТ диск система (са подизачем система)" -#: src/cryptsetup.c:3517 +#: src/cryptsetup.c:3615 msgid "Use backup (secondary) TCRYPT header" msgstr "Користи резервно (другоразредно) ТКРИПТ заглавље" -#: src/cryptsetup.c:3518 +#: src/cryptsetup.c:3616 msgid "Scan also for VeraCrypt compatible device" msgstr "Такође обавља преглед за уређајима сагласним са Веракриптом" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3617 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Лични умножавач понављања за „VeraCrypt“ сагласан уређај" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3618 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Пропитује лични умножавач понављања за „VeraCrypt“ сагласан уређај" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3619 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "Врста метаподатака уређаја: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3620 msgid "Disable password quality check (if enabled)" msgstr "Искључује проверу квалитета лозинке (ако је укључена)" -#: src/cryptsetup.c:3523 +#: src/cryptsetup.c:3621 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Користи опцију сагласности перформансе „same_cpu_crypt“ дм-крипта" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3622 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Користи опцију сагласности перформансе „submit_from_crypt_cpus“ дм-крипта" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3623 +msgid "Bypass dm-crypt workqueue and process read requests synchronously" +msgstr "Заобилази радни ред „dm-crypt“ и захтев читања процеса истовремено" + +#: src/cryptsetup.c:3624 +msgid "Bypass dm-crypt workqueue and process write requests synchronously" +msgstr "Заобилази радни ред „dm-crypt“ и захтев писања процеса истовремено" + +#: src/cryptsetup.c:3625 msgid "Device removal is deferred until the last user closes it" msgstr "Уклањање уређаја је одложено све док га последњи корисник не затвори" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3626 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "Користи опште закључавање за серијализацију меморије чврстог „PBKDF“ („OOM“ заобилазница)" -#: src/cryptsetup.c:3527 +#: src/cryptsetup.c:3627 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "Време „PBKDF“ понављања за ЛУКС (у милисекундама)" -#: src/cryptsetup.c:3527 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3627 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "милисекунде" -#: src/cryptsetup.c:3528 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3628 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "„PBKDF“ алгоритам (за ЛУКС2): argon2i, argon2id, pbkdf2" -#: src/cryptsetup.c:3529 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3629 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "Ограничење трошка „PBKDF“ меморије" -#: src/cryptsetup.c:3529 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3629 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "килобајта" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3630 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "Трошак „PBKDF“ паралеле" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3630 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "нити" -#: src/cryptsetup.c:3531 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3631 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "Трошак „PBKDF“ понављања (присилно, искључује оцењивање)" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3632 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Првенство утора кључа: ignore, normal, prefer" -#: src/cryptsetup.c:3533 +#: src/cryptsetup.c:3633 msgid "Disable locking of on-disk metadata" msgstr "Искључује закључавање метаподатака на-диску" -#: src/cryptsetup.c:3534 +#: src/cryptsetup.c:3634 msgid "Disable loading volume keys via kernel keyring" msgstr "Искључује учитавање кључева волумена путем привеска кернела" -#: src/cryptsetup.c:3535 +#: src/cryptsetup.c:3635 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Алгоритам целовитости података (само ЛУКС2)" -#: src/cryptsetup.c:3536 src/integritysetup.c:573 +#: src/cryptsetup.c:3636 src/integritysetup.c:589 msgid "Disable journal for integrity device" msgstr "Искључује журнал за уређај целовитости" -#: src/cryptsetup.c:3537 src/integritysetup.c:547 +#: src/cryptsetup.c:3637 src/integritysetup.c:563 msgid "Do not wipe device after format" msgstr "Не брише уређај након форматирања" -#: src/cryptsetup.c:3538 src/integritysetup.c:577 +#: src/cryptsetup.c:3638 src/integritysetup.c:593 msgid "Use inefficient legacy padding (old kernels)" msgstr "Користи неделотворно застарело допуњавање (стари кернели)" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3639 msgid "Do not ask for passphrase if activation by token fails" msgstr "Не тражи пропусну реч ако активација скупином не успе" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3640 msgid "Token number (default: any)" msgstr "Број скупине (основно: било који)" -#: src/cryptsetup.c:3541 +#: src/cryptsetup.c:3641 msgid "Key description" msgstr "Опис кључа" -#: src/cryptsetup.c:3542 +#: src/cryptsetup.c:3642 msgid "Encryption sector size (default: 512 bytes)" msgstr "Величина одељка шифровања (основно: 512 бајта)" -#: src/cryptsetup.c:3543 +#: src/cryptsetup.c:3643 +msgid "Use IV counted in sector size (not in 512 bytes)" +msgstr "Употреба IV је убројано у величину одељка (не у 512 бајта)" + +#: src/cryptsetup.c:3644 msgid "Set activation flags persistent for device" msgstr "Поставља трајним заставице активирања за уређај" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3645 msgid "Set label for the LUKS2 device" msgstr "Поставља натпис за ЛУКС2 уређај" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3646 msgid "Set subsystem label for the LUKS2 device" msgstr "Поставља натпис подсистема за ЛУКС2 уређај" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3647 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "Ствара или избацује неувезане (не додељене подеоке података) ЛУКС2 уторе кључа" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3648 msgid "Read or write the json from or to a file" msgstr "Чита или записује „json“ из или у датотеку" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3649 msgid "LUKS2 header metadata area size" msgstr "Величина области метаподатака ЛУКС2 заглавља" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3650 msgid "LUKS2 header keyslots area size" msgstr "Величина области утора кључева ЛУКС2 заглавља" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3651 msgid "Refresh (reactivate) device with new parameters" msgstr "Освежава (поново активира) уређај са новим параметрима" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3652 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "ЛУКС2 утор кључа: Величина кључа шифровања" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3653 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "ЛУКС2 утор кључа: Шифрер коришћен за шифровање исека кључа" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3654 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "Шифрује ЛУКС2 уређај (у месту шифровање)." -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3655 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "Дешифрује ЛУКС2 уређај (уклања шифровање)." -#: src/cryptsetup.c:3555 +#: src/cryptsetup.c:3656 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "Покреће ЛУКС2 поновно шифровање само у метаподацима." -#: src/cryptsetup.c:3556 +#: src/cryptsetup.c:3657 msgid "Resume initialized LUKS2 reencryption only." msgstr "Наставља само са започетим ЛУКС2 поновним шифровањем." -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3658 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "Смањује величину уређаја података (премешта померај података). ОВО ЈЕ ОПАСНО!" -#: src/cryptsetup.c:3558 +#: src/cryptsetup.c:3659 msgid "Maximal reencryption hotzone size." msgstr "Највећа величина вруће зоне поновног шифровања." -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3660 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "Врста гипкости вруће зоне поновног шифровања (checksum,journal,none)" -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3661 msgid "Reencryption hotzone checksums hash" msgstr "Хеш суме првере вруће зоне поновног шифровања" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3662 msgid "Override device autodetection of dm device to be reencrypted" msgstr "Заобилази самооткривање уређаја дм уређаја за поновно шифровање" -#: src/cryptsetup.c:3577 src/veritysetup.c:499 src/integritysetup.c:595 +#: src/cryptsetup.c:3678 src/veritysetup.c:515 src/integritysetup.c:614 msgid "[OPTION...] " msgstr "[ОПЦИЈА...] <радња> <посебност-радње>" -#: src/cryptsetup.c:3628 src/veritysetup.c:533 src/integritysetup.c:606 +#: src/cryptsetup.c:3733 src/veritysetup.c:551 src/integritysetup.c:625 msgid "Argument missing." msgstr "Недостаје аргумент <радња>." -#: src/cryptsetup.c:3697 src/veritysetup.c:564 src/integritysetup.c:637 +#: src/cryptsetup.c:3803 src/veritysetup.c:582 src/integritysetup.c:659 msgid "Unknown action." msgstr "Непозната радња." -#: src/cryptsetup.c:3707 -msgid "Parameter --refresh is only allowed with open or refresh commands." -msgstr "Параметар „--refresh“ је дозвољен само са наредбама „open“ или „refresh“." - -#: src/cryptsetup.c:3712 +#: src/cryptsetup.c:3813 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "Опције „--refresh“ и „--test-passphrase“ се узајамно искључују." -#: src/cryptsetup.c:3717 +#: src/cryptsetup.c:3818 msgid "Option --deferred is allowed only for close command." msgstr "Опција „--deferred“ је допуштена само за наредбу затварања." -#: src/cryptsetup.c:3722 +#: src/cryptsetup.c:3823 msgid "Option --shared is allowed only for open of plain device." msgstr "Опција „--shared“ је допуштена само за отварање обичног уређаја." -#: src/cryptsetup.c:3727 src/integritysetup.c:654 +#: src/cryptsetup.c:3828 src/integritysetup.c:676 msgid "Option --allow-discards is allowed only for open operation." msgstr "Опција „--allow-discards“ је допуштена само за радњу отварања." -#: src/cryptsetup.c:3732 +#: src/cryptsetup.c:3833 msgid "Option --persistent is allowed only for open operation." msgstr "Опција „--persistent“ је допуштена само за радњу отварања." -#: src/cryptsetup.c:3737 +#: src/cryptsetup.c:3838 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "Опција „--serialize-memory-hard-pbkdf“ је допуштена само за радњу отварања." -#: src/cryptsetup.c:3742 +#: src/cryptsetup.c:3843 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "Опција „--persistent“ није допуштена са опцијом „--test-passphrase“." -#: src/cryptsetup.c:3752 +#: src/cryptsetup.c:3853 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2830,251 +2885,259 @@ "Опција „--key-size“ је допуштена само за „luksFormat“, „luksAddKey“, отварање\n" "и оцењивање. Да ограничите читање из датотеке кључа користите „--keyfile-size=(бајтова)." -#: src/cryptsetup.c:3758 +#: src/cryptsetup.c:3859 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "Опција „--integrity“ је допуштена само за „luksFormat“ (ЛУКС2)." -#: src/cryptsetup.c:3763 +#: src/cryptsetup.c:3864 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "Опција „--integrity-no-wipe“ се може користити само за радњу форматирања са проширењем целовитости." -#: src/cryptsetup.c:3769 +#: src/cryptsetup.c:3870 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "Опције „--label“ и „--subsystem“ су допуштене само за „luksFormat“ и „config LUKS2“." -#: src/cryptsetup.c:3775 +#: src/cryptsetup.c:3876 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "Опција „--test-passphrase“ је допуштена само за отварање ЛУКС, „TCRYPT“ и „BITLK“ уређаја." -#: src/cryptsetup.c:3780 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3881 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "Величина кључа мора бити умножак од 8 бита" -#: src/cryptsetup.c:3786 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3887 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "Утор кључа није исправан." -#: src/cryptsetup.c:3793 +#: src/cryptsetup.c:3894 msgid "Option --key-file takes precedence over specified key file argument." msgstr "Опција „--key-file“ има првенство над наведеним аргументом датотеке кључа." -#: src/cryptsetup.c:3800 src/veritysetup.c:576 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3901 src/veritysetup.c:594 src/integritysetup.c:685 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "Негативан број за опцију није допуштен." -#: src/cryptsetup.c:3804 +#: src/cryptsetup.c:3905 msgid "Only one --key-file argument is allowed." msgstr "Дозвољен је само један аргумент „--key-file“." -#: src/cryptsetup.c:3808 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3909 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "Дозвољена је само једна опција „--use-[u]random“." -#: src/cryptsetup.c:3812 +#: src/cryptsetup.c:3913 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "Опција „--use-[u]random“ је допуштена само за „luksFormat“." -#: src/cryptsetup.c:3816 +#: src/cryptsetup.c:3917 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "Опција „--uuid“ је допуштена само за „luksFormat“ и „luksUUID“." -#: src/cryptsetup.c:3820 +#: src/cryptsetup.c:3921 msgid "Option --align-payload is allowed only for luksFormat." msgstr "Опција „--align-payload“ је допуштена само за „luksFormat“." -#: src/cryptsetup.c:3824 +#: src/cryptsetup.c:3925 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Опције „--luks2-metadata-size“ и „--opt-luks2-keyslots-size“ су допуштене само за „luksFormat“ са ЛУКС-ом2." -#: src/cryptsetup.c:3829 +#: src/cryptsetup.c:3930 msgid "Invalid LUKS2 metadata size specification." msgstr "Неисправна одредба величине ЛУКС2 метаподатака." -#: src/cryptsetup.c:3833 +#: src/cryptsetup.c:3934 msgid "Invalid LUKS2 keyslots size specification." msgstr "Неисправна одредба величине ЛУКС2 утора кључева." -#: src/cryptsetup.c:3837 +#: src/cryptsetup.c:3938 msgid "Options --align-payload and --offset cannot be combined." msgstr "Опције „--align-payload“ и „--offset“ се не могу комбиновати." -#: src/cryptsetup.c:3843 +#: src/cryptsetup.c:3944 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "Опција „--skip“ је подржана само за отварање обичних и упетљаних уређаја." -#: src/cryptsetup.c:3850 +#: src/cryptsetup.c:3951 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "Опција „--offset“ је подржана само за отварање обичних и упетљаних уређаја, „luksFormat“ и поновно шифровање уређаја." -#: src/cryptsetup.c:3856 +#: src/cryptsetup.c:3957 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "Опција „--tcrypt-hidden“, „--tcrypt-system“ или „--tcrypt-backup“ је подржана само за ТКРИПТ уређај." -#: src/cryptsetup.c:3861 +#: src/cryptsetup.c:3962 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "Опција „--tcrypt-hidden“ не може бити обједињена са „--allow-discards“." -#: src/cryptsetup.c:3866 +#: src/cryptsetup.c:3967 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "Опција „--veracrypt“ је подржана само за ТКРИПТ уређај." -#: src/cryptsetup.c:3872 +#: src/cryptsetup.c:3973 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "Достављен је неисправан аргумент за параметар „--veracrypt-pim“." -#: src/cryptsetup.c:3876 +#: src/cryptsetup.c:3977 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "Опција „--veracrypt-pim“ је подржана само за „VeraCrypt“ сагласне уређаје." -#: src/cryptsetup.c:3884 +#: src/cryptsetup.c:3985 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "Опција „--veracrypt-query-pim“ је подржана само за „VeraCrypt“ сагласне уређаје." -#: src/cryptsetup.c:3888 +#: src/cryptsetup.c:3989 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "Опције „--veracrypt-pim“ и „--veracrypt-query-pim“ се узајамно искључују." -#: src/cryptsetup.c:3895 +#: src/cryptsetup.c:3996 msgid "Option --priority can be only ignore/normal/prefer." msgstr "Опција „--priority“ може бити само „ignore/normal/prefer“." -#: src/cryptsetup.c:3900 src/cryptsetup.c:3932 +#: src/cryptsetup.c:4001 src/cryptsetup.c:4039 msgid "Keyslot specification is required." msgstr "Одредба утора кључа је потребна." -#: src/cryptsetup.c:3905 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "Функција произилажења кључа заснованог на пропусној речи (PBKDF) може бити само „pbkdf2“ или „argon2i/argon2id“." -#: src/cryptsetup.c:3910 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4011 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "„PBKDF“ присиљена понављања се не могу комбиновати са опцијом времена понављања." -#: src/cryptsetup.c:3916 +#: src/cryptsetup.c:4017 msgid "Sector size option is not supported for this command." msgstr "Опција величине сектора није подржана за ову наредбу." -#: src/cryptsetup.c:3927 +#: src/cryptsetup.c:4029 +msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." +msgstr "Опција великих IV одељака је подржана само за отварање обичних уређаја са величином одељка већом од 512 бајта." + +#: src/cryptsetup.c:4034 msgid "Key size is required with --unbound option." msgstr "Величина кључа је потребна са опцијом „--unbound“." -#: src/cryptsetup.c:3937 +#: src/cryptsetup.c:4044 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "Опција „--unbound“ се може користити само са радњама „luksAddKey“ и „luksDump“." -#: src/cryptsetup.c:3942 +#: src/cryptsetup.c:4049 msgid "Option --refresh may be used only with open action." msgstr "Опција „--refresh“ се може користити само са радњом отварања." -#: src/cryptsetup.c:3953 +#: src/cryptsetup.c:4060 msgid "Cannot disable metadata locking." msgstr "Не могу да искључим закључавање метаподатака." -#: src/cryptsetup.c:3963 +#: src/cryptsetup.c:4071 msgid "Invalid max reencryption hotzone size specification." msgstr "Неисправна одредба највеће величине вруће зоне поновног шифровања." -#: src/cryptsetup.c:3971 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4079 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "Неисправна одредба величине уређаја." -#: src/cryptsetup.c:3974 +#: src/cryptsetup.c:4082 msgid "Maximum device reduce size is 1 GiB." msgstr "Највећа величина смањења уређаја је 1 GiB." -#: src/cryptsetup.c:3977 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4085 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "Величина смањивања мора бити умножак одељка од 512 бајта." -#: src/cryptsetup.c:3982 +#: src/cryptsetup.c:4090 msgid "Invalid data size specification." msgstr "Неисправна одредба величине података." -#: src/cryptsetup.c:3987 +#: src/cryptsetup.c:4095 msgid "Reduce size overflow." msgstr "Прекорачење величине смањења." -#: src/cryptsetup.c:3991 +#: src/cryptsetup.c:4099 msgid "LUKS2 decryption requires option --header." msgstr "ЛУКС2 дешифровање захтева опцију „--header“." -#: src/cryptsetup.c:3995 +#: src/cryptsetup.c:4103 msgid "Device size must be multiple of 512 bytes sector." msgstr "Величина уређаја мора бити умножак одељка од 512 бајта." -#: src/cryptsetup.c:3999 +#: src/cryptsetup.c:4107 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "Опције „--reduce-device-size“ и „--data-size“ се не могу комбиновати." -#: src/cryptsetup.c:4003 +#: src/cryptsetup.c:4111 msgid "Options --device-size and --size cannot be combined." msgstr "Опције „--device-size“ и „--size“ се не могу комбиновати." -#: src/veritysetup.c:66 +#: src/cryptsetup.c:4115 +msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." +msgstr "Опције „--keyslot-cipher“ и „--keyslot-key-size“ се морају користити заједно." + +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "Наведена је неисправна ниска присолка." -#: src/veritysetup.c:97 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "Не могу да направим хеш слику „%s“ ради уписа." -#: src/veritysetup.c:107 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "Не могу да направим „FEC“ слику „%s“ ради уписа." -#: src/veritysetup.c:179 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "Наведена је неисправна ниска хеша корена." -#: src/veritysetup.c:187 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "Неисправна датотека потписа „%s“." -#: src/veritysetup.c:194 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "Не могу да прочитам датотеку потписа „%s“." -#: src/veritysetup.c:392 +#: src/veritysetup.c:406 msgid " " msgstr "<уређај_података> <уређај_хеша>" -#: src/veritysetup.c:392 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:493 msgid "format device" msgstr "форматира уређај" -#: src/veritysetup.c:393 +#: src/veritysetup.c:407 msgid " " msgstr "<уређај_података> <уређај_хеша> <хеш_корена>" -#: src/veritysetup.c:393 +#: src/veritysetup.c:407 msgid "verify device" msgstr "проверава уређај" -#: src/veritysetup.c:394 +#: src/veritysetup.c:408 msgid " " msgstr "<уређај_података> <назив> <уређај_хеша> <хеш_корена>" -#: src/veritysetup.c:396 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:496 msgid "show active device status" msgstr "показује стање радног уређаја" -#: src/veritysetup.c:397 +#: src/veritysetup.c:411 msgid "" msgstr "<уређај_хеша>" -#: src/veritysetup.c:397 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:497 msgid "show on-disk information" msgstr "приказује податке на-диску" -#: src/veritysetup.c:416 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3089,7 +3152,7 @@ "<уређај_хеша> јесте уређај који садржи податке проверавања\n" "<хеш_корена> хеш кореног чвора на <уређају_хеша>\n" -#: src/veritysetup.c:423 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3100,126 +3163,134 @@ "Основни преведени параметри дм-тачности:\n" "\tХеш: %s, Блок података (бајта): %u, Блок хеша (бајта): %u, Величина присолка: %u, Запис хеша: %u\n" -#: src/veritysetup.c:466 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "Не користи суперблок тачности" -#: src/veritysetup.c:467 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Врста записа (1 — обично, 0 — изворни Хром ОС)" -#: src/veritysetup.c:467 +#: src/veritysetup.c:482 msgid "number" msgstr "број" -#: src/veritysetup.c:468 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "Величина блока на уређају података" -#: src/veritysetup.c:469 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "Величина блока на уређају хеша" -#: src/veritysetup.c:470 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "Бајтови „FEC“ парности" -#: src/veritysetup.c:471 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "Број блокова у датотеци података" -#: src/veritysetup.c:471 +#: src/veritysetup.c:486 msgid "blocks" msgstr "блокови" -#: 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:565 msgid "path" msgstr "путања" -#: src/veritysetup.c:473 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "Почетни померај на уређају хеша" -#: src/veritysetup.c:474 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "Почетни померај на „FEC“ уређају" -#: src/veritysetup.c:475 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "Алгоритам хеша" -#: src/veritysetup.c:475 +#: src/veritysetup.c:490 msgid "string" msgstr "ниска" -#: src/veritysetup.c:476 +#: src/veritysetup.c:491 msgid "Salt" msgstr "Присолак" -#: src/veritysetup.c:476 +#: src/veritysetup.c:491 msgid "hex string" msgstr "ниска хеша" -#: src/veritysetup.c:478 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "Путања до датотеке потписа хеша корена" -#: 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 msgid "Do not verify zeroed blocks" msgstr "Не проверава нулиране блокове" -#: 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 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "Опције „--ignore-corruption“, „--restart-on-corruption“ или „--ignore-zero-blocks“ су дозвољене само за радње отварања." -#: src/veritysetup.c:587 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "Опција „--root-hash-signature“ се може користити само за радњу отварања." -#: src/veritysetup.c:592 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "Опције „--ignore-corruption“ и „--restart-on-corruption“ се не могу користити заједно." -#: 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 "Опције „--panic-on-corruption“ и „--restart-on-corruption“ се не могу користити заједно." + +#: src/integritysetup.c:96 src/utils_password.c:312 #, c-format msgid "Cannot read keyfile %s." msgstr "Не могу да прочитам датотеку кључа „%s“." -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:100 src/utils_password.c:317 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "Не могу да прочитам %d бајта из датотеке кључа „%s“." -#: src/integritysetup.c:254 +#: src/integritysetup.c:267 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Форматирано ознаком величине %u, унутрашња целовитост „%s“.\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:493 src/integritysetup.c:497 msgid "" msgstr "<уређај_целовитости>" -#: src/integritysetup.c:480 +#: src/integritysetup.c:494 msgid " " msgstr "<уређај_целовитости> <назив>" -#: src/integritysetup.c:502 +#: src/integritysetup.c:516 #, c-format msgid "" "\n" @@ -3230,7 +3301,7 @@ "<назив> јесте уређај за стварање под „%s“\n" "<уређај_целовитости> јесте уређај који садржи податке са ознакама целовитости\n" -#: src/integritysetup.c:507 +#: src/integritysetup.c:521 #, c-format msgid "" "\n" @@ -3241,392 +3312,396 @@ "Основни уграђени параметри дм-целовитости:\n" "\tАлгоритам провере суме: %s\n" -#: src/integritysetup.c:549 +#: src/integritysetup.c:565 msgid "Path to data device (if separated)" msgstr "Путања до уређаја података (ако је одвојен)" -#: src/integritysetup.c:551 +#: src/integritysetup.c:567 msgid "Journal size" msgstr "Величина журнала" -#: src/integritysetup.c:552 +#: src/integritysetup.c:568 msgid "Interleave sectors" msgstr "Подеоци преплетања" -#: src/integritysetup.c:553 +#: src/integritysetup.c:569 msgid "Journal watermark" msgstr "Жиг журнала" -#: src/integritysetup.c:553 +#: src/integritysetup.c:569 msgid "percent" msgstr "проценат" -#: src/integritysetup.c:554 +#: src/integritysetup.c:570 msgid "Journal commit time" msgstr "Време предаје журнала" -#: src/integritysetup.c:554 src/integritysetup.c:556 +#: src/integritysetup.c:570 src/integritysetup.c:572 msgid "ms" msgstr "ms" -#: src/integritysetup.c:555 +#: src/integritysetup.c:571 msgid "Number of 512-byte sectors per bit (bitmap mode)." msgstr "Број 512-битних подеока по биту (режим битмапе)." -#: src/integritysetup.c:556 +#: src/integritysetup.c:572 msgid "Bitmap mode flush time" msgstr "Време испирања режима битмапе" -#: src/integritysetup.c:557 +#: src/integritysetup.c:573 msgid "Tag size (per-sector)" msgstr "Величина ознаке (по подеоку)" -#: src/integritysetup.c:558 +#: src/integritysetup.c:574 msgid "Sector size" msgstr "Величина сектора" -#: src/integritysetup.c:559 +#: src/integritysetup.c:575 msgid "Buffers size" msgstr "Величина међумеморија" -#: src/integritysetup.c:561 +#: src/integritysetup.c:577 msgid "Data integrity algorithm" msgstr "Алгоритам целовитости података" -#: src/integritysetup.c:562 +#: src/integritysetup.c:578 msgid "The size of the data integrity key" msgstr "Величина кључа целовитости података" -#: src/integritysetup.c:563 +#: src/integritysetup.c:579 msgid "Read the integrity key from a file" msgstr "Чита кључ целовитости из датотеке" -#: src/integritysetup.c:565 +#: src/integritysetup.c:581 msgid "Journal integrity algorithm" msgstr "Алгоритам целовитости журнала" -#: src/integritysetup.c:566 +#: src/integritysetup.c:582 msgid "The size of the journal integrity key" msgstr "Величина кључа целовитости журнала" -#: src/integritysetup.c:567 +#: src/integritysetup.c:583 msgid "Read the journal integrity key from a file" msgstr "Чита кључ целовитости журнала из датотеке" -#: src/integritysetup.c:569 +#: src/integritysetup.c:585 msgid "Journal encryption algorithm" msgstr "Алгоритам шифровања журнала" -#: src/integritysetup.c:570 +#: src/integritysetup.c:586 msgid "The size of the journal encryption key" msgstr "Величина кључа шифровања журнала" -#: src/integritysetup.c:571 +#: src/integritysetup.c:587 msgid "Read the journal encryption key from a file" msgstr "Чита кључ шифровања журнала из датотеке" -#: src/integritysetup.c:574 +#: src/integritysetup.c:590 msgid "Recovery mode (no journal, no tag checking)" msgstr "Режим опоравка (без журнала, без провере ознаке)" -#: src/integritysetup.c:575 +#: src/integritysetup.c:591 msgid "Use bitmap to track changes and disable journal for integrity device" msgstr "Користи битмапу да прати измене и да искључи журнал за уређај целовитости" -#: src/integritysetup.c:576 +#: src/integritysetup.c:592 msgid "Recalculate initial tags automatically." msgstr "Аутоматски поново израчунава почетне ознаке." -#: src/integritysetup.c:649 +#: src/integritysetup.c:595 +msgid "Do not protect superblock with HMAC (old kernels)" +msgstr "Не штити суперблок са „HMAC“-ом (стари кернели)" + +#: src/integritysetup.c:596 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "Допушта поновно израчунавање волумена са „HMAC“ кључевима (стари кернели)" + +#: src/integritysetup.c:671 msgid "Option --integrity-recalculate can be used only for open action." msgstr "Опција „--integrity-recalculate“ се може користити само за радњу отварања." -#: src/integritysetup.c:669 +#: src/integritysetup.c:691 msgid "Options --journal-size, --interleave-sectors, --sector-size, --tag-size and --no-wipe can be used only for format action." msgstr "Опције „--journal-size“, „--interleave-sectors“, „--sector-size“, „--tag-size“ и „--no-wipe“ се могу користити само за радњу форматирања." -#: src/integritysetup.c:675 +#: src/integritysetup.c:697 msgid "Invalid journal size specification." msgstr "Неисправна одредба величине журнала." -#: src/integritysetup.c:680 +#: src/integritysetup.c:702 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:707 msgid "Both journal integrity key file and key size options must be specified." msgstr "Мора бити наведена и опција датотеке кључа целовитости журнала и опција величине кључа." -#: src/integritysetup.c:691 +#: src/integritysetup.c:710 msgid "Journal integrity algorithm must be specified if journal integrity key is used." msgstr "Алгоритам целовитости журнала мора бити наведен ако се користи кључ целовитости журнала." -#: src/integritysetup.c:696 +#: src/integritysetup.c:715 msgid "Both journal encryption key file and key size options must be specified." msgstr "Мора бити наведена и опција датотеке кључа шифровања журнала и опција величине кључа." -#: src/integritysetup.c:699 +#: src/integritysetup.c:718 msgid "Journal encryption algorithm must be specified if journal encryption key is used." msgstr "Алгоритам шифровања журнала мора бити наведен ако се користи кључ шифровања журнала." -#: src/integritysetup.c:703 +#: src/integritysetup.c:722 msgid "Recovery and bitmap mode options are mutually exclusive." msgstr "Опције режима опоравка и битмапе се узајамно искључују." -#: src/integritysetup.c:707 +#: src/integritysetup.c:726 msgid "Journal options cannot be used in bitmap mode." msgstr "Опције журнала се не могу користити у режиму битмапе." -#: src/integritysetup.c:711 +#: src/integritysetup.c:730 msgid "Bitmap options can be used only in bitmap mode." msgstr "Опције битмапе се могу користити само у режиму битмапе." -#: src/cryptsetup_reencrypt.c:172 +#: src/cryptsetup_reencrypt.c:190 msgid "Reencryption already in-progress." msgstr "Поновно шифровање је већ у току." -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "Не могу изричито да отворим „%s“, уређај је у употреби." -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "Додела поређане меморије није успела." -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "Не могу да читам уређај „%s“." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "Означавам ЛУКС1 уређај „%s“ неупотребљивим." -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "Постављам заставицу ЛУКС2 ванмрежног поновног шифровања на уређају „%s“." -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "Не могу да пишем на уређају „%s“." -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "Не могу да запишем датотеку дневника поновног шифровања." -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "Не могу да прочитам датотеку дневника поновног шифровања." -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "Датотека дневника „%s“ постоји, настављам поновно шифровање.\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "Покрећем привремени уређај користећи старо ЛУКС заглавље." -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "Покрећем привремени уређај користећи ново ЛУКС заглавље." -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "Покретање привременог уређаја није успело." -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "Нисам успео да поставим померај података." -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "Нисам успео да поставим величину метаподатака." -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "Направљено је ново ЛУКС заглавље за уређај „%s“." -#: 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 "Ово издање „cryptsetup-reencrypt“ не може да ради са новом унутрашњом врстом скупине „%s“." -#: 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 msgid "Failed to write activation flags to new header." msgstr "Нисам успео да упишем заставице активирања у ново заглавље." -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "Нисам успео да прочитам потрепштине из заглавља резерве." -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "Направљена је резерва „%s“ заглавља за уређај „%s“." -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "Није успело прављење резерве ЛУКС заглавља." -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "Не могу да повратим „%s“ заглавље на уређају „%s“." -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "Повраћено је „%s“ заглавље на уређају „%s“." -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "Не могу да отворим привремени ЛУКС уређај." -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "Не могу да добавим величину уређаја." -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "УИ грешка за време поновног шифровања." -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "Достављени УУИД није исправан." -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "Не могу да отворим датотеку дневника поновног шифровања." -#: 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 "Измењени су „pbkdf“ параметри у утору кључа %i." -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "Величина блока поновног шифровања" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "MiB" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "Не мења кључ, нема поновног шифровања области података" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "Чита (главни) кључ волумена из датотеке" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "Време ПБКДФ2 понављања за ЛУКС (у милисекундама)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "Користи непосредни-уи приликом приступа уређајима" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "Користи ф-усаглашавање након сваког блока" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "Освежава датотеку дневника након сваког блока" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "Користи само овај утор (остали ће бити искључени)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "Прави ново заглавље на нешифрованом уређају" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "Трајно дешифрује уређај (уклања шифровање)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "УЈИБ коришћен за настављање дешифровања" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Врста ЛУКС метаподатака: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[ОПЦИЈА...] <уређај>" -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "Поновно шифровање ће изменити: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "кључ волумена" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "поставља хеш на " -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr ", поставља шифрера на " -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "Потребан је аргумент." -#: 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 "Само вредности између 1 MiB и 64 MiB су допуштене завеличину блока поновног шифровања." -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "Највећа величина смањења уређаја је 64 MiB." -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "Опција „--new“ се мора користити са „--reduce-device-size“ или „--header“." -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "Опција „--keep-key“ може да се користи само са „--hash“, „--iter-time“ или „--pbkdf-force-iterations“." -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "Опција „--new“ не може да се користи са „--decrypt“." -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "Опција „--decrypt“ није сагласна са наведеним параметрима." -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "Опција „--uuid“ је дозвољена само заједно са „--decrypt“." -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Неисправна лукс врста. Користите: „luks“, „luks1“ или „luks2“." @@ -3667,32 +3742,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "Наредба није успела са кодом %i (%s).\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "Утор кључа „%i“ је направљен." -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "Утор кључа „%i“ је откључан." -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "Утор кључа „%i“ је уклоњен." -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "Скупина „%i“ је направљена." -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "Скупина „%i“ је уклоњена." -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3700,55 +3775,55 @@ "\n" "Брисање је прекинуто." -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "УПОЗОРЕЊЕ: Уређај „%s“ већ садржи „%s“ потпис партиције.\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "УПОЗОРЕЊЕ: Уређај „%s“ већ садржи „%s“ потпис суперблока.\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "Нисам успео да покренем пробе потписа уређаја." -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "Нисам успео да добавим податке уређаја „%s“." -#: 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 "Уређај „%s“ је у употреби. Не могу да наставим са радњом форматирања." -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "Нисам успео да отворим датотеку „%s“ у режиму читања/писања." -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "Постојећи „%s“ потпис партиције (померај: % бајта) на уређају „%s“ биће обрисан." -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "Постојећи „%s“ потпис суперблока (померај: % бајта) на уређају „%s“ биће обрисан." -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "Нисам успео да обришем потпис уређаја." -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "Нисам успео да испробам уређај „%s“ за потписом." -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3775,46 +3850,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "Провера квалитета лозинке није успела: Лоша шифра (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:200 src/utils_password.c:215 msgid "Error reading passphrase from terminal." msgstr "Грешка читања пропусне речи из терминала." -#: src/utils_password.c:206 +#: src/utils_password.c:213 msgid "Verify passphrase: " msgstr "Провери пропусну реч: " -#: src/utils_password.c:213 +#: src/utils_password.c:220 msgid "Passphrases do not match." msgstr "Пропусне речи се не подударају." -#: src/utils_password.c:250 +#: src/utils_password.c:257 msgid "Cannot use offset with terminal input." msgstr "Не могу да користим померај са улазом терминала." -#: src/utils_password.c:253 +#: src/utils_password.c:260 #, c-format msgid "Enter passphrase: " msgstr "Унесите пропусну реч: " -#: src/utils_password.c:256 +#: src/utils_password.c:263 #, c-format msgid "Enter passphrase for %s: " msgstr "Унесите пропусну реч за „%s“: " -#: src/utils_password.c:287 +#: src/utils_password.c:294 msgid "No key available with this passphrase." msgstr "Нема доступног кључа са овом пропусном речју." -#: src/utils_password.c:289 +#: src/utils_password.c:296 msgid "No usable keyslot is available." msgstr "Нема доступног употребљивог утора кључа." -#: src/utils_password.c:328 +#: src/utils_password.c:338 #, c-format msgid "Cannot open keyfile %s for write." msgstr "Не могу да отворим датотеку кључа „%s“ за упис." -#: src/utils_password.c:335 +#: src/utils_password.c:345 #, c-format msgid "Cannot write to keyfile %s." msgstr "Не могу да пишем у датотеку кључа „%s“." @@ -3857,6 +3932,21 @@ msgid "Failed to write JSON file." msgstr "Нисам успео да упишем „JSON“ датотеку." +#~ msgid "WARNING: Locking directory %s/%s is missing!\n" +#~ msgstr "УПОЗОРЕЊЕ: Директоријум закључавања „%s/%s“ недостаје!\n" + +#~ msgid "Invalid size parameters for verity device." +#~ msgstr "Неисправни параметри величине за уређај тачности." + +#~ msgid "Integrity algorithm must be specified if integrity key is used." +#~ msgstr "Алгоритам целовитости мора бити наведен ако се користи кључ целовитости." + +#~ msgid "Wrong key size." +#~ msgstr "Погрешна величина кључа." + +#~ msgid "Parameter --refresh is only allowed with open or refresh commands." +#~ msgstr "Параметар „--refresh“ је дозвољен само са наредбама „open“ или „refresh“." + #~ msgid "Replaced with key slot %d.\n" #~ msgstr "Замењен је исеком кључа „%d“.\n" diff -Nru cryptsetup-2.3.4/po/sv.po cryptsetup-2.3.6/po/sv.po --- cryptsetup-2.3.4/po/sv.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/sv.po 2021-05-28 04:57:08.000000000 -0500 @@ -1,79 +1,85 @@ # Swedish translation for cryptsetup. -# Copyright © 2009 - 2017 Free Software Foundation, Inc. +# Copyright © 2009 - 2020 Free Software Foundation, Inc. # This file is distributed under the same license as the cryptsetup package. # Daniel Nylander , 2009. -# Josef Andersson , 2016, 2017, 2019. +# Josef Andersson , 2016, 2017, 2019, 2020, 2021 # msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.1.0\n" +"Project-Id-Version: cryptsetup 2.3.4-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2019-01-26 19:02+0100\n" -"PO-Revision-Date: 2019-05-17 16:51+0200\n" +"POT-Creation-Date: 2020-08-27 21:34+0200\n" +"PO-Revision-Date: 2021-01-04 22:51+0100\n" "Last-Translator: Josef Andersson \n" "Language-Team: Swedish \n" "Language: sv\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.2.1\n" +"X-Generator: Poedit 2.3\n" -#: lib/libdevmapper.c:336 +#: lib/libdevmapper.c:405 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "Det går inte att initiera device-mapper, kör som icke-root-användare." -#: lib/libdevmapper.c:339 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "Det går inte att initiera device-mapper. Är kärnmodulen dm_mod inläst?" -#: lib/libdevmapper.c:1010 +#: lib/libdevmapper.c:1149 msgid "Requested deferred flag is not supported." msgstr "Begärd flagga deferred stöds inte." -#: lib/libdevmapper.c:1077 +#: lib/libdevmapper.c:1216 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "DM-UUID för enheten %s förkortades." -#: lib/libdevmapper.c:1486 +#: lib/libdevmapper.c:1547 +msgid "Unknown dm target type." +msgstr "Okänd måltyp dm." + +#: lib/libdevmapper.c:1660 lib/libdevmapper.c:1665 lib/libdevmapper.c:1725 +#: lib/libdevmapper.c:1728 msgid "Requested dm-crypt performance options are not supported." msgstr "Begärd flagga för dm-crypt-prestanda stöds inte." -#: lib/libdevmapper.c:1493 +#: lib/libdevmapper.c:1672 lib/libdevmapper.c:1676 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Begärd flagga för dm-verity-dataintegritet stöds inte." -#: lib/libdevmapper.c:1497 +#: lib/libdevmapper.c:1680 msgid "Requested dm-verity FEC options are not supported." msgstr "Begärd flagga dm-verity FEC stöds inte." -#: lib/libdevmapper.c:1501 +#: lib/libdevmapper.c:1684 msgid "Requested data integrity options are not supported." msgstr "Begärd flagga för dataintegritet stöds inte." -#: lib/libdevmapper.c:1503 +#: lib/libdevmapper.c:1686 msgid "Requested sector_size option is not supported." msgstr "Begärd flagga sector_size stöds inte." -#: lib/libdevmapper.c:1508 +#: lib/libdevmapper.c:1691 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "Begärd automatisk beräkning av integritetstaggar stöds inte." -#: lib/libdevmapper.c:1534 -msgid "Requested dmcrypt performance options are not supported." -msgstr "Begärda flaggor för dmcrypt-prestanda stöds inte." - -#: lib/libdevmapper.c:1537 +#: lib/libdevmapper.c:1695 lib/libdevmapper.c:1731 lib/libdevmapper.c:1734 +#: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Discard/TRIM stöds inte." -#: lib/libdevmapper.c:2413 +#: lib/libdevmapper.c:1699 +msgid "Requested dm-integrity bitmap mode is not supported." +msgstr "Begärt dm-integrity bitmap-läge stöds inte." + +#: lib/libdevmapper.c:2663 #, c-format msgid "Failed to query dm-%s segment." msgstr "Misslyckades med att läsa dm-%s-segment." -#: lib/random.c:80 +#: lib/random.c:75 msgid "" "System is out of entropy while generating volume key.\n" "Please move mouse or type some text in another window to gather some random events.\n" @@ -81,489 +87,574 @@ "Systemet fick slut på entropi under generering av volymnyckeln.\n" "Flytta musen eller skriv in text i ett annat fönster för att samla några slumpmässiga händelser.\n" -#: lib/random.c:84 +#: lib/random.c:79 #, c-format msgid "Generating key (%d%% done).\n" msgstr "Genererar nyckel (%d%% done).\n" -#: lib/random.c:170 +#: lib/random.c:165 msgid "Running in FIPS mode." msgstr "Kör i FIPS-läge." -#: lib/random.c:176 +#: lib/random.c:171 msgid "Fatal error during RNG initialisation." msgstr "Ödesdigert fel under RNG-initiering." -#: lib/random.c:213 +#: lib/random.c:208 msgid "Unknown RNG quality requested." msgstr "Okänd RNG-kvalitet begärd." -#: lib/random.c:218 +#: lib/random.c:213 msgid "Error reading from RNG." msgstr "Fel vid läsning från RNG." -#: lib/setup.c:214 +#: lib/setup.c:229 msgid "Cannot initialize crypto RNG backend." msgstr "Det går inte att initiera RNG-krypteringsbakände." -#: lib/setup.c:220 +#: lib/setup.c:235 msgid "Cannot initialize crypto backend." msgstr "Det går inte att initiera krypteringsbakände." -#: lib/setup.c:251 lib/setup.c:1899 lib/verity/verity.c:123 +#: lib/setup.c:266 lib/setup.c:2046 lib/verity/verity.c:119 #, c-format msgid "Hash algorithm %s not supported." msgstr "Hashalgoritmen %s stöds inte." -#: lib/setup.c:254 lib/loopaes/loopaes.c:90 +#: lib/setup.c:269 lib/loopaes/loopaes.c:90 #, c-format msgid "Key processing error (using hash %s)." msgstr "Fel vid nyckelbearbetning (använder hash %s)." -#: lib/setup.c:315 lib/setup.c:342 +#: lib/setup.c:335 lib/setup.c:362 msgid "Cannot determine device type. Incompatible activation of device?" msgstr "Det går inte att avgöra enhetstyp. Inkompatibel aktivering av enhet?" -#: lib/setup.c:321 lib/setup.c:2892 +#: lib/setup.c:341 lib/setup.c:3050 msgid "This operation is supported only for LUKS device." msgstr "Denna åtgärd stöds endast av LUKS-enheter." -#: lib/setup.c:348 +#: lib/setup.c:368 msgid "This operation is supported only for LUKS2 device." msgstr "Denna åtgärd stöds endast av LUKS2-enheter." -#: lib/setup.c:396 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 msgid "All key slots full." msgstr "Alla nyckelplatser är upptagna." -#: lib/setup.c:407 +#: lib/setup.c:434 #, c-format msgid "Key slot %d is invalid, please select between 0 and %d." msgstr "Nyckelplats %d är ogiltig. Välj mellan 0 och %d." -#: lib/setup.c:413 +#: lib/setup.c:440 #, c-format msgid "Key slot %d is full, please select another one." msgstr "Nyckelplats %d är full. Välj en annan." -#: lib/setup.c:589 +#: lib/setup.c:525 lib/setup.c:2824 +msgid "Device size is not aligned to device logical block size." +msgstr "Storlek på enhet är inte justerad till enhetens logiska blockstorlek." + +#: lib/setup.c:624 #, c-format msgid "Header detected but device %s is too small." msgstr "Huvud identifierat men enheten %s är för liten." -#: lib/setup.c:626 +#: lib/setup.c:661 msgid "This operation is not supported for this device type." msgstr "Denna åtgärd stöds inte för denna enhetstyp." -#: lib/setup.c:791 lib/luks1/keymanage.c:481 +#: lib/setup.c:666 +msgid "Illegal operation with reencryption in-progress." +msgstr "Ogiltig åtgärd under pågående omkryptering." + +#: lib/setup.c:832 lib/luks1/keymanage.c:475 #, c-format msgid "Unsupported LUKS version %d." msgstr "LUKS-versionen %d stöds inte." -#: lib/setup.c:808 lib/setup.c:1403 lib/setup.c:1812 +#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 msgid "Detached metadata device is not supported for this crypt type." msgstr "Frånkopplad metadataenhet stöds ej av denna crypt-typ." -#: lib/setup.c:1288 lib/setup.c:2392 lib/setup.c:2464 lib/setup.c:2476 -#: lib/setup.c:2625 lib/setup.c:4021 +#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628 +#: lib/setup.c:2777 lib/setup.c:4517 #, c-format msgid "Device %s is not active." msgstr "Enheten %s är inte aktiv." -#: lib/setup.c:1310 +#: lib/setup.c:1444 #, c-format msgid "Underlying device for crypt device %s disappeared." msgstr "Underliggande enhet för krypteringsenhet %s försvann." -#: lib/setup.c:1388 +#: lib/setup.c:1524 msgid "Invalid plain crypt parameters." msgstr "Ogiltiga parametrar för vanlig kryptering." -#: lib/setup.c:1393 lib/setup.c:1802 src/integritysetup.c:72 +#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 msgid "Invalid key size." msgstr "Ogiltig nyckelstorlek." -#: lib/setup.c:1398 lib/setup.c:1807 lib/setup.c:2009 +#: lib/setup.c:1534 lib/setup.c:1954 lib/setup.c:2157 msgid "UUID is not supported for this crypt type." msgstr "UUID stöds inte för denna krypteringstyp." -#: lib/setup.c:1413 lib/setup.c:1603 src/cryptsetup.c:1045 +#: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 +#: src/cryptsetup.c:1238 src/cryptsetup.c:3945 msgid "Unsupported encryption sector size." msgstr "Stöder inte sektorstorleken för kryptering." -#: lib/setup.c:1421 lib/setup.c:1720 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 msgid "Device size is not aligned to requested sector size." msgstr "Storlek på enhet är inte justerad till begärd sektorstorlek." -#: lib/setup.c:1472 lib/setup.c:1591 +#: lib/setup.c:1608 lib/setup.c:1727 msgid "Can't format LUKS without device." msgstr "Det går inte att formatera LUKS utan enhet." -#: lib/setup.c:1478 lib/setup.c:1597 +#: lib/setup.c:1614 lib/setup.c:1733 msgid "Requested data alignment is not compatible with data offset." msgstr "Begärd datajustering är inte kompatibel med dataoffset." -#: lib/setup.c:1546 lib/setup.c:1715 +#: lib/setup.c:1682 lib/setup.c:1851 msgid "WARNING: Data offset is outside of currently available data device.\n" msgstr "VARNING: Dataoffset ligger utanför aktuell dataenhet.\n" -#: lib/setup.c:1556 lib/setup.c:1735 lib/setup.c:1754 lib/setup.c:2021 +#: lib/setup.c:1692 lib/setup.c:1879 lib/setup.c:1900 lib/setup.c:2169 #, c-format msgid "Cannot wipe header on device %s." msgstr "Det går inte att rensa huvudet på enheten %s." -#: lib/setup.c:1608 +#: lib/setup.c:1744 msgid "WARNING: The device activation will fail, dm-crypt is missing support for requested encryption sector size.\n" msgstr "VARNING: Enhetsaktiveringen kommer att misslyckas, dm-crypt saknar stöd för begärd krypteringsektorstorlek.\n" -#: lib/setup.c:1630 +#: lib/setup.c:1766 msgid "Volume key is too small for encryption with integrity extensions." msgstr "Volymnyckeln är för liten för kryptering med integritetstillägg." -#: lib/setup.c:1685 +#: lib/setup.c:1821 #, c-format msgid "Cipher %s-%s (key size %zd bits) is not available." msgstr "Chiffret %s-%s (nyckelstorlek %zd bitar) är inte tillgängligt." -#: lib/setup.c:1747 +#: lib/setup.c:1854 #, c-format -msgid "Cannot format device %s which is still in use." +msgid "WARNING: LUKS2 metadata size changed to % bytes.\n" +msgstr "VARNING: storlek på LUKS2-metadata ändrades till % byte.\n" + +#: lib/setup.c:1858 +#, c-format +msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" +msgstr "VARNING: storlek på LUKS2-nyckelplatsområde ändrades till % byte.\n" + +#: lib/setup.c:1882 lib/utils_device.c:834 lib/luks1/keyencryption.c:255 +#: lib/luks2/luks2_reencrypt.c:2356 lib/luks2/luks2_reencrypt.c:3367 +#, c-format +msgid "Device %s is too small." +msgstr "Enheten %s är för liten." + +#: lib/setup.c:1893 lib/setup.c:1919 +#, c-format +msgid "Cannot format device %s in use." msgstr "Det går inte att formatera enheten %s då den används." -#: lib/setup.c:1750 lib/setup.c:1775 +#: lib/setup.c:1896 lib/setup.c:1922 #, c-format msgid "Cannot format device %s, permission denied." msgstr "Det går inte att formatera enheten %s, behörighet nekad." -#: lib/setup.c:1762 lib/setup.c:2073 +#: lib/setup.c:1908 lib/setup.c:2229 #, c-format msgid "Cannot format integrity for device %s." msgstr "Det går inte att formatera integritet för enheten %s." -#: lib/setup.c:1772 -#, c-format -msgid "Cannot format device %s in use." -msgstr "Det går inte att formatera enheten %s då den används." - -#: lib/setup.c:1779 +#: lib/setup.c:1926 #, c-format msgid "Cannot format device %s." msgstr "Det går inte att formatera enheten %s." -#: lib/setup.c:1797 +#: lib/setup.c:1944 msgid "Can't format LOOPAES without device." msgstr "Kan inte formatera LOOPAES utan enhet." -#: lib/setup.c:1842 +#: lib/setup.c:1989 msgid "Can't format VERITY without device." msgstr "Det går inte att formatera VERITY utan enhet." -#: lib/setup.c:1853 lib/verity/verity.c:106 +#: lib/setup.c:2000 lib/verity/verity.c:102 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "VERITY-hashtyp %d stöds inte." -#: lib/setup.c:1859 lib/verity/verity.c:114 +#: lib/setup.c:2006 lib/verity/verity.c:110 msgid "Unsupported VERITY block size." msgstr "VERITY-blockstorlek som inte stöds." -#: lib/setup.c:1864 lib/verity/verity.c:75 +#: lib/setup.c:2011 lib/verity/verity.c:74 msgid "Unsupported VERITY hash offset." msgstr "VERITY-hashoffset som inte stöds." -#: lib/setup.c:1869 +#: lib/setup.c:2016 msgid "Unsupported VERITY FEC offset." msgstr "VERITY-FEC-offset som inte stöds." -#: lib/setup.c:1893 +#: lib/setup.c:2040 msgid "Data area overlaps with hash area." msgstr "Dataområde spiller över på hashområdet." -#: lib/setup.c:1918 +#: lib/setup.c:2065 msgid "Hash area overlaps with FEC area." msgstr "Hashområde spiller över på FEC-mrådet." -#: lib/setup.c:1925 +#: lib/setup.c:2072 msgid "Data area overlaps with FEC area." msgstr "Dataområde spiller över på FEC-mrådet." -#: lib/setup.c:2130 +#: lib/setup.c:2208 +#, c-format +msgid "WARNING: Requested tag size %d bytes differs from %s size output (%d bytes).\n" +msgstr "VARNING: Begärd taggstorlek på %d byte skiljer sig från %s utdatastorlek (%d byte).\n" + +#: lib/setup.c:2286 #, c-format msgid "Unknown crypt device type %s requested." msgstr "Okänd typ av krypteringsenhet %s begärd." -#: lib/setup.c:2398 lib/setup.c:2470 lib/setup.c:2483 +#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 #, c-format msgid "Unsupported parameters on device %s." msgstr "Parametrar som inte stöds på enheten %s." -#: lib/setup.c:2404 lib/setup.c:2489 +#: lib/setup.c:2556 lib/setup.c:2641 lib/luks2/luks2_reencrypt.c:2408 +#: lib/luks2/luks2_reencrypt.c:2737 #, c-format msgid "Mismatching parameters on device %s." msgstr "Kan inte rensa huvudet på enheten %s." -#: lib/setup.c:2657 -msgid "Cannot resize loop device." -msgstr "Det går inte att ändra storlek på loop-enhet." +#: lib/setup.c:2661 +msgid "Crypt devices mismatch." +msgstr "Krypteringsenheter har matchningsfel." -#: lib/setup.c:2666 +#: lib/setup.c:2698 lib/setup.c:2703 lib/luks2/luks2_reencrypt.c:2054 +#: lib/luks2/luks2_reencrypt.c:3145 #, c-format -msgid "Device %s size is not aligned to requested sector size (%u bytes)." -msgstr "Storlek på enhet %s är inte justerad till begärd sektorstorlek (%u byte)." +msgid "Failed to reload device %s." +msgstr "Misslyckades med att läsa om enhet %s." -#: lib/setup.c:2725 +#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/luks2/luks2_reencrypt.c:2032 +#, c-format +msgid "Failed to suspend device %s." +msgstr "Misslyckades med att försätta enhet %s i vänteläge." + +#: lib/setup.c:2718 lib/luks2/luks2_reencrypt.c:2039 +#: lib/luks2/luks2_reencrypt.c:3080 lib/luks2/luks2_reencrypt.c:3149 +#, c-format +msgid "Failed to resume device %s." +msgstr "Misslyckades med att återuppta enhet %s." + +#: lib/setup.c:2732 +#, c-format +msgid "Fatal error while reloading device %s (on top of device %s)." +msgstr "Ödesdigert fel vid omläsning av enhet %s (ovanpå enhet %s)." + +#: lib/setup.c:2735 lib/setup.c:2737 +#, c-format +msgid "Failed to switch device %s to dm-error." +msgstr "Misslyckades med att växla enhet %s till dm-error." + +#: lib/setup.c:2809 +msgid "Cannot resize loop device." +msgstr "Det går inte att ändra storlek på loop-enhet." + +#: lib/setup.c:2882 msgid "Do you really want to change UUID of device?" msgstr "Vill du verkligen ändra UUID för en enhet?" -#: lib/setup.c:2801 +#: lib/setup.c:2958 msgid "Header backup file does not contain compatible LUKS header." msgstr "Säkerhetskopian för huvud innehåller inte något giltigt LUKS-huvud." -#: lib/setup.c:2900 +#: lib/setup.c:3058 #, c-format msgid "Volume %s is not active." msgstr "Volymen %s är inte aktiv." -#: lib/setup.c:2911 +#: lib/setup.c:3069 #, c-format msgid "Volume %s is already suspended." msgstr "Volymen %s är redan i vänteläge." -#: lib/setup.c:2925 +#: lib/setup.c:3082 #, c-format msgid "Suspend is not supported for device %s." msgstr "Vänteläge stöds inte för enhet %s." -#: lib/setup.c:2927 +#: lib/setup.c:3084 #, c-format msgid "Error during suspending device %s." msgstr "Fel då enheten %s försattes i vänteläge." -#: lib/setup.c:2960 lib/setup.c:3027 +#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 #, c-format msgid "Volume %s is not suspended." msgstr "Volymen %s är inte i vänteläge." -#: lib/setup.c:2989 +#: lib/setup.c:3146 #, c-format msgid "Resume is not supported for device %s." msgstr "Att återuppta stöds inte för enhet %s." -#: lib/setup.c:2991 lib/setup.c:3059 +#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 #, c-format msgid "Error during resuming device %s." msgstr "Fel då enheten %s återupptogs." -#: lib/setup.c:3127 lib/setup.c:3315 +#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4314 lib/setup.c:4327 +#: lib/setup.c:4335 lib/setup.c:4348 lib/setup.c:4698 lib/setup.c:5844 +msgid "Volume key does not match the volume." +msgstr "Volymnyckeln stämmer inte överens med volymen." + +#: lib/setup.c:3343 lib/setup.c:3531 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "Det går inte att lägga till nyckelplats. Alla platser är inaktiverade och ingen volymnyckel har angivits." -#: lib/setup.c:3267 +#: lib/setup.c:3483 msgid "Failed to swap new key slot." msgstr "Misslyckades med att byta ny nyckelplats." -#: lib/setup.c:3432 lib/setup.c:3865 lib/setup.c:3878 lib/setup.c:3886 -#: lib/setup.c:3899 lib/setup.c:4198 lib/setup.c:5274 -msgid "Volume key does not match the volume." -msgstr "Volymnyckeln stämmer inte överens med volymen." - -#: lib/setup.c:3453 +#: lib/setup.c:3669 #, c-format msgid "Key slot %d is invalid." msgstr "Nyckelplats %d är ogiltig." -#: lib/setup.c:3459 +#: lib/setup.c:3675 src/cryptsetup.c:1584 src/cryptsetup.c:1929 #, c-format -msgid "Key slot %d is not used." -msgstr "Nyckelplats %d används inte." +msgid "Keyslot %d is not active." +msgstr "Nyckelplats %d är inte aktiv." -#: lib/setup.c:3478 +#: lib/setup.c:3694 msgid "Device header overlaps with data area." msgstr "Dataområde spiller över på hashområdet." -#: lib/setup.c:3684 lib/setup.c:3952 -msgid "Device type is not properly initialised." -msgstr "Enhetstypen är inte korrekt initierad." +#: lib/setup.c:3981 +msgid "Reencryption in-progress. Cannot activate device." +msgstr "Omkryptering pågår. Det går inte att aktivera enheten." + +#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2836 +msgid "Failed to get reencryption lock." +msgstr "Misslyckades med att erhålla omkrypteringslås." + +#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +msgid "LUKS2 reencryption recovery failed." +msgstr "Misslyckades med återhämtning av LUKS2-omkryptering." -#: lib/setup.c:3726 -#, c-format -msgid "Cannot use device %s, name is invalid or still in use." -msgstr "Det går inte att använda enheten %s som fortfarande används eller har ett ogiltigt namn." +#: lib/setup.c:4127 lib/setup.c:4384 +msgid "Device type is not properly initialized." +msgstr "Enhetstypen är inte korrekt initierad." -#: lib/setup.c:3729 +#: lib/setup.c:4175 #, c-format msgid "Device %s already exists." msgstr "Enheten %s finns redan." -#: lib/setup.c:3852 +#: lib/setup.c:4182 +#, c-format +msgid "Cannot use device %s, name is invalid or still in use." +msgstr "Det går inte att använda enheten %s som fortfarande används eller har ett ogiltigt namn." + +#: lib/setup.c:4301 msgid "Incorrect volume key specified for plain device." msgstr "Felaktig volymnyckel för vanlig enhet." -#: lib/setup.c:3918 +#: lib/setup.c:4410 msgid "Incorrect root hash specified for verity device." msgstr "Felaktig rothash angiven för verity-enhet." -#: lib/setup.c:3995 lib/setup.c:4010 +#: lib/setup.c:4417 +msgid "Root hash signature required." +msgstr "Root-hashsignatur krävs." + +#: lib/setup.c:4426 +msgid "Kernel keyring missing: required for passing signature to kernel." +msgstr "Kärnans nyckelring saknas: krävs för att skicka signatur till kärnan." + +#: lib/setup.c:4443 lib/setup.c:5920 +msgid "Failed to load key in kernel keyring." +msgstr "Misslyckades med att öppna nyckelringen för kärnan." + +#: lib/setup.c:4496 lib/setup.c:4512 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2676 #, c-format msgid "Device %s is still in use." msgstr "Enheten %s används fortfarande." -#: lib/setup.c:4025 +#: lib/setup.c:4521 #, c-format msgid "Invalid device %s." msgstr "Ogiltig enhet %s." -#: lib/setup.c:4134 -msgid "Function not available in FIPS mode." -msgstr "Funktionen är inte tillgänglig i FIPS-läge." - -#: lib/setup.c:4148 +#: lib/setup.c:4637 msgid "Volume key buffer too small." msgstr "Buffert för volymnyckelen är för liten." -#: lib/setup.c:4156 +#: lib/setup.c:4645 msgid "Cannot retrieve volume key for plain device." msgstr "Kan inte hämta volymnyckel för vanlig enhet." -#: lib/setup.c:4167 +#: lib/setup.c:4662 +msgid "Cannot retrieve root hash for verity device." +msgstr "Det går inte att hämta root-hash för verity-enhet." + +#: lib/setup.c:4664 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Denna åtgärd stöds inte för krypteringsenheter av typen %s." -#: lib/setup.c:4354 +#: lib/setup.c:4870 msgid "Dump operation is not supported for this device type." msgstr "Utskriftsåtgärden stöds inte för denna enhetstyp." -#: lib/setup.c:4930 +#: lib/setup.c:5195 +#, c-format +msgid "Data offset is not multiple of %u bytes." +msgstr "Dataförskjutning är inte en multipel av %u byte." + +#: lib/setup.c:5480 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "Det går inte konvertera enheten %s som fortfarande används." -#: lib/setup.c:5213 +#: lib/setup.c:5777 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "Misslyckades med att tilldela nyckelplats %u som ny volymnyckel." -#: lib/setup.c:5280 -msgid "Failed to initialise default LUKS2 keyslot parameters." -msgstr "Misslyckades med att sätta standardnyckelplats för LUKS2-parametrar." +#: lib/setup.c:5850 +msgid "Failed to initialize default LUKS2 keyslot parameters." +msgstr "Misslyckades med att initiera standardnyckelplats för LUKS2-parametrar." -#: lib/setup.c:5286 +#: lib/setup.c:5856 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "Misslyckades med att tilldela nyckelplats %d till kontrollsummor." -#: lib/setup.c:5370 -msgid "Failed to load key in kernel keyring." -msgstr "Misslyckades med att öppna nyckelringen för kärnan." - -#: lib/setup.c:5425 +#: lib/setup.c:5987 msgid "Kernel keyring is not supported by the kernel." msgstr "Kärnans nyckelring stöds inte av kärnan." -#: lib/setup.c:5435 +#: lib/setup.c:5997 lib/luks2/luks2_reencrypt.c:2952 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "Misslyckades med att läsa lösenfras från nyckelringsnyckel (fel %d)." -#: lib/utils.c:81 +#: lib/setup.c:6021 +msgid "Failed to acquire global memory-hard access serialization lock." +msgstr "Misslyckades med att inhämta globalt minneshårt serialiseringslås." + +#: lib/utils.c:80 msgid "Cannot get process priority." msgstr "Det går inte att få processprioritet." -#: lib/utils.c:95 +#: lib/utils.c:94 msgid "Cannot unlock memory." msgstr "Det går inte att låsa upp minne." -#: lib/utils.c:169 lib/tcrypt/tcrypt.c:498 +#: lib/utils.c:168 lib/tcrypt/tcrypt.c:497 msgid "Failed to open key file." msgstr "Misslyckades med att öppna nyckelfilen." -#: lib/utils.c:174 +#: lib/utils.c:173 msgid "Cannot read keyfile from a terminal." msgstr "Det går inte läsa nyckelfilen från en terminal." -#: lib/utils.c:191 +#: lib/utils.c:190 msgid "Failed to stat key file." msgstr "Misslyckades med att ta stat på nyckelfilen." -#: lib/utils.c:199 lib/utils.c:220 +#: lib/utils.c:198 lib/utils.c:219 msgid "Cannot seek to requested keyfile offset." msgstr "Det går inte att söka till begärd nyckelfilsoffset." -#: lib/utils.c:214 lib/utils.c:229 src/utils_password.c:188 +#: lib/utils.c:213 lib/utils.c:228 src/utils_password.c:188 #: src/utils_password.c:201 msgid "Out of memory while reading passphrase." msgstr "Slut på minne vid läsning av lösenfras." -#: lib/utils.c:249 +#: lib/utils.c:248 msgid "Error reading passphrase." msgstr "Fel vid läsning av lösenfras." -#: lib/utils.c:266 +#: lib/utils.c:265 msgid "Nothing to read on input." msgstr "Ingenting att läsa vid inmating." -#: lib/utils.c:273 +#: lib/utils.c:272 msgid "Maximum keyfile size exceeded." msgstr "Högsta nyckelfilsstorlek överskriden." -#: lib/utils.c:278 +#: lib/utils.c:277 msgid "Cannot read requested amount of data." msgstr "Det går inte läsa begärd mängd data." -#: lib/utils_device.c:184 lib/luks1/keyencryption.c:92 +#: lib/utils_device.c:187 lib/utils_storage_wrappers.c:110 +#: lib/luks1/keyencryption.c:91 #, c-format -msgid "Device %s doesn't exist or access denied." +msgid "Device %s does not exist or access denied." msgstr "Enheten %s finns inte eller åtkomst nekas." -#: lib/utils_device.c:194 +#: lib/utils_device.c:197 #, c-format msgid "Device %s is not compatible." msgstr "Enheten %s är inte aktiv." -#: lib/utils_device.c:560 +#: lib/utils_device.c:532 +#, c-format +msgid "Ignoring bogus optimal-io size for data device (%u bytes)." +msgstr "Ignorerar falsk optimal-io-storlek för dataenheten (%u byte)." + +#: lib/utils_device.c:648 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "Enhet %s är för liten. Behöver minst % byte." -#: lib/utils_device.c:641 +#: lib/utils_device.c:729 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "Det går inte att använda enheten %s som redan används (redan mappad eller monterad)." -#: lib/utils_device.c:645 +#: lib/utils_device.c:733 #, c-format msgid "Cannot use device %s, permission denied." msgstr "Det går inte att använda enhet %s, behörighet nekad." -#: lib/utils_device.c:648 +#: lib/utils_device.c:736 #, c-format msgid "Cannot get info about device %s." msgstr "Kan inte hämta information om enheten %s." -#: lib/utils_device.c:671 +#: lib/utils_device.c:759 msgid "Cannot use a loopback device, running as non-root user." msgstr "Kan inte använda en loopback-enhet, kör som icke-root-användare." -#: lib/utils_device.c:681 +#: lib/utils_device.c:769 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "Misslyckades med att fästa loopback-enhet (kräver loop-enhet med flaggan autoclear)." -#: lib/utils_device.c:727 +#: lib/utils_device.c:815 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "Begärd offset är bortom faktiska enhetsstorleken för %s." -#: lib/utils_device.c:735 +#: lib/utils_device.c:823 #, c-format msgid "Device %s has zero size." msgstr "Enheten %s har noll storlek." -#: lib/utils_device.c:746 lib/luks1/keyencryption.c:252 -#, c-format -msgid "Device %s is too small." -msgstr "Enheten %s är för liten." - #: lib/utils_pbkdf.c:100 msgid "Requested PBKDF target time cannot be zero." msgstr "Begärd måltid för PBKDF kan inte vara noll." @@ -609,35 +700,49 @@ msgid "Requested PBKDF parallel threads cannot be zero." msgstr "Begärda parallella trådar för PBKDF kan inte vara noll." -#: lib/utils_benchmark.c:317 +#: lib/utils_pbkdf.c:184 +msgid "Only PBKDF2 is supported in FIPS mode." +msgstr "Stöder endast PBKDF2 i FIPS-läge." + +#: lib/utils_benchmark.c:172 msgid "PBKDF benchmark disabled but iterations not set." msgstr "Prestandamätning för PBKDF är inaktiverad men iterationer är inte satt." -#: lib/utils_benchmark.c:336 +#: lib/utils_benchmark.c:191 #, c-format msgid "Not compatible PBKDF2 options (using hash algorithm %s)." msgstr "Ej kompatibla PBKDF2-flaggor (använder hash-algoritmen %s)." -#: lib/utils_benchmark.c:356 +#: lib/utils_benchmark.c:211 msgid "Not compatible PBKDF options." msgstr "Ej kompatibla PBKDF2-flaggor." -#: lib/utils_device_locking.c:80 +#: lib/utils_device_locking.c:102 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (not a directory or missing)." msgstr "Låsningen avbruten. Låsningsökvägen %s/%s oanvändbar (inte en katalog eller saknas)." -#: lib/utils_device_locking.c:87 +#: lib/utils_device_locking.c:109 #, c-format msgid "WARNING: Locking directory %s/%s is missing!\n" msgstr "VARNING:Låskatalog %s/%s saknas!\n" -#: lib/utils_device_locking.c:97 +#: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Låsningen avbruten. Låsningsökvägen %s/%s oanvändbar (%s är inte en katalog)." -#: lib/luks1/keyencryption.c:40 +#: lib/utils_wipe.c:184 src/cryptsetup_reencrypt.c:941 +#: src/cryptsetup_reencrypt.c:1025 +msgid "Cannot seek to device offset." +msgstr "Det går inte att söka till enhetsoffset." + +#: lib/utils_wipe.c:208 +#, c-format +msgid "Device wipe error, offset %." +msgstr "Fel vid radering av enhet, förskjutning %." + +#: lib/luks1/keyencryption.c:39 #, c-format msgid "" "Failed to setup dm-crypt key mapping for device %s.\n" @@ -646,17 +751,17 @@ "Misslyckades med att konfigurera nyckelmappning för dm-crypt för enheten %s. \n" "Kontrollera att kärnan har stöd för chiffret %s (kontrollera syslog för mer information)." -#: lib/luks1/keyencryption.c:45 +#: lib/luks1/keyencryption.c:44 msgid "Key size in XTS mode must be 256 or 512 bits." msgstr "Nyckelstorlek i XTS-läge måste vara en multipel av 256 eller 512 bitar." -#: lib/luks1/keyencryption.c:47 +#: lib/luks1/keyencryption.c:46 msgid "Cipher specification should be in [cipher]-[mode]-[iv] format." msgstr "Chifferspecifikation ska vara i formatet [chiffer] - [läge] - [iv]." -#: lib/luks1/keyencryption.c:98 lib/luks1/keymanage.c:345 -#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1079 -#: lib/luks2/luks2_json_metadata.c:1157 lib/luks2/luks2_keyslot.c:448 +#: 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:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." msgstr "Kan inte skriva till enhet %s, behörighet nekad." @@ -669,95 +774,97 @@ msgid "Failed to access temporary keystore device." msgstr "Misslyckades med att komma åt temporär nyckellagringsenhet." -#: lib/luks1/keyencryption.c:200 lib/luks2/luks2_keyslot_luks2.c:91 +#: lib/luks1/keyencryption.c:200 lib/luks2/luks2_keyslot_luks2.c:60 +#: lib/luks2/luks2_keyslot_luks2.c:78 lib/luks2/luks2_keyslot_reenc.c:134 msgid "IO error while encrypting keyslot." msgstr "In-/utfel vid kryptering av nyckelplats." -#: lib/luks1/keyencryption.c:243 lib/luks1/keymanage.c:348 -#: lib/luks1/keymanage.c:594 lib/luks1/keymanage.c:645 lib/tcrypt/tcrypt.c:663 -#: lib/verity/verity.c:81 lib/verity/verity.c:182 lib/verity/verity_hash.c:308 -#: lib/verity/verity_hash.c:319 lib/verity/verity_hash.c:339 -#: lib/verity/verity_fec.c:242 lib/verity/verity_fec.c:254 -#: lib/verity/verity_fec.c:259 lib/luks2/luks2_json_metadata.c:1160 -#: src/cryptsetup_reencrypt.c:208 +#: 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:1263 +#: src/cryptsetup_reencrypt.c:200 src/cryptsetup_reencrypt.c:212 #, c-format msgid "Cannot open device %s." msgstr "Det går inte att öppna enheten %s." -#: lib/luks1/keyencryption.c:254 lib/luks2/luks2_keyslot_luks2.c:152 +#: lib/luks1/keyencryption.c:257 lib/luks2/luks2_keyslot_luks2.c:137 msgid "IO error while decrypting keyslot." msgstr "In-/utfel vid dekryptering av nyckelplats." -#: lib/luks1/keymanage.c:111 +#: lib/luks1/keymanage.c:110 #, c-format msgid "Device %s is too small. (LUKS1 requires at least % bytes.)" msgstr "Enhet %s är för liten. (LUKS1 kräver minst % byte.)" -#: lib/luks1/keymanage.c:132 lib/luks1/keymanage.c:140 -#: lib/luks1/keymanage.c:152 lib/luks1/keymanage.c:163 -#: lib/luks1/keymanage.c:175 +#: lib/luks1/keymanage.c:131 lib/luks1/keymanage.c:139 +#: lib/luks1/keymanage.c:151 lib/luks1/keymanage.c:162 +#: lib/luks1/keymanage.c:174 #, c-format msgid "LUKS keyslot %u is invalid." msgstr "LUKS-nyckelplats %u är ogiltig." -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:478 -#: lib/luks2/luks2_json_metadata.c:991 src/cryptsetup.c:1236 -#: src/cryptsetup.c:1355 src/cryptsetup.c:1412 src/cryptsetup.c:1468 -#: src/cryptsetup.c:1535 src/cryptsetup.c:1631 src/cryptsetup.c:1695 -#: src/cryptsetup.c:1855 src/cryptsetup.c:2044 src/cryptsetup.c:2104 -#: src/cryptsetup.c:2170 src/cryptsetup.c:2334 src/cryptsetup_reencrypt.c:1397 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1445 +#: src/cryptsetup.c:1571 src/cryptsetup.c:1628 src/cryptsetup.c:1684 +#: src/cryptsetup.c:1751 src/cryptsetup.c:1854 src/cryptsetup.c:1918 +#: src/cryptsetup.c:2148 src/cryptsetup.c:2343 src/cryptsetup.c:2403 +#: src/cryptsetup.c:2469 src/cryptsetup.c:2633 src/cryptsetup.c:3291 +#: src/cryptsetup.c:3300 src/cryptsetup_reencrypt.c:1388 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "Enheten %s är inte en giltig LUKS-enhet." -#: lib/luks1/keymanage.c:247 lib/luks2/luks2_json_metadata.c:1010 +#: lib/luks1/keymanage.c:246 lib/luks2/luks2_json_metadata.c:1108 #, c-format msgid "Requested header backup file %s already exists." msgstr "Begärd säkerhetskopia %s av huvud finns redan." -#: lib/luks1/keymanage.c:249 lib/luks2/luks2_json_metadata.c:1012 +#: lib/luks1/keymanage.c:248 lib/luks2/luks2_json_metadata.c:1110 #, c-format msgid "Cannot create header backup file %s." msgstr "Det går inte att skapa säkerhetskopia för huvud %s." -#: lib/luks1/keymanage.c:254 lib/luks2/luks2_json_metadata.c:1017 +#: lib/luks1/keymanage.c:255 lib/luks2/luks2_json_metadata.c:1117 #, c-format msgid "Cannot write header backup file %s." msgstr "Det går inte skriva säkerhetskopia för huvud %s." -#: lib/luks1/keymanage.c:287 lib/luks2/luks2_json_metadata.c:1066 -msgid "Backup file doesn't contain valid LUKS header." +#: lib/luks1/keymanage.c:286 lib/luks2/luks2_json_metadata.c:1169 +msgid "Backup file does not contain valid LUKS header." msgstr "Säkerhetskopian innehåller inte något giltigt LUKS-huvud." -#: lib/luks1/keymanage.c:300 lib/luks1/keymanage.c:555 -#: lib/luks2/luks2_json_metadata.c:1087 +#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549 +#: lib/luks2/luks2_json_metadata.c:1190 #, c-format msgid "Cannot open header backup file %s." msgstr "Det går inte att öppna säkerhetskopia för huvud %s." -#: lib/luks1/keymanage.c:306 lib/luks2/luks2_json_metadata.c:1093 +#: lib/luks1/keymanage.c:307 lib/luks2/luks2_json_metadata.c:1198 #, c-format msgid "Cannot read header backup file %s." msgstr "Det går inte att läsa säkerhetskopia för huvud %s." -#: lib/luks1/keymanage.c:318 +#: lib/luks1/keymanage.c:317 msgid "Data offset or key size differs on device and backup, restore failed." msgstr "Dataoffset eller nyckelstorlek skiljer sig åt på enhet och säkerhetskopia. Återställningen misslyckades." -#: lib/luks1/keymanage.c:326 +#: lib/luks1/keymanage.c:325 #, c-format msgid "Device %s %s%s" msgstr "Enhet %s %s%s" -#: lib/luks1/keymanage.c:327 +#: lib/luks1/keymanage.c:326 msgid "does not contain LUKS header. Replacing header can destroy data on that device." msgstr "innehåller inget LUKS-huvud. Ersättning av huvud kan förstöra data på enheten." -#: lib/luks1/keymanage.c:328 +#: lib/luks1/keymanage.c:327 msgid "already contains LUKS header. Replacing header will destroy existing keyslots." msgstr "innehåller redan LUKS-huvud. Ersättningen av huvud kommer att förstöra befintliga nyckelplatser." -#: lib/luks1/keymanage.c:329 lib/luks2/luks2_json_metadata.c:1129 +#: lib/luks1/keymanage.c:328 lib/luks2/luks2_json_metadata.c:1232 msgid "" "\n" "WARNING: real device header has different UUID than backup!" @@ -765,99 +872,105 @@ "\n" "VARNING: verkligt enhetshuvud har annat UUID än säkerhetskopian!" -#: lib/luks1/keymanage.c:381 +#: lib/luks1/keymanage.c:375 msgid "Non standard key size, manual repair required." msgstr "Ej standardstorlek på nyckel, manuell reparation krävs." -#: lib/luks1/keymanage.c:386 +#: lib/luks1/keymanage.c:380 msgid "Non standard keyslots alignment, manual repair required." msgstr "Ej standardjustering på nyckelplatser, manuell reparation krävs." -#: lib/luks1/keymanage.c:396 +#: lib/luks1/keymanage.c:390 msgid "Repairing keyslots." msgstr "Reparerar nyckelplatser." -#: lib/luks1/keymanage.c:415 +#: lib/luks1/keymanage.c:409 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Nyckelplats %i: reparerad offset (%u -> %u)." -#: lib/luks1/keymanage.c:423 +#: lib/luks1/keymanage.c:417 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Nyckelplats %i: reparerade remsor (%u -> %u)." -#: lib/luks1/keymanage.c:432 +#: lib/luks1/keymanage.c:426 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Nyckelplats %i: fejkpartitionssignatur." -#: lib/luks1/keymanage.c:437 +#: lib/luks1/keymanage.c:431 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Nyckelplats %i: salt borttaget." -#: lib/luks1/keymanage.c:454 +#: lib/luks1/keymanage.c:448 msgid "Writing LUKS header to disk." msgstr "Skriver LUKS-huvud till disk." -#: lib/luks1/keymanage.c:459 +#: lib/luks1/keymanage.c:453 msgid "Repair failed." msgstr "Reparation misslyckades." -#: lib/luks1/keymanage.c:487 lib/luks1/keymanage.c:758 +#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "Begärd LUKS-hash %s stöds inte." -#: lib/luks1/keymanage.c:515 src/cryptsetup.c:960 +#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1145 msgid "No known problems detected for LUKS header." msgstr "Inga kända problem identifierade för LUKS-huvud." -#: lib/luks1/keymanage.c:667 +#: lib/luks1/keymanage.c:660 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Fel vid uppdatering av LUKS-huvud på enheten %s." -#: lib/luks1/keymanage.c:676 +#: lib/luks1/keymanage.c:668 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Fel vid omläsning av LUKS-huvud efter uppdatering på enheten %s." -#: lib/luks1/keymanage.c:752 +#: lib/luks1/keymanage.c:744 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "Data-offset för fristående LUKS-huvud måste vara antingen 0 eller större än huvudstorleken." -#: lib/luks1/keymanage.c:763 lib/luks1/keymanage.c:828 -#: lib/luks2/luks2_json_format.c:207 lib/luks2/luks2_json_metadata.c:909 +#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825 +#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2796 msgid "Wrong LUKS UUID format provided." msgstr "Felaktigt LUKS-UUID-format angavs." -#: lib/luks1/keymanage.c:786 +#: lib/luks1/keymanage.c:778 msgid "Cannot create LUKS header: reading random salt failed." msgstr "Kan inte skapa LUKS-huvud: läsning av slumpmässigt salt misslyckades." -#: lib/luks1/keymanage.c:807 +#: lib/luks1/keymanage.c:804 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "Kan inte skapa LUKS-huvud: kontrollsumma för huvud misslyckades (använder hashen %s)." -#: lib/luks1/keymanage.c:851 +#: lib/luks1/keymanage.c:848 #, c-format msgid "Key slot %d active, purge first." msgstr "Nyckelplats %d är aktiv, rensa först." -#: lib/luks1/keymanage.c:857 +#: lib/luks1/keymanage.c:854 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "Nyckelplats %d material inkluderar för få remsor. Har huvudet manipulerats?" -#: lib/luks1/keymanage.c:1065 +#: lib/luks1/keymanage.c:990 +#, c-format +msgid "Cannot open keyslot (using hash %s)." +msgstr "Det går inte att öppna nyckeplats (använder hash %s)." + +#: lib/luks1/keymanage.c:1066 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "Nyckelplats %d är ogiltig. Välj en nyckelplats mellan 0 och %d." -#: lib/luks1/keymanage.c:1083 lib/luks2/luks2_keyslot.c:452 +#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "Kan inte rensa enheten %s." @@ -875,97 +988,194 @@ msgstr "Identifierade inkompatibel loop-AES-nyckelfil." #: lib/loopaes/loopaes.c:245 -msgid "Kernel doesn't support loop-AES compatible mapping." +msgid "Kernel does not support loop-AES compatible mapping." msgstr "Kärnan stöder inte loop-AES-kompatibel mappning." -#: lib/tcrypt/tcrypt.c:505 +#: lib/tcrypt/tcrypt.c:504 #, c-format msgid "Error reading keyfile %s." msgstr "Fel vid läsning av nyckelfil %s." -#: lib/tcrypt/tcrypt.c:545 +#: lib/tcrypt/tcrypt.c:554 #, c-format -msgid "Maximum TCRYPT passphrase length (%d) exceeded." -msgstr "Högsta TCRYPT-lösenfraslängd (%d) överskriden." +msgid "Maximum TCRYPT passphrase length (%zu) exceeded." +msgstr "Högsta TCRYPT-lösenfraslängd (%zu) överskriden." -#: lib/tcrypt/tcrypt.c:586 +#: lib/tcrypt/tcrypt.c:595 #, c-format msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "PBKDF2-hashalgoritm %s ej tillgänglig, hoppar över." -#: lib/tcrypt/tcrypt.c:604 src/cryptsetup.c:915 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1022 msgid "Required kernel crypto interface not available." msgstr "Begärt kryptogränssnitt för kärnan inte tillgängligt." -#: lib/tcrypt/tcrypt.c:606 src/cryptsetup.c:917 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1024 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Försäkra dig om att kärnmodulen algif_skcipher är inläst." -#: lib/tcrypt/tcrypt.c:746 +#: lib/tcrypt/tcrypt.c:753 #, c-format msgid "Activation is not supported for %d sector size." msgstr "Aktivering stöds inte för sektorstorlek %d." -#: lib/tcrypt/tcrypt.c:752 -msgid "Kernel doesn't support activation for this TCRYPT legacy mode." +#: lib/tcrypt/tcrypt.c:759 +msgid "Kernel does not support activation for this TCRYPT legacy mode." msgstr "Kärnan stöder inte aktivering för detta föråldrade TCRYPT-läge." -#: lib/tcrypt/tcrypt.c:786 +#: lib/tcrypt/tcrypt.c:790 #, c-format msgid "Activating TCRYPT system encryption for partition %s." msgstr "Aktiverar TCRYPT-systemkryptering för partition %s." -#: lib/tcrypt/tcrypt.c:864 -msgid "Kernel doesn't support TCRYPT compatible mapping." +#: lib/tcrypt/tcrypt.c:868 +msgid "Kernel does not support TCRYPT compatible mapping." msgstr "Kärnan stöder inte TCRYPT-kompatibel mappning." -#: lib/tcrypt/tcrypt.c:1085 +#: lib/tcrypt/tcrypt.c:1090 msgid "This function is not supported without TCRYPT header load." msgstr "Denna funktion stöds inte utan inläsning av TCRYPT-huvud." -#: lib/verity/verity.c:69 lib/verity/verity.c:175 +#: lib/bitlk/bitlk.c:333 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing supported Volume Master Key." +msgstr "Oväntad metadatapost av typ ”%u” funnen vid tolkning av volymhuvudnyckel." + +#: lib/bitlk/bitlk.c:380 +msgid "Invalid string found when parsing Volume Master Key." +msgstr "Ogiltig sträng funnen vid tolkning av volymhuvudnyckel." + +#: lib/bitlk/bitlk.c:385 +#, c-format +msgid "Unexpected string ('%s') found when parsing supported Volume Master Key." +msgstr "Oväntad sträng (”%s”) funnen vid tolkning av volymhuvudnycklar som stöds." + +#: lib/bitlk/bitlk.c:399 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing supported Volume Master Key." +msgstr "Oväntad metadatapostvärde av typ ”%u” funnen vid tolkning av volymhuvudnycklar som stöds." + +#: lib/bitlk/bitlk.c:479 +#, c-format +msgid "Failed to read BITLK signature from %s." +msgstr "Misslyckades med att läsa BITLK-signatur från %s." + +#: lib/bitlk/bitlk.c:485 +msgid "BITLK version 1 is currently not supported." +msgstr "BITLK version 1 stöds ej för närvarande." + +#: lib/bitlk/bitlk.c:491 +msgid "Invalid or unknown boot signature for BITLK device." +msgstr "Ogiltig eller okänd boot-signatur för BITLK-enhet." + +#: lib/bitlk/bitlk.c:503 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Ogiltig eller okänd signatur för BITLK-enhet." + +#: lib/bitlk/bitlk.c:515 #, c-format -msgid "Verity device %s doesn't use on-disk header." -msgstr "Verity-enhet %s använder inte huvud på disk." +msgid "Unsupported sector size %." +msgstr "Stöder inte sektorstorleken %." -#: lib/verity/verity.c:94 +#: lib/bitlk/bitlk.c:523 +#, c-format +msgid "Failed to read BITLK header from %s." +msgstr "Misslyckades med att läsa BITLK-huvud från %s." + +#: lib/bitlk/bitlk.c:548 +#, c-format +msgid "Failed to read BITLK FVE metadata from %s." +msgstr "Misslyckades med att läsa BITLK FVE-metadata från %s." + +#: lib/bitlk/bitlk.c:599 +msgid "Unknown or unsupported encryption type." +msgstr "Krypteringstypen är okänd eller stöds ej." + +#: lib/bitlk/bitlk.c:632 +#, c-format +msgid "Failed to read BITLK metadata entries from %s." +msgstr "Misslyckades med att läsa BITLK -metadataposter från %s." + +#: lib/bitlk/bitlk.c:926 +msgid "This operation is not supported." +msgstr "Denna åtgärd stöds ej." + +#: lib/bitlk/bitlk.c:934 +msgid "Unexpected key data size." +msgstr "Oväntad nyckeldatastorlek." + +#: lib/bitlk/bitlk.c:988 +msgid "This BITLK device is in an unsupported state and cannot be activated." +msgstr "Denna BITLK-enhet är i tillstånd som inte stöds och kan inte aktiveras." + +#: lib/bitlk/bitlk.c:994 +#, c-format +msgid "BITLK devices with type '%s' cannot be activated." +msgstr "Det går inte att aktivera BITLK-enheter av typen ”%s”." + +#: lib/bitlk/bitlk.c:1076 +msgid "Activation of partially decrypted BITLK device is not supported." +msgstr "Aktivering av delvis avkrypterade BITLK-enheter stöds ej." + +#: lib/bitlk/bitlk.c:1212 +msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." +msgstr "Det går inte att aktivera enheten, kärnan dm-crypt saknar stöd för BITLK IV." + +#: lib/bitlk/bitlk.c:1216 +msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." +msgstr "Det går inte att aktivera enheten, kärnan dm-crypt saknar stöd för BITLK Elephant diffuser." + +#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#, c-format +msgid "Verity device %s does not use on-disk header." +msgstr "Verity-enheten %s använder inte huvud på disk." + +#: lib/verity/verity.c:90 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "Enheten %s är inte en giltig VERITY-enhet." -#: lib/verity/verity.c:101 +#: lib/verity/verity.c:97 #, c-format msgid "Unsupported VERITY version %d." msgstr "VERITY-versionen %d stöds inte." -#: lib/verity/verity.c:132 +#: lib/verity/verity.c:128 msgid "VERITY header corrupted." msgstr "VERITY-huvud är skadat." -#: lib/verity/verity.c:169 +#: lib/verity/verity.c:165 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "Felaktigt VERITY-UUID-format angivet på enhet %s." -#: lib/verity/verity.c:202 +#: lib/verity/verity.c:198 #, c-format msgid "Error during update of verity header on device %s." msgstr "Fel vid uppdatering av verity-huvud på enheten %s." -#: lib/verity/verity.c:266 +#: lib/verity/verity.c:256 +msgid "Root hash signature verification is not supported." +msgstr "Begärd hashsignaturverifiering %s stöds inte." + +#: lib/verity/verity.c:267 msgid "Errors cannot be repaired with FEC device." msgstr "Det går inte reparera fel med FEC-enhet." -#: lib/verity/verity.c:268 +#: lib/verity/verity.c:269 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "Fann %u reparerbara fel med FEC-enhet." -#: lib/verity/verity.c:306 -msgid "Kernel doesn't support dm-verity mapping." +#: lib/verity/verity.c:308 +msgid "Kernel does not support dm-verity mapping." msgstr "Kärnan stöder inte dm-verity-mappning." -#: lib/verity/verity.c:317 +#: lib/verity/verity.c:312 +msgid "Kernel does not support dm-verity signature option." +msgstr "Kärnan stöder inte flaggan för dm-verity-signatur." + +#: lib/verity/verity.c:323 msgid "Verity device detected corruption after activation." msgstr "Verity-enhet identifierades som skadad efter aktivering." @@ -974,156 +1184,155 @@ msgid "Spare area is not zeroed at position %." msgstr "Ledigt utrymme är inte nollställt vid position %." -#: lib/verity/verity_hash.c:160 lib/verity/verity_hash.c:287 -#: lib/verity/verity_hash.c:300 +#: lib/verity/verity_hash.c:163 lib/verity/verity_hash.c:290 +#: lib/verity/verity_hash.c:303 msgid "Device offset overflow." msgstr "Enhets-offset spillde över." -#: lib/verity/verity_hash.c:200 +#: lib/verity/verity_hash.c:203 #, c-format msgid "Verification failed at position %." msgstr "Verifiering misslyckades vid %." -#: lib/verity/verity_hash.c:273 +#: lib/verity/verity_hash.c:276 msgid "Invalid size parameters for verity device." msgstr "Ogiltig storlek på parametrar för verity-enhet." -#: lib/verity/verity_hash.c:293 +#: lib/verity/verity_hash.c:296 msgid "Hash area overflow." msgstr "Hash-området spillde över." -#: lib/verity/verity_hash.c:370 +#: lib/verity/verity_hash.c:373 msgid "Verification of data area failed." msgstr "Misslyckades med verifiering av dataområde." -#: lib/verity/verity_hash.c:375 +#: lib/verity/verity_hash.c:378 msgid "Verification of root hash failed." msgstr "Misslyckades med verifiering av rot-hash." -#: lib/verity/verity_hash.c:381 +#: lib/verity/verity_hash.c:384 msgid "Input/output error while creating hash area." msgstr "In-/utdatafel vid skapandet av hashområde." -#: lib/verity/verity_hash.c:383 +#: lib/verity/verity_hash.c:386 msgid "Creation of hash area failed." msgstr "Misslyckades med skapandet av hashområde." -#: lib/verity/verity_hash.c:430 +#: lib/verity/verity_hash.c:433 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "VARNING: Kärnan kan inte aktivera enhet om datablockstorleken överskrider sidstorlek (%u)." -#: lib/verity/verity_fec.c:132 +#: lib/verity/verity_fec.c:131 msgid "Failed to allocate RS context." msgstr "Misslyckades med att öppna RS-kontext." -#: lib/verity/verity_fec.c:147 +#: lib/verity/verity_fec.c:146 msgid "Failed to allocate buffer." msgstr "Misslyckades med att allokera buffert." -#: lib/verity/verity_fec.c:157 +#: lib/verity/verity_fec.c:156 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Misslyckades med att läsa RS block % byte %d." -#: lib/verity/verity_fec.c:170 +#: lib/verity/verity_fec.c:169 #, c-format msgid "Failed to read parity for RS block %." msgstr "Misslyckades med att skriva paritet för RS block %." -#: lib/verity/verity_fec.c:178 +#: lib/verity/verity_fec.c:177 #, c-format msgid "Failed to repair parity for block %." msgstr "Misslyckades med att skriva paritet för RS block %." -#: lib/verity/verity_fec.c:189 +#: lib/verity/verity_fec.c:188 #, c-format msgid "Failed to write parity for RS block %." msgstr "Misslyckades med att skriva paritet för RS block %." -#: lib/verity/verity_fec.c:224 +#: lib/verity/verity_fec.c:223 msgid "Block sizes must match for FEC." msgstr "Blockstorlekar måste matcha för FEC." -#: lib/verity/verity_fec.c:230 +#: lib/verity/verity_fec.c:229 msgid "Invalid number of parity bytes." msgstr "Ogiltigt antal paritet-byte." -#: lib/verity/verity_fec.c:266 +#: lib/verity/verity_fec.c:265 #, c-format msgid "Failed to determine size for device %s." msgstr "Misslyckades med att bestämma storlek för enhet %s." -#: lib/integrity/integrity.c:239 lib/integrity/integrity.c:304 -msgid "Kernel doesn't support dm-integrity mapping." +#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +msgid "Kernel does not support dm-integrity mapping." msgstr "Kärnan stöder inte dm-integrity-mappning." -#: lib/luks2/luks2_disk_metadata.c:413 -msgid "Failed to acquire write device lock." -msgstr "Misslyckades med att erhålla skrivlås för enhet." +#: lib/integrity/integrity.c:277 +msgid "Kernel does not support dm-integrity fixed metadata alignment." +msgstr "Kärnan stöder inte fast metadataförskjutning för dm-integrity." + +#: lib/luks2/luks2_disk_metadata.c:383 lib/luks2/luks2_json_metadata.c:967 +#: lib/luks2/luks2_json_metadata.c:1252 +#, c-format +msgid "Failed to acquire write lock on device %s." +msgstr "Misslyckades med att få skrivlås på enheten %s." -#: lib/luks2/luks2_disk_metadata.c:654 lib/luks2/luks2_disk_metadata.c:675 +#: lib/luks2/luks2_disk_metadata.c:392 +msgid "Detected attempt for concurrent LUKS2 metadata update. Aborting operation." +msgstr "Identifierade samtidiga försök att uppdatera LUKS2-metadata. Avbryter åtgärden." + +#: lib/luks2/luks2_disk_metadata.c:691 lib/luks2/luks2_disk_metadata.c:712 msgid "" "Device contains ambiguous signatures, cannot auto-recover LUKS2.\n" "Please run \"cryptsetup repair\" for recovery." msgstr "" -"Enheten innehåller tvetydiga signaturer, det går inte automatiskt återhämta LUKS2.\n" +"Enheten innehåller tvetydiga signaturer, det går inte att automatiskt återhämta LUKS2.\n" "Kör ”cryptsetup repair” för återhämtning." -#: lib/luks2/luks2_json_format.c:99 -msgid "No space for new keyslot." -msgstr "Inget utrymme för ny nyckelplats." - -#: lib/luks2/luks2_json_format.c:158 +#: lib/luks2/luks2_json_format.c:227 msgid "Requested data offset is too small." msgstr "Begärd dataoff för liten." -#: lib/luks2/luks2_json_format.c:195 +#: lib/luks2/luks2_json_format.c:271 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "VARNING: nyckelplatsområdet (% byte) är väldigt liten, tillgängligt LUKS2-nyckelplatsantal är väldigt begränsat.\n" -#: lib/luks2/luks2_json_metadata.c:866 lib/luks2/luks2_json_metadata.c:982 -#: lib/luks2/luks2_json_metadata.c:1055 lib/luks2/luks2_keyslot_luks2.c:105 -#: lib/luks2/luks2_keyslot_luks2.c:128 +#: lib/luks2/luks2_json_metadata.c:954 lib/luks2/luks2_json_metadata.c:1082 +#: lib/luks2/luks2_json_metadata.c:1158 lib/luks2/luks2_keyslot_luks2.c:92 +#: lib/luks2/luks2_keyslot_luks2.c:114 #, c-format msgid "Failed to acquire read lock on device %s." msgstr "Misslyckades med att erhålla läslås på enheten %s." -#: lib/luks2/luks2_json_metadata.c:878 lib/luks2/luks2_json_metadata.c:1149 -#: lib/luks2/luks2_keyslot.c:431 lib/luks2/luks2_keyslot_luks2.c:40 -#: lib/luks2/luks2_keyslot_luks2.c:69 -#, c-format -msgid "Failed to acquire write lock on device %s." -msgstr "Misslyckades med att få skrivlås på enheten %s." - -#: lib/luks2/luks2_json_metadata.c:1072 +#: lib/luks2/luks2_json_metadata.c:1175 #, c-format msgid "Forbidden LUKS2 requirements detected in backup %s." msgstr "Förbjudna LUKS2-krav identifierade i säkerhetskopian %s." -#: lib/luks2/luks2_json_metadata.c:1113 +#: lib/luks2/luks2_json_metadata.c:1216 msgid "Data offset differ on device and backup, restore failed." msgstr "Dataoffset skiljer sig på enhet och säkerhetskopia. Återställningen misslyckades." -#: lib/luks2/luks2_json_metadata.c:1119 +#: lib/luks2/luks2_json_metadata.c:1222 msgid "Binary header with keyslot areas size differ on device and backup, restore failed." msgstr "Binärhuvud med nyckelstorlek skiljer sig på enhet och säkerhetskopia. Återställningen misslyckades." -#: lib/luks2/luks2_json_metadata.c:1126 +#: lib/luks2/luks2_json_metadata.c:1229 #, c-format msgid "Device %s %s%s%s%s" msgstr "Enhet %s %s%s%s%s" -#: lib/luks2/luks2_json_metadata.c:1127 +#: lib/luks2/luks2_json_metadata.c:1230 msgid "does not contain LUKS2 header. Replacing header can destroy data on that device." msgstr "innehåller inget LUKS2-huvud. Ersättning av huvud kan förstöra data på enheten." -#: lib/luks2/luks2_json_metadata.c:1128 +#: lib/luks2/luks2_json_metadata.c:1231 msgid "already contains LUKS2 header. Replacing header will destroy existing keyslots." msgstr "innehåller redan LUKS2-huvud. Ersättningen av huvud kommer att förstöra befintliga nyckelplatser." -#: lib/luks2/luks2_json_metadata.c:1130 +#: lib/luks2/luks2_json_metadata.c:1233 msgid "" "\n" "WARNING: unknown LUKS2 requirements detected in real device header!\n" @@ -1133,7 +1342,7 @@ "VARNING:okända LUKS2-krav identifierade i huvudet för riktig enhet!\n" "Att ersätta huvudet med en säkerhetskopia kan göra data korrupt på enheten!" -#: lib/luks2/luks2_json_metadata.c:1132 +#: lib/luks2/luks2_json_metadata.c:1235 msgid "" "\n" "WARNING: Unfinished offline reencryption detected on the device!\n" @@ -1143,69 +1352,327 @@ "VARNING:Oavslutad frånkopplade kryptering identifierad på enheten!\n" "Att ersätta huvudet med en säkerhetskopia kan orsaka korrupt data." -#: lib/luks2/luks2_json_metadata.c:1234 +#: lib/luks2/luks2_json_metadata.c:1333 #, c-format msgid "Ignored unknown flag %s." msgstr "Ignorerade okänd flagga %s." -#: lib/luks2/luks2_json_metadata.c:1869 +#: lib/luks2/luks2_json_metadata.c:2020 lib/luks2/luks2_reencrypt.c:1746 +#, c-format +msgid "Missing key for dm-crypt segment %u" +msgstr "Saknar nyckel för dm-crypt-segmentet %u" + +#: lib/luks2/luks2_json_metadata.c:2032 lib/luks2/luks2_reencrypt.c:1764 +msgid "Failed to set dm-crypt segment." +msgstr "Misslyckades med att läsa dm-crypt-segment." + +#: lib/luks2/luks2_json_metadata.c:2038 lib/luks2/luks2_reencrypt.c:1770 +msgid "Failed to set dm-linear segment." +msgstr "Misslyckades med att läsa dm-linear-segment." + +#: lib/luks2/luks2_json_metadata.c:2165 +msgid "Unsupported device integrity configuration." +msgstr "Integritetskonfiguration som ej stöds på enheten." + +#: lib/luks2/luks2_json_metadata.c:2251 +msgid "Reencryption in-progress. Cannot deactivate device." +msgstr "Omkryptering pågår. Det går inte att inaktivera enhet." + +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3190 +#, c-format +msgid "Failed to replace suspended device %s with dm-error target." +msgstr "Misslyckades med att ersätta inaktiverad enhet %s med målet dm-error." + +#: lib/luks2/luks2_json_metadata.c:2342 msgid "Failed to read LUKS2 requirements." msgstr "Misslyckades med att läsa LUKS2-krav." -#: lib/luks2/luks2_json_metadata.c:1876 +#: lib/luks2/luks2_json_metadata.c:2349 msgid "Unmet LUKS2 requirements detected." msgstr "Ej uppfyllt LUKS2-krav identifierat." -#: lib/luks2/luks2_json_metadata.c:1884 -msgid "Offline reencryption in progress. Aborting." -msgstr "Frånkopplad kryptering pågår. Avbryter." +#: lib/luks2/luks2_json_metadata.c:2357 +msgid "Operation incompatible with device marked for legacy reencryption. Aborting." +msgstr "Åtgärden inkompatibel med enhet markerad för föråldrad omkryptering. Avbryter." + +#: lib/luks2/luks2_json_metadata.c:2359 +msgid "Operation incompatible with device marked for LUKS2 reencryption. Aborting." +msgstr "Åtgärden inkompatibel med enhet markerad för LUKS2-omkryptering. Avbryter." -#: lib/luks2/luks2_luks1_convert.c:474 +#: lib/luks2/luks2_keyslot.c:547 lib/luks2/luks2_keyslot.c:584 +msgid "Not enough available memory to open a keyslot." +msgstr "Inte nog med minne för att öppna en nyckelplats." + +#: lib/luks2/luks2_keyslot.c:549 lib/luks2/luks2_keyslot.c:586 +msgid "Keyslot open failed." +msgstr "Misslyckades med att öppna nyckelplats." + +#: lib/luks2/luks2_keyslot_luks2.c:53 lib/luks2/luks2_keyslot_luks2.c:108 #, c-format -msgid "Can not check status of device with uuid: %s." +msgid "Cannot use %s-%s cipher for keyslot encryption." +msgstr "Det går inte att använda %s-%s-chiffer för nyckelplatskryptering." + +#: lib/luks2/luks2_keyslot_luks2.c:480 +msgid "No space for new keyslot." +msgstr "Inget utrymme för ny nyckelplats." + +#: lib/luks2/luks2_luks1_convert.c:482 +#, c-format +msgid "Cannot check status of device with uuid: %s." msgstr "Det går inte kontrollera status för enheten med uuid: %s." -#: lib/luks2/luks2_luks1_convert.c:500 +#: lib/luks2/luks2_luks1_convert.c:508 msgid "Unable to convert header with LUKSMETA additional metadata." msgstr "Det går inte att konvertera huvud med ytterligare metadata för LUKSMETA." -#: lib/luks2/luks2_luks1_convert.c:537 +#: lib/luks2/luks2_luks1_convert.c:548 msgid "Unable to move keyslot area. Not enough space." msgstr "Kunde inte flytta nyckelplatsområde. Inte nog med utrymme." -#: lib/luks2/luks2_luks1_convert.c:577 lib/luks2/luks2_luks1_convert.c:854 +#: lib/luks2/luks2_luks1_convert.c:599 +msgid "Unable to move keyslot area. LUKS2 keyslots area too small." +msgstr "Kunde inte flytta nyckelplatsområde. Området för LUKS2-nyckelplatser är för litet." + +#: lib/luks2/luks2_luks1_convert.c:605 lib/luks2/luks2_luks1_convert.c:889 msgid "Unable to move keyslot area." msgstr "Kunde inte flytta nyckelplatsområde." -#: lib/luks2/luks2_luks1_convert.c:672 +#: lib/luks2/luks2_luks1_convert.c:697 +msgid "Cannot convert to LUKS1 format - default segment encryption sector size is not 512 bytes." +msgstr "Det går inte att konvertera till LUKS1-format - standardkrypteringstorleken är inte 512 byte." + +#: lib/luks2/luks2_luks1_convert.c:705 msgid "Cannot convert to LUKS1 format - key slot digests are not LUKS1 compatible." msgstr "Det går inte att konvertera till LUKS1-format - kontrollsummor för nyckelplatser är inte LUKS1-kompatibla." -#: lib/luks2/luks2_luks1_convert.c:684 +#: lib/luks2/luks2_luks1_convert.c:717 #, c-format msgid "Cannot convert to LUKS1 format - device uses wrapped key cipher %s." -msgstr "Det går inte att konvertera till LUKS1-format - enheterna använder inbäddad nyckelchiffer %s." +msgstr "Det går inte att konvertera till LUKS1-format - enheterna använder inbäddat nyckelchiffer %s." -#: lib/luks2/luks2_luks1_convert.c:692 +#: lib/luks2/luks2_luks1_convert.c:725 #, c-format msgid "Cannot convert to LUKS1 format - LUKS2 header contains %u token(s)." msgstr "Det går inte att konvertera till LUKS1-format - LUKS2-huvud innehåller %u token." -#: lib/luks2/luks2_luks1_convert.c:706 +#: lib/luks2/luks2_luks1_convert.c:739 #, c-format msgid "Cannot convert to LUKS1 format - keyslot %u is in invalid state." msgstr "Det går inte att konvertera till LUKS1-format - nyckelplats %u är i ogiltigt tillstånd." -#: lib/luks2/luks2_luks1_convert.c:711 +#: lib/luks2/luks2_luks1_convert.c:744 #, c-format msgid "Cannot convert to LUKS1 format - slot %u (over maximum slots) is still active." msgstr "Det går inte att konvertera till LUKS1-format - plats %u (av maximalt antal platser) är fortfarande aktiv." -#: lib/luks2/luks2_luks1_convert.c:716 +#: lib/luks2/luks2_luks1_convert.c:749 #, c-format msgid "Cannot convert to LUKS1 format - keyslot %u is not LUKS1 compatible." msgstr "Det går inte att konvertera till LUKS1-format - nyckelplats %u är inte LUKS1-kompatibel." +#: lib/luks2/luks2_reencrypt.c:892 +#, c-format +msgid "Hotzone size must be multiple of calculated zone alignment (%zu bytes)." +msgstr "Hotzone-storleken måste vara en multipel av beräknad zonjustering (%zu-byte)." + +#: lib/luks2/luks2_reencrypt.c:897 +#, c-format +msgid "Device size must be multiple of calculated zone alignment (%zu bytes)." +msgstr "Enhetsstorleken måste vara en multipel av beräknad zonstorlek (%zu byte)." + +#: lib/luks2/luks2_reencrypt.c:941 +#, c-format +msgid "Unsupported resilience mode %s" +msgstr "Stöder inte motståndsläge %s" + +#: 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 +msgid "Failed to initialize old segment storage wrapper." +msgstr "Misslyckades med att initiera gammal segmentlagringsinbäddning." + +#: lib/luks2/luks2_reencrypt.c:1172 lib/luks2/luks2_reencrypt.c:1291 +msgid "Failed to initialize new segment storage wrapper." +msgstr "Misslyckades med att initiera ny segmentlagringsinbäddning." + +#: lib/luks2/luks2_reencrypt.c:1340 +msgid "Failed to read checksums for current hotzone." +msgstr "Misslyckades med att läsa kontrollsummor från aktuell varm zon." + +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#, c-format +msgid "Failed to read hotzone area starting at %." +msgstr "Misslyckades med att läsa område för varm zon med början %." + +#: lib/luks2/luks2_reencrypt.c:1366 +#, c-format +msgid "Failed to decrypt sector %zu." +msgstr "Misslyckades med avkryptera sektor %zu." + +#: lib/luks2/luks2_reencrypt.c:1372 +#, c-format +msgid "Failed to recover sector %zu." +msgstr "Misslyckades med återhämta sektor %zu." + +#: lib/luks2/luks2_reencrypt.c:1867 +#, c-format +msgid "Source and target device sizes don't match. Source %, target: %." +msgstr "Käll- och målenhetstorlekar stämmer inte överens. Källa %, mål: %." + +#: lib/luks2/luks2_reencrypt.c:1965 +#, c-format +msgid "Failed to activate hotzone device %s." +msgstr "Misslyckades med att aktivera varm zon-enhet %s." + +#: lib/luks2/luks2_reencrypt.c:1982 +#, c-format +msgid "Failed to activate overlay device %s with actual origin table." +msgstr "Misslyckades med att aktivera överlagringsenheten %s med aktuell ursprungstabell." + +#: lib/luks2/luks2_reencrypt.c:1989 +#, c-format +msgid "Failed to load new mapping for device %s." +msgstr "Misslyckades med att läsa in ny mappning för enhet %s." + +#: lib/luks2/luks2_reencrypt.c:2060 +msgid "Failed to refresh reencryption devices stack." +msgstr "Misslyckades med att uppdatera listan över omkrypteringsenheter." + +#: lib/luks2/luks2_reencrypt.c:2216 +msgid "Failed to set new keyslots area size." +msgstr "Misslyckades med att sätta en ny storlek på nyckelplatsområdet." + +#: lib/luks2/luks2_reencrypt.c:2318 +#, c-format +msgid "Data shift is not aligned to requested encryption sector size (% bytes)." +msgstr "Dataskiftning är inte justerad till begärd sektorstorlek (% byte)." + +#: lib/luks2/luks2_reencrypt.c:2339 +#, c-format +msgid "Data device is not aligned to requested encryption sector size (% bytes)." +msgstr "Dataenhet är inte justerad till begärd sektorstorlek (% byte)." + +#: lib/luks2/luks2_reencrypt.c:2360 +#, c-format +msgid "Data shift (% sectors) is less than future data offset (% sectors)." +msgstr "Dataskiftning (% sektorer) är mindre än framtida dataförskjutning (% sektorer)." + +#: lib/luks2/luks2_reencrypt.c:2366 lib/luks2/luks2_reencrypt.c:2779 +#: lib/luks2/luks2_reencrypt.c:2800 +#, c-format +msgid "Failed to open %s in exclusive mode (already mapped or mounted)." +msgstr "Misslyckades med att öppna %s i exklusivt läge (redan mappad eller monterad)." + +#: lib/luks2/luks2_reencrypt.c:2534 +msgid "Device not marked for LUKS2 reencryption." +msgstr "Enheten är inte markerad för LUKS2-omkryptering." + +#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +msgid "Failed to load LUKS2 reencryption context." +msgstr "Misslyckades med att läsa in LUKS2-omkrypteringskontext." + +#: lib/luks2/luks2_reencrypt.c:2619 +msgid "Failed to get reencryption state." +msgstr "Misslyckades med att erhålla status för omkryptering." + +#: lib/luks2/luks2_reencrypt.c:2623 +msgid "Device is not in reencryption." +msgstr "Enheten är inte i omkryptering." + +#: lib/luks2/luks2_reencrypt.c:2630 +msgid "Reencryption process is already running." +msgstr "Omkrypteringsprocessen pågår redan." + +#: lib/luks2/luks2_reencrypt.c:2632 +msgid "Failed to acquire reencryption lock." +msgstr "Misslyckades med att erhålla skrivlås för omkryptering." + +#: lib/luks2/luks2_reencrypt.c:2650 +msgid "Cannot proceed with reencryption. Run reencryption recovery first." +msgstr "Det går inte att fortsätta med omkryptering. Kör återställning av omkryptering först." + +#: lib/luks2/luks2_reencrypt.c:2750 +msgid "Active device size and requested reencryption size don't match." +msgstr "Aktiv enhetsstorlek och begärd omkrypteringsstorlek skiljer sig åt." + +#: lib/luks2/luks2_reencrypt.c:2764 +msgid "Illegal device size requested in reencryption parameters." +msgstr "Ogiltig enhetsstorlek begärd i omkrypteringsparametrarna." + +#: lib/luks2/luks2_reencrypt.c:2834 +msgid "Reencryption in-progress. Cannot perform recovery." +msgstr "Omkryptering pågår redan. Det går inte att utföra återhämtning." + +#: lib/luks2/luks2_reencrypt.c:2906 +msgid "LUKS2 reencryption already initialized in metadata." +msgstr "LUKS2-omkryptering är redan initierad i metadata." + +#: lib/luks2/luks2_reencrypt.c:2913 +msgid "Failed to initialize LUKS2 reencryption in metadata." +msgstr "Misslyckades med att initiera LUKS2-omkryptering i metadata." + +#: lib/luks2/luks2_reencrypt.c:3004 +msgid "Failed to set device segments for next reencryption hotzone." +msgstr "Misslyckades med sätta enhetssegment för nästa varm zon-omkryptering." + +#: lib/luks2/luks2_reencrypt.c:3046 +msgid "Failed to write reencryption resilience metadata." +msgstr "Misslyckades med att skriva motståndsmetadata för omkryptering." + +#: lib/luks2/luks2_reencrypt.c:3053 +msgid "Decryption failed." +msgstr "Avkryptering misslyckades." + +#: lib/luks2/luks2_reencrypt.c:3058 +#, c-format +msgid "Failed to write hotzone area starting at %." +msgstr "Misslyckades med att skriva område för varm zon med början vid %." + +#: lib/luks2/luks2_reencrypt.c:3063 +msgid "Failed to sync data." +msgstr "Misslyckades med att synkronisera data." + +#: lib/luks2/luks2_reencrypt.c:3071 +msgid "Failed to update metadata after current reencryption hotzone completed." +msgstr "Misslyckades med att uppdatera metadata efter aktuell varm zon för omkrypteringär färdigställd." + +#: lib/luks2/luks2_reencrypt.c:3138 +msgid "Failed to write LUKS2 metadata." +msgstr "Misslyckades med att skriva LUKS2-metadata." + +#: lib/luks2/luks2_reencrypt.c:3161 +msgid "Failed to wipe backup segment data." +msgstr "Misslyckades med att radera säkerhetskopia av segmentdata." + +#: lib/luks2/luks2_reencrypt.c:3174 +msgid "Failed to disable reencryption requirement flag." +msgstr "Misslyckades med att inaktivera flaggan för omkrypteringskrav." + +#: lib/luks2/luks2_reencrypt.c:3182 +#, c-format +msgid "Fatal error while reencrypting chunk starting at %, % sectors long." +msgstr "Ödesdigert fel vid omkrypteringschunk med start vid %, % sektorer lång." + +#: lib/luks2/luks2_reencrypt.c:3191 +msgid "Do not resume the device unless replaced with error target manually." +msgstr "Återuppta inte enheten om inte den ersatts med felmål manuellt." + +#: lib/luks2/luks2_reencrypt.c:3240 +msgid "Cannot proceed with reencryption. Unexpected reencryption status." +msgstr "Det går inte att fortsätta med omkryptering. Oväntat omkrypteringsläge." + +#: lib/luks2/luks2_reencrypt.c:3246 +msgid "Missing or invalid reencrypt context." +msgstr "Saknat eller ogiltigt omkrypteringskontext." + +#: lib/luks2/luks2_reencrypt.c:3253 +msgid "Failed to initialize reencryption device stack." +msgstr "Misslyckades med att initiera listan för omkrypteringsenheter." + +#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +msgid "Failed to update reencryption context." +msgstr "Misslyckades med att uppdatera omkrypteringskontext." + #: lib/luks2/luks2_token.c:262 msgid "No free token slot." msgstr "Ingen fri plats för token." @@ -1215,62 +1682,69 @@ msgid "Failed to create builtin token %s." msgstr "Misslyckades med att skapa inbyggd token %s." -#: src/cryptsetup.c:141 +#: src/cryptsetup.c:166 msgid "Can't do passphrase verification on non-tty inputs." msgstr "Kan inte verifiera lösenfras på icke-tty-ingångar." -#: src/cryptsetup.c:182 +#: src/cryptsetup.c:229 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Krypteringsparametrar för nyckelplatser stöds endast av LUKS2-enheter." -#: src/cryptsetup.c:212 src/cryptsetup.c:849 src/cryptsetup.c:1088 -#: src/cryptsetup_reencrypt.c:749 src/cryptsetup_reencrypt.c:814 +#: src/cryptsetup.c:259 src/cryptsetup.c:971 src/cryptsetup.c:1281 +#: src/cryptsetup.c:3157 src/cryptsetup_reencrypt.c:723 +#: src/cryptsetup_reencrypt.c:793 msgid "No known cipher specification pattern detected." msgstr "Inget känt chifferspecifikationsmönster kunde identifieras." -#: src/cryptsetup.c:220 +#: src/cryptsetup.c:267 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "VARNING: parametern --hash ignoreras i enkelt läge med specificerad nyckelfil.\n" -#: src/cryptsetup.c:228 +#: src/cryptsetup.c:275 msgid "WARNING: The --keyfile-size option is being ignored, the read size is the same as the encryption key size.\n" msgstr "VARNING: flaggan --keyfile-size ignoreras, lässtorleken är densamma som storleken för krypteringsnyckeln.\n" -#: src/cryptsetup.c:268 +#: src/cryptsetup.c:315 #, c-format msgid "Detected device signature(s) on %s. Proceeding further may damage existing data." msgstr "Identfierar enhetssignatur(er) på %s. Att fortsätta kan skada befintlig data." -#: src/cryptsetup.c:274 src/cryptsetup.c:969 src/cryptsetup.c:1065 -#: src/cryptsetup.c:1138 src/cryptsetup.c:1763 src/integritysetup.c:230 +#: src/cryptsetup.c:321 src/cryptsetup.c:1102 src/cryptsetup.c:1154 +#: src/cryptsetup.c:1258 src/cryptsetup.c:1331 src/cryptsetup.c:1986 +#: src/cryptsetup.c:2694 src/cryptsetup.c:2817 src/integritysetup.c:233 msgid "Operation aborted.\n" msgstr "Åtgärd avbruten.\n" -#: src/cryptsetup.c:342 +#: src/cryptsetup.c:389 msgid "Option --key-file is required." msgstr "Flaggan --key-file krävs." -#: src/cryptsetup.c:395 +#: src/cryptsetup.c:442 msgid "Enter VeraCrypt PIM: " msgstr "Ange VeraCrypt PIM: " -#: src/cryptsetup.c:404 +#: src/cryptsetup.c:451 msgid "Invalid PIM value: parse error." msgstr "Ogiltigt PIM-värde:tolkningsfel." -#: src/cryptsetup.c:407 +#: src/cryptsetup.c:454 msgid "Invalid PIM value: 0." msgstr "Ogiltigt PIM-värde: 0." -#: src/cryptsetup.c:410 +#: src/cryptsetup.c:457 msgid "Invalid PIM value: outside of range." msgstr "Ogiltigt PIM-värde:utanför intervallet." -#: src/cryptsetup.c:433 +#: src/cryptsetup.c:480 msgid "No device header detected with this passphrase." msgstr "Inget enhetshuvud finns tillgängligt med denna lösenfras." -#: src/cryptsetup.c:495 src/cryptsetup.c:1790 +#: src/cryptsetup.c:549 +#, c-format +msgid "Device %s is not a valid BITLK device." +msgstr "Enheten %s är inte en giltig BITLK-enhet." + +#: src/cryptsetup.c:584 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1280,72 +1754,88 @@ "som tillåter åtkomst till krypterad partition utan lösenfras.\n" "Denna utskrift bör alltid lagras krypterad på ett säkert ställe." -#: src/cryptsetup.c:574 +#: src/cryptsetup.c:681 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "Enheten %s är fortfarande aktiv och schemalagd för uppskjuten borttagning.\n" -#: src/cryptsetup.c:602 +#: src/cryptsetup.c:709 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "Att ändra storlek på aktiv enhet kräver volymnyckel i nyckelringen, men -flaggan --disable-keyring är angiven." -#: src/cryptsetup.c:727 +#: src/cryptsetup.c:850 msgid "Benchmark interrupted." msgstr "Prestandamätning avbruten." -#: src/cryptsetup.c:748 +#: src/cryptsetup.c:871 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s N/A\n" -#: src/cryptsetup.c:750 +#: src/cryptsetup.c:873 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u iterationer per sekund för %zu-bitnyckel\n" -#: src/cryptsetup.c:764 +#: src/cryptsetup.c:887 #, c-format msgid "%-10s N/A\n" msgstr "%-10s N/A\n" -#: src/cryptsetup.c:766 +#: src/cryptsetup.c:889 #, c-format msgid "%-10s %4u iterations, %5u memory, %1u parallel threads (CPUs) for %zu-bit key (requested %u ms time)\n" msgstr "%-10s %4u iterationer, %5u minne, %1u parallella trådar (CPU:er) för %zu-bitnyckelplats (begärde %u ms)\n" -#: src/cryptsetup.c:790 +#: src/cryptsetup.c:913 msgid "Result of benchmark is not reliable." msgstr "Resultat från prestandamätningen är inte pålitligt." -#: src/cryptsetup.c:841 +#: src/cryptsetup.c:963 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Tester är ungefärliga och använder endast minne (ingen lagrings-IO).\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:875 +#: src/cryptsetup.c:983 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "#%*s Algoritm | Nyckel | Kryptering | Avkryptering\n" -#: src/cryptsetup.c:879 +#: src/cryptsetup.c:987 #, c-format -msgid "Cipher %s is not available." -msgstr "Chiffret %s är inte tillgängligt." +msgid "Cipher %s (with %i bits key) is not available." +msgstr "Chiffret %s (med nyckel av %i bitar) är inte tillgängligt." #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:899 +#: src/cryptsetup.c:1006 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "# Algoritm | Nyckel | Kryptering | AVkryptering\n" -#: src/cryptsetup.c:908 +#: src/cryptsetup.c:1015 msgid "N/A" msgstr "N/A" -#: src/cryptsetup.c:968 +#: src/cryptsetup.c:1095 +msgid "" +"Seems device does not require reencryption recovery.\n" +"Do you want to proceed anyway?" +msgstr "" +"Verkar som enheten inte kräver omkrypteringsåterställning.\n" +"Vill du ändå fortsätta?" + +#: src/cryptsetup.c:1101 +msgid "Really proceed with LUKS2 reencryption recovery?" +msgstr "Vill du verkligen fortsätta med LUKS2-omkrypteringsåterställning?" + +#: src/cryptsetup.c:1110 +msgid "Enter passphrase for reencryption recovery: " +msgstr "Ange lösenfras för omkrypteringsåterhämtning: " + +#: src/cryptsetup.c:1153 msgid "Really try to repair LUKS device header?" msgstr "Vill du verkligen försöka att reparera LUKS-enhetshuvud?" -#: src/cryptsetup.c:984 src/integritysetup.c:144 +#: src/cryptsetup.c:1172 src/integritysetup.c:146 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" @@ -1353,133 +1843,150 @@ "Rensar enheten för att initialisera kontrollsumma för integritet.\n" "Du kan avbryta detta genom att trycka ned CTRL+c (resten av den ej rensade enheten kommer att innehålla en ogiltigt kontrollsumma).\n" -#: src/cryptsetup.c:1006 src/integritysetup.c:166 +#: src/cryptsetup.c:1194 src/integritysetup.c:168 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "Det går inte att inaktivera temporär enhet %s." -#: src/cryptsetup.c:1050 +#: src/cryptsetup.c:1243 msgid "Integrity option can be used only for LUKS2 format." msgstr "Flaggan för integritet kan endast användas för formatet LUKS2." -#: src/cryptsetup.c:1055 src/cryptsetup.c:1115 +#: src/cryptsetup.c:1248 src/cryptsetup.c:1308 msgid "Unsupported LUKS2 metadata size options." msgstr "Flaggorna för storlekar på LUKS2-metadata stöds inte." -#: src/cryptsetup.c:1072 +#: src/cryptsetup.c:1265 #, c-format msgid "Cannot create header file %s." msgstr "Det går inte att skapa huvudfil %s." -#: src/cryptsetup.c:1095 src/integritysetup.c:192 src/integritysetup.c:201 -#: src/integritysetup.c:210 src/integritysetup.c:276 src/integritysetup.c:285 -#: src/integritysetup.c:295 +#: src/cryptsetup.c:1288 src/integritysetup.c:195 src/integritysetup.c:204 +#: src/integritysetup.c:213 src/integritysetup.c:284 src/integritysetup.c:293 +#: src/integritysetup.c:303 msgid "No known integrity specification pattern detected." msgstr "Inga kända integritetspecifikationsmönster identifierat." -#: src/cryptsetup.c:1108 +#: src/cryptsetup.c:1301 #, c-format msgid "Cannot use %s as on-disk header." msgstr "Det går inte att använda %s som diskhuvud." -#: src/cryptsetup.c:1132 src/integritysetup.c:224 +#: src/cryptsetup.c:1325 src/integritysetup.c:227 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "Detta kommer att skriva över data på %s och går inte att ångra." -#: src/cryptsetup.c:1173 src/cryptsetup.c:1484 src/cryptsetup.c:1551 -#: src/cryptsetup.c:1646 src/cryptsetup.c:1712 +#: src/cryptsetup.c:1366 src/cryptsetup.c:1700 src/cryptsetup.c:1767 +#: src/cryptsetup.c:1869 src/cryptsetup.c:1935 src/cryptsetup_reencrypt.c:553 msgid "Failed to set pbkdf parameters." msgstr "Misslyckades med att sätta pbkdf-parametrar." -#: src/cryptsetup.c:1242 +#: src/cryptsetup.c:1451 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "Förminskad dataoffset endast tillåtet för fristående LUKS-huvuden." -#: src/cryptsetup.c:1284 +#: src/cryptsetup.c:1462 src/cryptsetup.c:1773 +msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." +msgstr "Det går inte att avgöra volymens nyckelstorlek för LUKS utan nyckelplatser, använd flaggen --key-size." + +#: src/cryptsetup.c:1500 msgid "Device activated but cannot make flags persistent." msgstr "Enheten aktiverad men kan inte spara undan flaggorna." -#: src/cryptsetup.c:1365 +#: src/cryptsetup.c:1581 src/cryptsetup.c:1651 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "Nyckelplats %d markerad för borttagning." -#: src/cryptsetup.c:1368 src/cryptsetup.c:1706 -#, c-format -msgid "Keyslot %d is not active." -msgstr "Nyckelplats %d är inte aktiv." - -#: src/cryptsetup.c:1377 src/cryptsetup.c:1438 +#: src/cryptsetup.c:1593 src/cryptsetup.c:1654 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "Detta är sista nyckelplatsen. Enheten kommer att bli oanvändbar efter att denna nyckel tagits bort." -#: src/cryptsetup.c:1378 +#: src/cryptsetup.c:1594 msgid "Enter any remaining passphrase: " msgstr "Ange eventuell återstående lösenfras: " -#: src/cryptsetup.c:1379 src/cryptsetup.c:1440 +#: src/cryptsetup.c:1595 src/cryptsetup.c:1656 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Åtgärden avbröts, nyckelplatsen raderades INTE.\n" -#: src/cryptsetup.c:1417 +#: src/cryptsetup.c:1633 msgid "Enter passphrase to be deleted: " msgstr "Ange lösenfras att ta bort: " -#: src/cryptsetup.c:1435 -#, c-format -msgid "Key slot %d selected for deletion." -msgstr "Nyckelplats %d markerad för borttagning." - -#: src/cryptsetup.c:1498 src/cryptsetup.c:1565 src/cryptsetup.c:1599 +#: src/cryptsetup.c:1714 src/cryptsetup.c:1788 src/cryptsetup.c:1822 msgid "Enter new passphrase for key slot: " msgstr "Ange ny lösenfras för nyckelplats: " -#: src/cryptsetup.c:1582 src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:1805 src/cryptsetup_reencrypt.c:1343 #, c-format msgid "Enter any existing passphrase: " msgstr "Ange valfri existerande lösenfras: " -#: src/cryptsetup.c:1650 +#: src/cryptsetup.c:1873 msgid "Enter passphrase to be changed: " msgstr "Ange lösenfras att ändra: " -#: src/cryptsetup.c:1666 src/cryptsetup_reencrypt.c:1338 +#: src/cryptsetup.c:1889 src/cryptsetup_reencrypt.c:1329 msgid "Enter new passphrase: " msgstr "Ange ny lösenfras: " -#: src/cryptsetup.c:1716 +#: src/cryptsetup.c:1939 msgid "Enter passphrase for keyslot to be converted: " msgstr "Ange lösenfras för nyckelplats att konvertera: " -#: src/cryptsetup.c:1740 +#: src/cryptsetup.c:1963 msgid "Only one device argument for isLuks operation is supported." msgstr "Endast ett enhetsargument för operationen isLuks stöds." -#: src/cryptsetup.c:1924 src/cryptsetup.c:1945 +#: src/cryptsetup.c:2013 +msgid "" +"The header dump with volume key is sensitive information\n" +"that allows access to encrypted partition without a passphrase.\n" +"This dump should be stored encrypted in a safe place." +msgstr "" +"Utskrift av huvudet med volymnyckel är känslig information\n" +"som tillåter åtkomst till krypterad partition utan lösenfras.\n" +"Denna utskrift bör alltid lagras krypterad på ett säkert ställe." + +#: src/cryptsetup.c:2078 +#, c-format +msgid "Keyslot %d does not contain unbound key." +msgstr "Nyckelplats %d innehåller inte obunden nyckel." + +#: src/cryptsetup.c:2084 +msgid "" +"The header dump with unbound key is sensitive information.\n" +"This dump should be stored encrypted in a safe place." +msgstr "" +"Utskrift av huvudet med obunden nyckel är känslig information.\n" +"Denna utskrift bör alltid lagras krypterad på ett säkert ställe." + +#: src/cryptsetup.c:2219 src/cryptsetup.c:2240 msgid "Option --header-backup-file is required." msgstr "Flaggan --header-backup-file krävs." -#: src/cryptsetup.c:1975 +#: src/cryptsetup.c:2270 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s är inte en cryptsetup-hanterad enhet." -#: src/cryptsetup.c:1986 +#: src/cryptsetup.c:2281 #, c-format msgid "Refresh is not supported for device type %s" msgstr "Att uppdatera stöds inte för enhetstypen %s" -#: src/cryptsetup.c:2024 +#: src/cryptsetup.c:2323 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Okänd metadata för enhetstypen %s." -#: src/cryptsetup.c:2027 +#: src/cryptsetup.c:2326 msgid "Command requires device and mapped name as arguments." msgstr "Kommandot kräver enhet och mappat namn som argument." -#: src/cryptsetup.c:2049 +#: src/cryptsetup.c:2348 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -1488,213 +1995,334 @@ "Denna åtgärd kommer att ta bort alla nyckelplatser på enhet %s.\n" "Enheten kommer att bli oanvändbar efter denna åtgärd." -#: src/cryptsetup.c:2056 +#: src/cryptsetup.c:2355 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Åtgärden avbryten, nyckelplatser raderades EJ.\n" -#: src/cryptsetup.c:2093 +#: src/cryptsetup.c:2392 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Ogiltig LUKS-typ, endast luks1 och luks2 stöds." -#: src/cryptsetup.c:2111 +#: src/cryptsetup.c:2410 #, c-format msgid "Device is already %s type." msgstr "Enheten är redan av %s-typ." -#: src/cryptsetup.c:2116 +#: src/cryptsetup.c:2415 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Denna åtgärd kommer att konvertera %s till %s-format.\n" -#: src/cryptsetup.c:2122 +#: src/cryptsetup.c:2421 msgid "Operation aborted, device was NOT converted.\n" msgstr "Åtgärden avbröts, enheten konverterades INTE.\n" -#: src/cryptsetup.c:2162 +#: src/cryptsetup.c:2461 msgid "Option --priority, --label or --subsystem is missing." msgstr "Saknar flaggan --priority, --label eller --subsystem." -#: src/cryptsetup.c:2196 src/cryptsetup.c:2229 src/cryptsetup.c:2252 +#: src/cryptsetup.c:2495 src/cryptsetup.c:2528 src/cryptsetup.c:2551 #, c-format msgid "Token %d is invalid." msgstr "Token %d är ogiltig." -#: src/cryptsetup.c:2199 src/cryptsetup.c:2255 +#: src/cryptsetup.c:2498 src/cryptsetup.c:2554 #, c-format msgid "Token %d in use." msgstr "Token %d används." -#: src/cryptsetup.c:2206 +#: src/cryptsetup.c:2505 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "Misslyckades med att lägga till luks2-nyckelringsstoken %d." -#: src/cryptsetup.c:2215 src/cryptsetup.c:2277 +#: src/cryptsetup.c:2514 src/cryptsetup.c:2576 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "Misslyckades med att tilldela token %d till nyckelplats %d." -#: src/cryptsetup.c:2232 +#: src/cryptsetup.c:2531 #, c-format msgid "Token %d is not in use." msgstr "Token %d används ej." -#: src/cryptsetup.c:2267 +#: src/cryptsetup.c:2566 msgid "Failed to import token from file." msgstr "Misslyckades med att importera token från fil." -#: src/cryptsetup.c:2292 +#: src/cryptsetup.c:2591 #, c-format msgid "Failed to get token %d for export." msgstr "Misslyckades med att hämta token %d för export." -#: src/cryptsetup.c:2307 +#: src/cryptsetup.c:2606 msgid "--key-description parameter is mandatory for token add action." msgstr "parametern --key-description krävs för åtgärden lägg till token." -#: src/cryptsetup.c:2313 src/cryptsetup.c:2321 +#: src/cryptsetup.c:2612 src/cryptsetup.c:2620 msgid "Action requires specific token. Use --token-id parameter." msgstr "Åtgärden kräver specifik token. Använd parametern --token-id." -#: src/cryptsetup.c:2326 +#: src/cryptsetup.c:2625 #, c-format msgid "Invalid token operation %s." msgstr "Ogiltig tokenåtgärd %s." -#: src/cryptsetup.c:2366 +#: src/cryptsetup.c:2680 +#, c-format +msgid "Auto-detected active dm device '%s' for data device %s.\n" +msgstr "Auto-identifierade aktiv dm-enhet ”%s” för dataenheten %s.\n" + +#: src/cryptsetup.c:2684 +#, c-format +msgid "Device %s is not a block device.\n" +msgstr "Enheten %s är inte en giltig blockenhet.\n" + +#: src/cryptsetup.c:2686 +#, c-format +msgid "Failed to auto-detect device %s holders." +msgstr "Misslyckades med att identifiera kopplingarna till enhet %s." + +#: src/cryptsetup.c:2688 +#, c-format +msgid "" +"Unable to decide if device %s is activated or not.\n" +"Are you sure you want to proceed with reencryption in offline mode?\n" +"It may lead to data corruption if the device is actually activated.\n" +"To run reencryption in online mode, use --active-name parameter instead.\n" +msgstr "" +"Det går inte att avgöra om enheten %s är aktiverade eller ej.\n" +"Är du säker på att du vill fortsätta kryptera om i frånkopplat läge?\n" +"Det kan leda till datakorruption om enheten är aktiverad.\n" +"För att kryptera om i uppkopplat läge, använd istället flaggan --active-name.\n" + +#: src/cryptsetup.c:2768 +msgid "Invalid LUKS device type." +msgstr "Ogiltig LUKS-enhetstyp." + +#: src/cryptsetup.c:2773 +msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." +msgstr "Kryptering utan frånkopplat huvud (--header) är inte möjligt utan att minska datastorleken på enheten (--reduce-device-size)." + +#: src/cryptsetup.c:2778 +msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." +msgstr "Begärd dataförskjutning måste vara mindre än, eller lika med halva av parametern --reduce-device-size." + +#: src/cryptsetup.c:2787 +#, c-format +msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" +msgstr "Justera värdet av --reduce-device-size-värdet till dubbla --offset % (sektorer).\n" + +#: src/cryptsetup.c:2791 +msgid "Encryption is supported only for LUKS2 format." +msgstr "Kryptering stöds endast för formatet LUKS2." + +#: src/cryptsetup.c:2813 +#, c-format +msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" +msgstr "Identifierade LUKS-enhet på %s. Vill du kryptera LUKS-enheten igen?" + +#: src/cryptsetup.c:2828 +#, c-format +msgid "Temporary header file %s already exists. Aborting." +msgstr "Tillfällig huvudfil %s finns redan. Avbryter." + +#: src/cryptsetup.c:2830 src/cryptsetup.c:2837 +#, c-format +msgid "Cannot create temporary header file %s." +msgstr "Det går inte att skapa tillfällig huvudfil %s." + +#: src/cryptsetup.c:2901 +#, c-format +msgid "%s/%s is now active and ready for online encryption.\n" +msgstr "%s/%s är nu aktiv och redo för uppkopplad kryptering.\n" + +#: src/cryptsetup.c:3065 src/cryptsetup.c:3071 +msgid "Not enough free keyslots for reencryption." +msgstr "Inte nog med fria nyckelplatser för omkryptering." + +#: src/cryptsetup.c:3091 src/cryptsetup_reencrypt.c:1294 +msgid "Key file can be used only with --key-slot or with exactly one key slot active." +msgstr "Nyckelfil kan endast användas med --key-slot eller precis en aktiv nyckelplats." + +#: src/cryptsetup.c:3100 src/cryptsetup_reencrypt.c:1341 +#: src/cryptsetup_reencrypt.c:1352 +#, c-format +msgid "Enter passphrase for key slot %d: " +msgstr "Ange lösenfras för nyckelplats %d: " + +#: src/cryptsetup.c:3108 +#, c-format +msgid "Enter passphrase for key slot %u: " +msgstr "Ange lösenfras för nyckelplats %u: " + +#: src/cryptsetup.c:3283 +msgid "Command requires device as argument." +msgstr "Kommandot kräver en enhet som argument." + +#: src/cryptsetup.c:3305 +msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." +msgstr "Stödjer endast LUKS2-formatet. Använd verktyget cryptsetup-reencrypt för LUKS1." + +#: src/cryptsetup.c:3317 +msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." +msgstr "Föråldrad frånkopplad omkryptering pågår redan. Använd verktyget cryptsetup-reencrypt." + +#: src/cryptsetup.c:3327 src/cryptsetup_reencrypt.c:178 +msgid "Reencryption of device with integrity profile is not supported." +msgstr "Kryptering för enhet med integritetsprofil stöds ej." + +#: src/cryptsetup.c:3335 +msgid "LUKS2 reencryption already initialized. Aborting operation." +msgstr "LUKS2-omkryptering är redan initierad. Avbryter åtgärd." + +#: src/cryptsetup.c:3339 +msgid "LUKS2 device is not in reencryption." +msgstr "LUKS2-enheten är inte i omkryptering." + +#: src/cryptsetup.c:3366 msgid " [--type ] []" msgstr " [--type ] []" -#: src/cryptsetup.c:2366 -msgid "open device as mapping " -msgstr "öppna enhet som mappning " - -#: src/cryptsetup.c:2367 src/cryptsetup.c:2368 src/cryptsetup.c:2369 -#: src/veritysetup.c:363 src/veritysetup.c:364 src/integritysetup.c:464 -#: src/integritysetup.c:465 +#: src/cryptsetup.c:3366 src/veritysetup.c:399 src/integritysetup.c:480 +msgid "open device as " +msgstr "öppna enhet som " + +#: src/cryptsetup.c:3367 src/cryptsetup.c:3368 src/cryptsetup.c:3369 +#: src/veritysetup.c:400 src/veritysetup.c:401 src/integritysetup.c:481 +#: src/integritysetup.c:482 msgid "" msgstr "" -#: src/cryptsetup.c:2367 +#: src/cryptsetup.c:3367 src/veritysetup.c:400 src/integritysetup.c:481 msgid "close device (remove mapping)" msgstr "stäng enhet (ta bort mappning)" -#: src/cryptsetup.c:2368 +#: src/cryptsetup.c:3368 msgid "resize active device" msgstr "ändra storlek på aktiv enhet" -#: src/cryptsetup.c:2369 +#: src/cryptsetup.c:3369 msgid "show device status" msgstr "visa enhetsstatus" -#: src/cryptsetup.c:2370 +#: src/cryptsetup.c:3370 msgid "[--cipher ]" msgstr "[--cipher ]" -#: src/cryptsetup.c:2370 +#: src/cryptsetup.c:3370 msgid "benchmark cipher" msgstr "prestandamät chiffer" -#: src/cryptsetup.c:2371 src/cryptsetup.c:2372 src/cryptsetup.c:2373 -#: src/cryptsetup.c:2374 src/cryptsetup.c:2381 src/cryptsetup.c:2382 -#: src/cryptsetup.c:2383 src/cryptsetup.c:2384 src/cryptsetup.c:2385 -#: src/cryptsetup.c:2386 src/cryptsetup.c:2387 src/cryptsetup.c:2388 +#: src/cryptsetup.c:3371 src/cryptsetup.c:3372 src/cryptsetup.c:3373 +#: src/cryptsetup.c:3374 src/cryptsetup.c:3375 src/cryptsetup.c:3382 +#: src/cryptsetup.c:3383 src/cryptsetup.c:3384 src/cryptsetup.c:3385 +#: src/cryptsetup.c:3386 src/cryptsetup.c:3387 src/cryptsetup.c:3388 +#: src/cryptsetup.c:3389 src/cryptsetup.c:3390 msgid "" msgstr "" -#: src/cryptsetup.c:2371 +#: src/cryptsetup.c:3371 msgid "try to repair on-disk metadata" msgstr "försök att reparera metadata på disken" -#: src/cryptsetup.c:2372 +#: src/cryptsetup.c:3372 +msgid "reencrypt LUKS2 device" +msgstr "omkryptering av LUKS2-enhet" + +#: src/cryptsetup.c:3373 msgid "erase all keyslots (remove encryption key)" msgstr "ta bort alla nyckelplatser (ta bort krypteringsnyckeln)" -#: src/cryptsetup.c:2373 +#: src/cryptsetup.c:3374 msgid "convert LUKS from/to LUKS2 format" msgstr "konvertera LUKS från/till LUKS2-format" -#: src/cryptsetup.c:2374 +#: src/cryptsetup.c:3375 msgid "set permanent configuration options for LUKS2" msgstr "ange permanenta konfigurationsflaggor för LUKS2" -#: src/cryptsetup.c:2375 src/cryptsetup.c:2376 +#: src/cryptsetup.c:3376 src/cryptsetup.c:3377 msgid " []" msgstr " []" -#: src/cryptsetup.c:2375 +#: src/cryptsetup.c:3376 msgid "formats a LUKS device" msgstr "formaterar en LUKS-enhet" -#: src/cryptsetup.c:2376 +#: src/cryptsetup.c:3377 msgid "add key to LUKS device" msgstr "lägg till nyckel till LUKS-enhet" -#: src/cryptsetup.c:2377 src/cryptsetup.c:2378 src/cryptsetup.c:2379 +#: src/cryptsetup.c:3378 src/cryptsetup.c:3379 src/cryptsetup.c:3380 msgid " []" msgstr " []" -#: src/cryptsetup.c:2377 +#: src/cryptsetup.c:3378 msgid "removes supplied key or key file from LUKS device" msgstr "tar bort angiven nyckel eller nyckelfil från LUKS-enhet" -#: src/cryptsetup.c:2378 +#: src/cryptsetup.c:3379 msgid "changes supplied key or key file of LUKS device" msgstr "ändrar angiven nyckel eller nyckelfil för LUKS-enhet" -#: src/cryptsetup.c:2379 +#: src/cryptsetup.c:3380 msgid "converts a key to new pbkdf parameters" msgstr "konverterar en nyckel till nya pbkdf-parametrar" -#: src/cryptsetup.c:2380 +#: src/cryptsetup.c:3381 msgid " " msgstr " " -#: src/cryptsetup.c:2380 +#: src/cryptsetup.c:3381 msgid "wipes key with number from LUKS device" msgstr "rensar nyckeln med nummer från LUKS-enhet" -#: src/cryptsetup.c:2381 +#: src/cryptsetup.c:3382 msgid "print UUID of LUKS device" msgstr "skriv ut UUID för LUKS-enhet" -#: src/cryptsetup.c:2382 +#: src/cryptsetup.c:3383 msgid "tests for LUKS partition header" msgstr "testar för LUKS-partitionshuvud" -#: src/cryptsetup.c:2383 +#: src/cryptsetup.c:3384 msgid "dump LUKS partition information" msgstr "skriver ut information om LUKS-partition" -#: src/cryptsetup.c:2384 +#: src/cryptsetup.c:3385 msgid "dump TCRYPT device information" msgstr "skriver ut information om TCRYPT-partition" -#: src/cryptsetup.c:2385 +#: src/cryptsetup.c:3386 +msgid "dump BITLK device information" +msgstr "skriv ut BITLK-enhetsinformation" + +#: src/cryptsetup.c:3387 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "Försätt LUKS-enhet i vänteläge och rensa nyckel (alla in-/ut-åtgärder är frusna)" -#: src/cryptsetup.c:2386 +#: src/cryptsetup.c:3388 msgid "Resume suspended LUKS device" msgstr "Återuppta LUKS-enhet i vänteläge" -#: src/cryptsetup.c:2387 +#: src/cryptsetup.c:3389 msgid "Backup LUKS device header and keyslots" msgstr "Säkerhetskopiera huvud och nyckelplatser från LUKS-enhet" -#: src/cryptsetup.c:2388 +#: src/cryptsetup.c:3390 msgid "Restore LUKS device header and keyslots" msgstr "Återställ huvud och nyckelplatser för LUKS-enhet" -#: src/cryptsetup.c:2389 +#: src/cryptsetup.c:3391 msgid " " msgstr " " -#: src/cryptsetup.c:2389 +#: src/cryptsetup.c:3391 msgid "Manipulate LUKS2 tokens" msgstr "Manipulera LUKS2-token" -#: src/cryptsetup.c:2407 src/veritysetup.c:380 src/integritysetup.c:481 +#: src/cryptsetup.c:3409 src/veritysetup.c:417 src/integritysetup.c:498 msgid "" "\n" " is one of:\n" @@ -1702,19 +2330,19 @@ "\n" "<åtgärd> är en av:\n" -#: src/cryptsetup.c:2413 +#: src/cryptsetup.c:3415 msgid "" "\n" "You can also use old syntax aliases:\n" -"\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen\n" -"\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose\n" +"\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" +"\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" msgstr "" "\n" "Du kan också använda gamla <åtgärd> syntaxalias:\n" -"\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen\n" -"\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose\n" +"\topen: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" +"\tclose: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkOpen\n" -#: src/cryptsetup.c:2417 +#: src/cryptsetup.c:3419 #, c-format msgid "" "\n" @@ -1729,7 +2357,7 @@ " är numret för LUKS-nyckelplatsen att ändra\n" " valfri nyckelfil för den nya nyckeln för luksAddKey-åtgärden\n" -#: src/cryptsetup.c:2424 +#: src/cryptsetup.c:3426 #, c-format msgid "" "\n" @@ -1738,7 +2366,7 @@ "\n" "Inkompilerat standardmetadataformat är %s (för luksFormat-åtgärd).\n" -#: src/cryptsetup.c:2429 +#: src/cryptsetup.c:3431 #, c-format msgid "" "\n" @@ -1755,7 +2383,7 @@ "Standard-PBKDF för LUKS2: %s\n" "\tIterationstid: %d, Minne: %dkB, Parallella trådar: %d\n" -#: src/cryptsetup.c:2440 +#: src/cryptsetup.c:3442 #, c-format msgid "" "\n" @@ -1770,543 +2398,649 @@ "\tplain: %s, Nyckel: %d bitar, Lösenordshashning: %s\n" "\tLUKS1: %s, Nyckel: %d bitar, LUKS-huvudhashning %s, RNG: %s\n" -#: src/cryptsetup.c:2449 +#: src/cryptsetup.c:3451 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: Standardnyckelstorlek med XTS-läge (två interna nycklar) kommer att dubbleras.\n" -#: src/cryptsetup.c:2460 src/veritysetup.c:537 src/integritysetup.c:621 +#: src/cryptsetup.c:3467 src/veritysetup.c:575 src/integritysetup.c:642 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: kräver %s som argument" -#: src/cryptsetup.c:2498 src/veritysetup.c:420 src/integritysetup.c:515 -#: src/cryptsetup_reencrypt.c:1611 +#: src/cryptsetup.c:3500 src/veritysetup.c:462 src/integritysetup.c:536 +#: src/cryptsetup_reencrypt.c:1607 msgid "Show this help message" msgstr "Visa detta hjälpmeddelande" -#: src/cryptsetup.c:2499 src/veritysetup.c:421 src/integritysetup.c:516 -#: src/cryptsetup_reencrypt.c:1612 +#: src/cryptsetup.c:3501 src/veritysetup.c:463 src/integritysetup.c:537 +#: src/cryptsetup_reencrypt.c:1608 msgid "Display brief usage" msgstr "Visa kort information om användning" -#: src/cryptsetup.c:2503 src/veritysetup.c:425 src/integritysetup.c:520 -#: src/cryptsetup_reencrypt.c:1616 -msgid "Help options:" -msgstr "Hjälpflaggor:" - -#: src/cryptsetup.c:2504 src/veritysetup.c:426 src/integritysetup.c:521 -#: src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3502 src/veritysetup.c:464 src/integritysetup.c:538 +#: src/cryptsetup_reencrypt.c:1609 msgid "Print package version" msgstr "Skriv ut paketversion" -#: src/cryptsetup.c:2505 src/veritysetup.c:427 src/integritysetup.c:522 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3506 src/veritysetup.c:468 src/integritysetup.c:542 +#: src/cryptsetup_reencrypt.c:1613 +msgid "Help options:" +msgstr "Hjälpflaggor:" + +#: src/cryptsetup.c:3507 src/veritysetup.c:469 src/integritysetup.c:543 +#: src/cryptsetup_reencrypt.c:1614 msgid "Shows more detailed error messages" msgstr "Visar mer detaljerade felmeddelanden" -#: src/cryptsetup.c:2506 src/veritysetup.c:428 src/integritysetup.c:523 -#: src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3508 src/veritysetup.c:470 src/integritysetup.c:544 +#: src/cryptsetup_reencrypt.c:1615 msgid "Show debug messages" msgstr "Visa felsökningsmeddelanden" -#: src/cryptsetup.c:2507 +#: src/cryptsetup.c:3509 msgid "Show debug messages including JSON metadata" msgstr "Visa felsökningsmeddelanden inklusive JSON-metadata" -#: src/cryptsetup.c:2508 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1617 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "Chiffret som används för att kryptera disken (se /proc/crypto)" -#: src/cryptsetup.c:2509 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3511 src/cryptsetup_reencrypt.c:1619 msgid "The hash used to create the encryption key from the passphrase" msgstr "Hashen som används för att skapa krypteringsnyckel från lösenfras" -#: src/cryptsetup.c:2510 +#: src/cryptsetup.c:3512 msgid "Verifies the passphrase by asking for it twice" msgstr "Verifierar lösenfrasen genom att fråga efter den två gånger" -#: src/cryptsetup.c:2511 src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1621 msgid "Read the key from a file" msgstr "Läs nyckeln från en fil" -#: src/cryptsetup.c:2512 +#: src/cryptsetup.c:3514 msgid "Read the volume (master) key from file." msgstr "Läs volymnyckeln (master) från fil." -#: src/cryptsetup.c:2513 +#: src/cryptsetup.c:3515 msgid "Dump volume (master) key instead of keyslots info" msgstr "Skriv ut volymnyckel (master) istället för nyckelplatsinfo" -#: src/cryptsetup.c:2514 src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup.c:3516 src/cryptsetup_reencrypt.c:1618 msgid "The size of the encryption key" msgstr "Storleken för krypteringsnyckeln" -#: src/cryptsetup.c:2514 src/cryptsetup.c:2571 src/integritysetup.c:539 -#: src/integritysetup.c:543 src/integritysetup.c:547 -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup.c:3516 src/cryptsetup.c:3579 src/integritysetup.c:562 +#: src/integritysetup.c:566 src/integritysetup.c:570 +#: src/cryptsetup_reencrypt.c:1618 msgid "BITS" msgstr "BITAR" -#: src/cryptsetup.c:2515 src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup.c:3517 src/cryptsetup_reencrypt.c:1634 msgid "Limits the read from keyfile" msgstr "Begränsa läsningen från nyckelfil" -#: src/cryptsetup.c:2515 src/cryptsetup.c:2516 src/cryptsetup.c:2517 -#: src/cryptsetup.c:2518 src/cryptsetup.c:2568 src/cryptsetup.c:2569 -#: src/veritysetup.c:431 src/veritysetup.c:432 src/veritysetup.c:433 -#: src/veritysetup.c:436 src/veritysetup.c:437 src/integritysetup.c:530 -#: src/integritysetup.c:534 src/integritysetup.c:535 -#: src/cryptsetup_reencrypt.c:1637 src/cryptsetup_reencrypt.c:1638 -#: src/cryptsetup_reencrypt.c:1639 src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup.c:3517 src/cryptsetup.c:3518 src/cryptsetup.c:3519 +#: src/cryptsetup.c:3520 src/cryptsetup.c:3523 src/cryptsetup.c:3576 +#: src/cryptsetup.c:3577 src/cryptsetup.c:3585 src/cryptsetup.c:3586 +#: src/veritysetup.c:473 src/veritysetup.c:474 src/veritysetup.c:475 +#: src/veritysetup.c:478 src/veritysetup.c:479 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 msgid "bytes" msgstr "byte" -#: src/cryptsetup.c:2516 src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1633 msgid "Number of bytes to skip in keyfile" msgstr "Antal byte att hoppa över i nyckelfil" -#: src/cryptsetup.c:2517 +#: src/cryptsetup.c:3519 msgid "Limits the read from newly added keyfile" msgstr "Begränsa läsningen från nyligen tillagd nyckelfil" -#: src/cryptsetup.c:2518 +#: src/cryptsetup.c:3520 msgid "Number of bytes to skip in newly added keyfile" msgstr "Antal byte att hoppa över i nyligen tillagd nyckelfil" -#: src/cryptsetup.c:2519 +#: src/cryptsetup.c:3521 msgid "Slot number for new key (default is first free)" msgstr "Platsnummer för ny nyckel (standard är första lediga)" -#: src/cryptsetup.c:2520 +#: src/cryptsetup.c:3522 msgid "The size of the device" msgstr "Storleken för enheten" -#: src/cryptsetup.c:2520 src/cryptsetup.c:2521 src/cryptsetup.c:2522 -#: src/cryptsetup.c:2528 src/integritysetup.c:531 src/integritysetup.c:536 +#: src/cryptsetup.c:3522 src/cryptsetup.c:3524 src/cryptsetup.c:3525 +#: src/cryptsetup.c:3531 src/integritysetup.c:552 src/integritysetup.c:559 msgid "SECTORS" msgstr "SEKTORER" -#: src/cryptsetup.c:2521 +#: src/cryptsetup.c:3523 src/cryptsetup_reencrypt.c:1636 +msgid "Use only specified device size (ignore rest of device). DANGEROUS!" +msgstr "Använd endast specificerad enhetsstorlek (ignorera resten av enheten). FARLIGT!" + +#: src/cryptsetup.c:3524 msgid "The start offset in the backend device" msgstr "Startoffset i bakändesenheten" -#: src/cryptsetup.c:2522 +#: src/cryptsetup.c:3525 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Hur många sektorer av krypterat data som ska hoppas över i början" -#: src/cryptsetup.c:2523 +#: src/cryptsetup.c:3526 msgid "Create a readonly mapping" msgstr "Skapa en skrivskyddad mappning" -#: src/cryptsetup.c:2524 src/integritysetup.c:524 -#: src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3527 src/integritysetup.c:545 +#: src/cryptsetup_reencrypt.c:1624 msgid "Do not ask for confirmation" msgstr "Fråga inte efter bekräftelse" -#: src/cryptsetup.c:2525 +#: src/cryptsetup.c:3528 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Tidsgräns för interaktiv lösenfrasprompt (i sekunder)" -#: src/cryptsetup.c:2525 src/cryptsetup.c:2526 src/integritysetup.c:525 -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup.c:3528 src/cryptsetup.c:3529 src/integritysetup.c:546 +#: src/cryptsetup_reencrypt.c:1625 msgid "secs" msgstr "sek" -#: src/cryptsetup.c:2526 src/integritysetup.c:525 -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup.c:3529 src/integritysetup.c:546 +#: src/cryptsetup_reencrypt.c:1625 msgid "Progress line update (in seconds)" msgstr "Uppdatering av förloppslinje (i sekunder)" -#: src/cryptsetup.c:2527 src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1626 msgid "How often the input of the passphrase can be retried" msgstr "Hur många inmatningsförsök av lösenfrasen som kan göras" -#: src/cryptsetup.c:2528 +#: src/cryptsetup.c:3531 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Justera nyttolast i sektorgränser - för luksFormat" -#: src/cryptsetup.c:2529 +#: src/cryptsetup.c:3532 msgid "File with LUKS header and keyslots backup" msgstr "Fil med säkerhetskopior av LUKS-huvud och nyckelplatser" -#: src/cryptsetup.c:2530 src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1627 msgid "Use /dev/random for generating volume key" msgstr "Använd /dev/random för att generera volymnyckel" -#: src/cryptsetup.c:2531 src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1628 msgid "Use /dev/urandom for generating volume key" msgstr "Använd /dev/urandom för att generera volymnyckel" -#: src/cryptsetup.c:2532 +#: src/cryptsetup.c:3535 msgid "Share device with another non-overlapping crypt segment" msgstr "Dela enhet med ett annat ej överlappande krypteringssegment" -#: src/cryptsetup.c:2533 src/veritysetup.c:440 +#: src/cryptsetup.c:3536 src/veritysetup.c:482 msgid "UUID for device to use" msgstr "UUID för enheten att använda" -#: src/cryptsetup.c:2534 +#: src/cryptsetup.c:3537 src/integritysetup.c:579 msgid "Allow discards (aka TRIM) requests for device" msgstr "Tillåt avvisningsbegäran (TRIM) för enhet" -#: src/cryptsetup.c:2535 src/cryptsetup_reencrypt.c:1649 +#: src/cryptsetup.c:3538 src/cryptsetup_reencrypt.c:1645 msgid "Device or file with separated LUKS header" msgstr "Enhet eller fil med separerat LUKS-huvud" -#: src/cryptsetup.c:2536 +#: src/cryptsetup.c:3539 msgid "Do not activate device, just check passphrase" msgstr "Aktivera inte enhet, kontrollera endast lösenfrasen" -#: src/cryptsetup.c:2537 +#: src/cryptsetup.c:3540 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Använd dolt huvud (gömd TCRYPT-enhet)" -#: src/cryptsetup.c:2538 +#: src/cryptsetup.c:3541 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "Enheten är system-TCRYPT-disk (med starthanterare)" -#: src/cryptsetup.c:2539 +#: src/cryptsetup.c:3542 msgid "Use backup (secondary) TCRYPT header" msgstr "Använd säkerhetskopia (sekundär) för TCRYPT-huvud" -#: src/cryptsetup.c:2540 +#: src/cryptsetup.c:3543 msgid "Scan also for VeraCrypt compatible device" msgstr "Sök också efter VeraCrypt-kompatibel enhet" -#: src/cryptsetup.c:2541 +#: src/cryptsetup.c:3544 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Personlig iteration för VeraCrypt-kompatibel enhet" -#: src/cryptsetup.c:2542 +#: src/cryptsetup.c:3545 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Query Personal Iteration Multiplier för VeraCrypt-kompatibel enhet" -#: src/cryptsetup.c:2543 -msgid "Type of device metadata: luks, plain, loopaes, tcrypt" -msgstr "Typer av enhetsmetadata: luks, plain, loopaes, tcrypt" +#: src/cryptsetup.c:3546 +msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" +msgstr "Typer av enhetsmetadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:2544 +#: src/cryptsetup.c:3547 msgid "Disable password quality check (if enabled)" msgstr "Inaktivera kvalitetskontroll av lösenord (om aktiverat)" -#: src/cryptsetup.c:2545 +#: src/cryptsetup.c:3548 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Använd flaggan dm-crypt same_cpu_crypt för prestandakompatibilitet" -#: src/cryptsetup.c:2546 +#: src/cryptsetup.c:3549 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Använd flaggan dm-crypt submit_from_crypt_cpus för prestandakompatibilitet" -#: src/cryptsetup.c:2547 +#: src/cryptsetup.c:3550 +msgid "Bypass dm-crypt workqueue and process read requests synchronously" +msgstr "Förbigå dm-crypt's arbetskö och bearbeta läsbegäran synkront" + +#: src/cryptsetup.c:3551 +msgid "Bypass dm-crypt workqueue and process write requests synchronously" +msgstr "Förbigå dm-crypt's arbetskö och bearbeta skrivbegäran synkront" + +#: src/cryptsetup.c:3552 msgid "Device removal is deferred until the last user closes it" msgstr "Enhetsborttagning är förskjuten tills den sista användaren stänger den" -#: src/cryptsetup.c:2548 +#: src/cryptsetup.c:3553 +msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" +msgstr "Använder globalt lås för att serialisera minneshård PBKDF (OOM-lösning)" + +#: src/cryptsetup.c:3554 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "PBKDF-iterationstid för LUKS (i ms)" -#: src/cryptsetup.c:2548 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3554 src/cryptsetup_reencrypt.c:1623 msgid "msecs" msgstr "ms" -#: src/cryptsetup.c:2549 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3555 src/cryptsetup_reencrypt.c:1641 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "PBKDF-algoritm (för LUKS2) (argon2i/argon2id/pbkdf2)" -#: src/cryptsetup.c:2550 src/cryptsetup_reencrypt.c:1646 +#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 msgid "PBKDF memory cost limit" msgstr "Minneskostnadsgräns för PBKDF" -#: src/cryptsetup.c:2550 src/cryptsetup_reencrypt.c:1646 +#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 msgid "kilobytes" msgstr "kilobyte" -#: src/cryptsetup.c:2551 src/cryptsetup_reencrypt.c:1647 +#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 msgid "PBKDF parallel cost" msgstr "Parallellkostnad för PBKDF" -#: src/cryptsetup.c:2551 src/cryptsetup_reencrypt.c:1647 +#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 msgid "threads" msgstr "trådar" -#: src/cryptsetup.c:2552 src/cryptsetup_reencrypt.c:1648 +#: src/cryptsetup.c:3558 src/cryptsetup_reencrypt.c:1644 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "Iterationskostnad för PBKDF (tvingad, inaktiverar prestandamätning)" -#: src/cryptsetup.c:2553 +#: src/cryptsetup.c:3559 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Nyckelplats-prioritet: ignore,normal,prefer" -#: src/cryptsetup.c:2554 +#: src/cryptsetup.c:3560 msgid "Disable locking of on-disk metadata" msgstr "Inaktivera låsning av metadata på disk" -#: src/cryptsetup.c:2555 +#: src/cryptsetup.c:3561 msgid "Disable loading volume keys via kernel keyring" msgstr "Inaktivera att läsa in volymnycklar via kärnans nyckelring" -#: src/cryptsetup.c:2556 +#: src/cryptsetup.c:3562 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Algoritm för dataintegritet (endast LUKS2)" -#: src/cryptsetup.c:2557 src/integritysetup.c:550 +#: src/cryptsetup.c:3563 src/integritysetup.c:573 msgid "Disable journal for integrity device" msgstr "Inaktivera journal för integritetsenhet" -#: src/cryptsetup.c:2558 src/integritysetup.c:526 +#: src/cryptsetup.c:3564 src/integritysetup.c:547 msgid "Do not wipe device after format" msgstr "Rensa inte enhet efter formatering" -#: src/cryptsetup.c:2559 +#: src/cryptsetup.c:3565 src/integritysetup.c:577 +msgid "Use inefficient legacy padding (old kernels)" +msgstr "Använd ineffektiv föråldrad padding (gamla kärnor)" + +#: src/cryptsetup.c:3566 msgid "Do not ask for passphrase if activation by token fails" msgstr "Fråga inte efter lösenfras om aktivering med token misslyckas" -#: src/cryptsetup.c:2560 +#: src/cryptsetup.c:3567 msgid "Token number (default: any)" msgstr "Tokenantal (standardvärde: any)" -#: src/cryptsetup.c:2561 +#: src/cryptsetup.c:3568 msgid "Key description" msgstr "Nyckelbeskrivning" -#: src/cryptsetup.c:2562 +#: src/cryptsetup.c:3569 msgid "Encryption sector size (default: 512 bytes)" msgstr "Sektorstorlek för kryptering (standardvärde 512 byte)" -#: src/cryptsetup.c:2563 +#: src/cryptsetup.c:3570 +msgid "Use IV counted in sector size (not in 512 bytes)" +msgstr "Använd IV-räkning i sektorstorlek (ej i 512 byte)" + +#: src/cryptsetup.c:3571 msgid "Set activation flags persistent for device" msgstr "Sätt och spara undan aktiveringsflaggorna för enheten" -#: src/cryptsetup.c:2564 +#: src/cryptsetup.c:3572 msgid "Set label for the LUKS2 device" msgstr "Ange etikett för LUKS2-enhet" -#: src/cryptsetup.c:2565 +#: src/cryptsetup.c:3573 msgid "Set subsystem label for the LUKS2 device" msgstr "Ange undersystemsetikett för LUKS2-enheten" -#: src/cryptsetup.c:2566 -msgid "Create unbound (no assigned data segment) LUKS2 keyslot" -msgstr "Skapa obunden (inget tilldelat datasegment) LUKS2-nyckelplats" +#: src/cryptsetup.c:3574 +msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" +msgstr "Skapa eller skriv ut obunden (inget tilldelat datasegment) LUKS2-nyckelplats" -#: src/cryptsetup.c:2567 +#: src/cryptsetup.c:3575 msgid "Read or write the json from or to a file" msgstr "Läs eller skriv json från eller till en fil" -#: src/cryptsetup.c:2568 +#: src/cryptsetup.c:3576 msgid "LUKS2 header metadata area size" msgstr "Områdesstorlek för metadata på LUKS2-huvudet" -#: src/cryptsetup.c:2569 +#: src/cryptsetup.c:3577 msgid "LUKS2 header keyslots area size" msgstr "Storlek på nyckelplatsområdet för LUKS2-huvud" -#: src/cryptsetup.c:2570 +#: src/cryptsetup.c:3578 msgid "Refresh (reactivate) device with new parameters" msgstr "Uppdatera (återaktivera) enhet med nya parametrar" -#: src/cryptsetup.c:2571 +#: src/cryptsetup.c:3579 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "LUKS2-nyckelplats: Storleken för krypteringsnyckeln" -#: src/cryptsetup.c:2572 +#: src/cryptsetup.c:3580 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "LUKS2-nyckelplats: Chiffret används krypering av nyckelplats" -#: src/cryptsetup.c:2588 src/veritysetup.c:461 src/integritysetup.c:568 +#: src/cryptsetup.c:3581 +msgid "Encrypt LUKS2 device (in-place encryption)." +msgstr "Kryptera LUKS2-enheten permanent (direktkryptering)." + +#: src/cryptsetup.c:3582 +msgid "Decrypt LUKS2 device (remove encryption)." +msgstr "Dekryptera LUKS2-enheten (ta bort kryptering)" + +#: src/cryptsetup.c:3583 +msgid "Initialize LUKS2 reencryption in metadata only." +msgstr "Initiera LUKS2-omkryptering endast i metadata." + +#: src/cryptsetup.c:3584 +msgid "Resume initialized LUKS2 reencryption only." +msgstr "Återupptog endast initierad LUKS2-omkryptering." + +#: src/cryptsetup.c:3585 src/cryptsetup_reencrypt.c:1635 +msgid "Reduce data device size (move data offset). DANGEROUS!" +msgstr "Förminska dataenhetsstorleken (flytta dataoffset). FARLIGT!" + +#: src/cryptsetup.c:3586 +msgid "Maximal reencryption hotzone size." +msgstr "Maximal storlek på omkryptering av varm zon." + +#: src/cryptsetup.c:3587 +msgid "Reencryption hotzone resilience type (checksum,journal,none)" +msgstr "Återhämtningstyp för omkrypteringszon (checksumma,journal,ingen)" + +#: src/cryptsetup.c:3588 +msgid "Reencryption hotzone checksums hash" +msgstr "Hashkontrollsumma för omkryptering av varm zon" + +#: src/cryptsetup.c:3589 +msgid "Override device autodetection of dm device to be reencrypted" +msgstr "Överlagra automatisk identifiering av dm-enhet för omkryptering" + +#: src/cryptsetup.c:3605 src/veritysetup.c:505 src/integritysetup.c:595 msgid "[OPTION...] " msgstr "[FLAGGA…] <åtgärd> <åtgärdsspecifik>" -#: src/cryptsetup.c:2645 src/veritysetup.c:501 src/integritysetup.c:585 +#: src/cryptsetup.c:3656 src/veritysetup.c:539 src/integritysetup.c:606 msgid "Argument missing." msgstr "Argumentet <åtgärd> saknas." -#: src/cryptsetup.c:2708 src/veritysetup.c:532 src/integritysetup.c:616 +#: src/cryptsetup.c:3725 src/veritysetup.c:570 src/integritysetup.c:637 msgid "Unknown action." msgstr "Okänd åtgärd." -#: src/cryptsetup.c:2718 -msgid "Parameter --refresh is only allowed with open or refresh commands.\n" -msgstr "Flaggan --refresh är endast tillåten för kommandot open eller refresh.\n" +#: src/cryptsetup.c:3735 +msgid "Options --refresh and --test-passphrase are mutually exclusive." +msgstr "Flaggorna --refresh och --test-passphrase är ömsesidigt uteslutande." -#: src/cryptsetup.c:2723 -msgid "Options --refresh and --test-passphrase are mutually exclusive.\n" -msgstr "Flaggorna --refresh och --test-passphrase är ömsesidigt uteslutande.\n" +#: src/cryptsetup.c:3740 +msgid "Option --deferred is allowed only for close command." +msgstr "Flaggan --deferred är endast tillåten för kommandot close." -#: src/cryptsetup.c:2728 -msgid "Option --deferred is allowed only for close command.\n" -msgstr "Flaggan --deferred är endast tillåten för kommandot close.\n" +#: src/cryptsetup.c:3745 +msgid "Option --shared is allowed only for open of plain device." +msgstr "Flaggan --shared är endast tillåten för öppning för enkel enhet." -#: src/cryptsetup.c:2733 -msgid "Option --shared is allowed only for open of plain device.\n" -msgstr "Flaggan --shared är endast tillåten för öppning för enkel enhet.\n" +#: src/cryptsetup.c:3750 src/integritysetup.c:654 +msgid "Option --allow-discards is allowed only for open operation." +msgstr "Flaggan --allow-discards är endast tillåten för åtgärden open." -#: src/cryptsetup.c:2738 -msgid "Option --allow-discards is allowed only for open operation.\n" -msgstr "Flaggan --allow-discards är endast tillåten för operationen open.\n" +#: src/cryptsetup.c:3755 +msgid "Option --persistent is allowed only for open operation." +msgstr "Flaggan --persistent är endast tillåten för åtgärden open." -#: src/cryptsetup.c:2743 -msgid "Option --persistent is allowed only for open operation.\n" -msgstr "Flaggan --persistent är endast tillåten för operationen open.\n" +#: src/cryptsetup.c:3760 +msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." +msgstr "Flaggan --allow-discards är endast tillåten för åtgärden open." -#: src/cryptsetup.c:2748 -msgid "Option --persistent is not allowed with --test-passphrase.\n" -msgstr "Flaggan --persistent är ej tillåtet med --test-passphrase.\n" +#: src/cryptsetup.c:3765 +msgid "Option --persistent is not allowed with --test-passphrase." +msgstr "Flaggan --persistent är ej tillåtet med --test-passphrase." -#: src/cryptsetup.c:2757 +#: src/cryptsetup.c:3775 msgid "" -"Option --key-size is allowed only for luksFormat, luksAddKey (with --unbound),\n" +"Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." msgstr "" -"Flaggan --key-size är endast tillåten för luksFormat, luksAddKey (with --unbound),\n" +"Flaggan --key-size är endast tillåten för åtgärderna luksFormat, luksAddKey,\n" "open och benchmark. För att begränsa läsning från nyckelfil, använd --keyfile-size=(byte)." -#: src/cryptsetup.c:2763 -msgid "Option --integrity is allowed only for luksFormat (LUKS2).\n" -msgstr "Flaggan --integrity är endast tillåten för luksFormat (LUKS2).\n" - -#: src/cryptsetup.c:2768 -msgid "Option --integrity-no-wipe can be used only for format action with integrity extension.\n" -msgstr "Flaggan --integrity-no-wipe kan användas endast för åtgärden formatera med integritetsutökningar.\n" - -#: src/cryptsetup.c:2774 -msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations.\n" -msgstr "Flaggorna --label och --subsystem tillåts endast för luksFormat och konfiguration av LUKS2-åtgärder.\n" - -#: src/cryptsetup.c:2780 -msgid "Option --test-passphrase is allowed only for open of LUKS and TCRYPT devices.\n" -msgstr "Flaggan --test-passphrase är endast tillåten för open för LUKS- och TCRYPT-enheter.\n" +#: src/cryptsetup.c:3781 +msgid "Option --integrity is allowed only for luksFormat (LUKS2)." +msgstr "Flaggan --integrity är endast tillåten för luksFormat (LUKS2)." + +#: src/cryptsetup.c:3786 +msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." +msgstr "Flaggan --integrity-no-wipe kan endast användas för åtgärden formatera med integritetsutökningar." + +#: src/cryptsetup.c:3792 +msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." +msgstr "Flaggorna --label och --subsystem är endast tillåtna för luksFormat och konfiguration av LUKS2-åtgärder." + +#: src/cryptsetup.c:3798 +msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." +msgstr "Flaggan --test-passphrase är endast tillåten för open för LUKS-, TCRYPT-, och BITLK-enheter." -#: src/cryptsetup.c:2785 src/cryptsetup_reencrypt.c:1718 +#: src/cryptsetup.c:3803 src/cryptsetup_reencrypt.c:1708 msgid "Key size must be a multiple of 8 bits" msgstr "Nyckelstorlek måste vara en multipel av 8 bitar" -#: src/cryptsetup.c:2791 src/cryptsetup_reencrypt.c:1403 -#: src/cryptsetup_reencrypt.c:1723 +#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1394 +#: src/cryptsetup_reencrypt.c:1713 msgid "Key slot is invalid." msgstr "Nyckelplatsen är ogiltig." -#: src/cryptsetup.c:2798 +#: src/cryptsetup.c:3816 msgid "Option --key-file takes precedence over specified key file argument." msgstr "Flaggan --key-file åsidosätter specificerade nyckelfilsargument." -#: src/cryptsetup.c:2805 src/veritysetup.c:544 src/integritysetup.c:640 -#: src/cryptsetup_reencrypt.c:1697 +#: src/cryptsetup.c:3823 src/veritysetup.c:582 src/integritysetup.c:663 +#: src/cryptsetup_reencrypt.c:1687 msgid "Negative number for option not permitted." msgstr "Negativt tal för flagga ej tillåtet." -#: src/cryptsetup.c:2809 +#: src/cryptsetup.c:3827 msgid "Only one --key-file argument is allowed." msgstr "Endast ett argument för --key-file är tillåtet." -#: src/cryptsetup.c:2813 src/cryptsetup_reencrypt.c:1689 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:3831 src/cryptsetup_reencrypt.c:1679 +#: src/cryptsetup_reencrypt.c:1717 msgid "Only one of --use-[u]random options is allowed." msgstr "Endast en av flaggorna --use-[u]random är tillåten." -#: src/cryptsetup.c:2817 +#: src/cryptsetup.c:3835 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "Flaggan --use-[u]random är endast tillåten för luksFormat." -#: src/cryptsetup.c:2821 +#: src/cryptsetup.c:3839 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "Flaggan --uuid är endast tillåten för luksFormat och luksUUID." -#: src/cryptsetup.c:2825 +#: src/cryptsetup.c:3843 msgid "Option --align-payload is allowed only for luksFormat." msgstr "Flaggan --align-payload är endast tillåten för luksFormat." -#: src/cryptsetup.c:2829 +#: src/cryptsetup.c:3847 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Flaggorna --luks2-metadata-size och --opt-luks2-keyslots-size tillåts endast för luksFormat med LUKS2." -#: src/cryptsetup.c:2834 +#: src/cryptsetup.c:3852 msgid "Invalid LUKS2 metadata size specification." msgstr "Ogiltig storlekspecifikation för LUKS2-metadata på enhet." -#: src/cryptsetup.c:2838 +#: src/cryptsetup.c:3856 msgid "Invalid LUKS2 keyslots size specification." msgstr "Ogiltig storlekspecifikation för LUKS2-nyckelplats på enhet." -#: src/cryptsetup.c:2842 -msgid "Option --align-payload and --offset cannot be combined." +#: src/cryptsetup.c:3860 +msgid "Options --align-payload and --offset cannot be combined." msgstr "Flaggan --align-payload och --offset kan inte kombineras." -#: src/cryptsetup.c:2848 -msgid "Option --skip is supported only for open of plain and loopaes devices.\n" -msgstr "Flaggan --skip stöds endast för öppning av vanliga enheter och loopaes-enheter.\n" - -#: src/cryptsetup.c:2855 -msgid "Option --offset is supported only for open of plain and loopaes devices and for luksFormat.\n" -msgstr "Flaggan --offset stöds endast för öppning av vanliga och loopaes-enheter och för luksFormat.\n" - -#: src/cryptsetup.c:2861 -msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device.\n" -msgstr "Flaggorna --tcrypt-hidden, --tcrypt-system eller --tcrypt-backup stöds endast på TCRYPT-enhet.\n" - -#: src/cryptsetup.c:2866 -msgid "Option --tcrypt-hidden cannot be combined with --allow-discards.\n" -msgstr "Flaggan --tcrypt-hidden kan inte kombineras med --allow-discards.\n" - -#: src/cryptsetup.c:2871 -msgid "Option --veracrypt is supported only for TCRYPT device type.\n" -msgstr "Flaggan --veracrypt stöds endast för TCRYPT-enhetstyper.\n" - -#: src/cryptsetup.c:2877 -msgid "Invalid argument for parameter --veracrypt-pim supplied.\n" -msgstr "Angav ett ogiltigt argument för parametern --veracrypt-pim.\n" - -#: src/cryptsetup.c:2881 -msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices.\n" -msgstr "Flaggan --veracrypt-pim stöds endast för VeraCrypt-kompatibla enheter.\n" - -#: src/cryptsetup.c:2889 -msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices.\n" -msgstr "Flaggan --veracrypt-query-pim stöds endast för VeraCrypt-kompatibla enheter.\n" - -#: src/cryptsetup.c:2893 -msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive.\n" -msgstr "Flaggorna --veracrypt-pim och --veracrypt-query-pim är ömsesidigt uteslutande.\n" - -#: src/cryptsetup.c:2900 -msgid "Option --priority can be only ignore/normal/prefer.\n" -msgstr "Flaggan --priority kan endast vara ignore/normal/prefer.\n" - -#: src/cryptsetup.c:2905 -msgid "Keyslot specification is required.\n" -msgstr "Specifikation för nyckelplats krävs.\n" - -#: src/cryptsetup.c:2910 src/cryptsetup_reencrypt.c:1703 -msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id.\n" -msgstr "Password-based key derivation function (PBKDF) kan endast vara pbkdf2 eller argon2i/argon2id.\n" - -#: src/cryptsetup.c:2915 src/cryptsetup_reencrypt.c:1708 -msgid "PBKDF forced iterations cannot be combined with iteration time option.\n" -msgstr "Tvingade PBKDF-iterationer går inte att kombinera med flaggan iteration time.\n" - -#: src/cryptsetup.c:2921 -msgid "Sector size option is not supported for this command.\n" -msgstr "Flaggan för sektorstorlek stöds inte för detta kommando.\n" - -#: src/cryptsetup.c:2927 -msgid "Unsupported encryption sector size.\n" -msgstr "Stöder inte sektorstorlek för kryptering.\n" - -#: src/cryptsetup.c:2932 -msgid "Key size is required with --unbound option.\n" -msgstr "Nyckelstorlek krävs med flaggan --unbound.\n" - -#: src/cryptsetup.c:2937 -msgid "Option --unbound may be used only with luksAddKey action.\n" -msgstr "Flaggan --unbound kan inte användas tillsammans med luksAddKey action.\n" - -#: src/cryptsetup.c:2942 -msgid "Option --refresh may be used only with open action.\n" -msgstr "Flaggan --refresh är endast tillåten för operationen open.\n" - -#: src/cryptsetup.c:2953 -msgid "Cannot disable metadata locking.\n" -msgstr "Det går inte att inaktivera metadatalås.\n" +#: src/cryptsetup.c:3866 +msgid "Option --skip is supported only for open of plain and loopaes devices." +msgstr "Flaggan --skip stöds endast för öppning av vanliga enheter och loopaes-enheter." + +#: src/cryptsetup.c:3873 +msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." +msgstr "Flaggan --offset stöds endast för öppning av vanliga och loopaes-enheter, luksFormat och omkrypteringsenheter." + +#: src/cryptsetup.c:3879 +msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." +msgstr "Flaggorna --tcrypt-hidden, --tcrypt-system eller --tcrypt-backup stöds endast på TCRYPT-enhet." + +#: src/cryptsetup.c:3884 +msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." +msgstr "Flaggan --tcrypt-hidden kan inte kombineras med --allow-discards." + +#: src/cryptsetup.c:3889 +msgid "Option --veracrypt is supported only for TCRYPT device type." +msgstr "Flaggan --veracrypt stöds endast för TCRYPT-enhetstyper." + +#: src/cryptsetup.c:3895 +msgid "Invalid argument for parameter --veracrypt-pim supplied." +msgstr "Angav ett ogiltigt argument för parametern --veracrypt-pim." + +#: src/cryptsetup.c:3899 +msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." +msgstr "Flaggan --veracrypt-pim stöds endast för VeraCrypt-kompatibla enheter." + +#: src/cryptsetup.c:3907 +msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." +msgstr "Flaggan --veracrypt-query-pim stöds endast för VeraCrypt-kompatibla enheter." + +#: src/cryptsetup.c:3911 +msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." +msgstr "Flaggorna --veracrypt-pim och --veracrypt-query-pim är ömsesidigt uteslutande." + +#: src/cryptsetup.c:3918 +msgid "Option --priority can be only ignore/normal/prefer." +msgstr "Flaggan --priority kan endast vara ignore/normal/prefer." + +#: src/cryptsetup.c:3923 src/cryptsetup.c:3961 +msgid "Keyslot specification is required." +msgstr "Specifikation för nyckelplats krävs." + +#: src/cryptsetup.c:3928 src/cryptsetup_reencrypt.c:1693 +msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." +msgstr "Password-based key derivation function (PBKDF) kan endast vara pbkdf2 eller argon2i/argon2id." + +#: src/cryptsetup.c:3933 src/cryptsetup_reencrypt.c:1698 +msgid "PBKDF forced iterations cannot be combined with iteration time option." +msgstr "Tvingade PBKDF-iterationer går inte att kombinera med flaggan iteration time." + +#: src/cryptsetup.c:3939 +msgid "Sector size option is not supported for this command." +msgstr "Flaggan för sektorstorlek stöds inte för detta kommando." + +#: src/cryptsetup.c:3951 +msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." +msgstr "Flaggan för stora IV-sektorer stöds endast för att öppna enheter av enkel typ med sektorstorlek större än 512 byte." + +#: src/cryptsetup.c:3956 +msgid "Key size is required with --unbound option." +msgstr "Nyckelstorlek krävs med flaggan --unbound." + +#: src/cryptsetup.c:3966 +msgid "Option --unbound may be used only with luksAddKey and luksDump actions." +msgstr "Flaggan --unbound kan endast användas tillsammans med ätgärderna luksAddKey och luksDump." + +#: src/cryptsetup.c:3971 +msgid "Option --refresh may be used only with open action." +msgstr "Flaggan --refresh är endast tillåten för åtgärden open." + +#: src/cryptsetup.c:3982 +msgid "Cannot disable metadata locking." +msgstr "Det går inte att inaktivera metadatalås." + +#: src/cryptsetup.c:3992 +msgid "Invalid max reencryption hotzone size specification." +msgstr "Ogiltig högsta storlekspecifikation för varm zon-omkryptering." + +#: src/cryptsetup.c:4000 src/cryptsetup_reencrypt.c:1722 +#: src/cryptsetup_reencrypt.c:1727 +msgid "Invalid device size specification." +msgstr "Ogiltig storlekspecifikation på enhet." + +#: src/cryptsetup.c:4003 +msgid "Maximum device reduce size is 1 GiB." +msgstr "Högsta förminskningsstorlek för enhet är 1 GiB." + +#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1733 +msgid "Reduce size must be multiple of 512 bytes sector." +msgstr "Minskningsstorlek måste vara en multipel av 512-bytesektor." + +#: src/cryptsetup.c:4011 +msgid "Invalid data size specification." +msgstr "Ogiltig datastorlekspecifikation." + +#: src/cryptsetup.c:4016 +msgid "Reduce size overflow." +msgstr "Minska storleksöverspill." + +#: src/cryptsetup.c:4020 +msgid "LUKS2 decryption requires option --header." +msgstr "LUKS2-dekryptering kräver flaggan --header." + +#: src/cryptsetup.c:4024 +msgid "Device size must be multiple of 512 bytes sector." +msgstr "Enhetsstorlek måste vara en multipel av sektor på 512-byte." + +#: src/cryptsetup.c:4028 +msgid "Options --reduce-device-size and --data-size cannot be combined." +msgstr "Flaggan --reduce-device-size och --data-size kan inte kombineras." + +#: src/cryptsetup.c:4032 +msgid "Options --device-size and --size cannot be combined." +msgstr "Flaggan --device-size och --size kan inte kombineras." + +#: src/cryptsetup.c:4036 +msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." +msgstr "Flaggorna --keyslot-cipher och --keyslot-key-size måste användas tillsammans." #: src/veritysetup.c:67 msgid "Invalid salt string specified." @@ -2322,51 +3056,53 @@ msgid "Cannot create FEC image %s for writing." msgstr "Det går inte att skapa FEC-avbild %s för skrivning." -#: src/veritysetup.c:178 +#: src/veritysetup.c:182 msgid "Invalid root hash string specified." msgstr "Angav ogiltig rothashsträng." -#: src/veritysetup.c:360 +#: src/veritysetup.c:190 +#, c-format +msgid "Invalid signature file %s." +msgstr "Ogiltig signaturfil %s." + +#: src/veritysetup.c:197 +#, c-format +msgid "Cannot read signature file %s." +msgstr "Det går inte att läsa signaturfilen %s." + +#: src/veritysetup.c:397 msgid " " msgstr " " -#: src/veritysetup.c:360 src/integritysetup.c:462 +#: src/veritysetup.c:397 src/integritysetup.c:479 msgid "format device" msgstr "formatera enhet" -#: src/veritysetup.c:361 +#: src/veritysetup.c:398 msgid " " msgstr " " -#: src/veritysetup.c:361 +#: src/veritysetup.c:398 msgid "verify device" msgstr "verifiera enhet" -#: src/veritysetup.c:362 +#: src/veritysetup.c:399 msgid " " msgstr " " -#: src/veritysetup.c:362 src/integritysetup.c:463 -msgid "open device as " -msgstr "öppna enhet som " - -#: src/veritysetup.c:363 src/integritysetup.c:464 -msgid "close device (deactivate and remove mapping)" -msgstr "stäng enhet (inaktivera och ta bort mappning)" - -#: src/veritysetup.c:364 src/integritysetup.c:465 +#: src/veritysetup.c:401 src/integritysetup.c:482 msgid "show active device status" msgstr "visa statistik för aktiv enhet" -#: src/veritysetup.c:365 +#: src/veritysetup.c:402 msgid "" msgstr "" -#: src/veritysetup.c:365 src/integritysetup.c:466 +#: src/veritysetup.c:402 src/integritysetup.c:483 msgid "show on-disk information" msgstr "visa information från disk" -#: src/veritysetup.c:384 +#: src/veritysetup.c:421 #, c-format msgid "" "\n" @@ -2381,7 +3117,7 @@ " är enheten som innehåller verifieringsdata\n" " hash för rotnoden på \n" -#: src/veritysetup.c:391 +#: src/veritysetup.c:428 #, c-format msgid "" "\n" @@ -2392,118 +3128,134 @@ "Inkompilerade standardparametrar för dm-verity:\n" "\tHash: %s, Datablock (byte): %u, Hashblock (byte): %u, Saltstorlek: %u, Hashformat: %u\n" -#: src/veritysetup.c:429 +#: src/veritysetup.c:471 msgid "Do not use verity superblock" msgstr "Använd inte verity superblock" -#: src/veritysetup.c:430 +#: src/veritysetup.c:472 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Formattyp (1 - normal, 0 - ursprungliga Chrome OS)" -#: src/veritysetup.c:430 +#: src/veritysetup.c:472 msgid "number" msgstr "antal" -#: src/veritysetup.c:431 +#: src/veritysetup.c:473 msgid "Block size on the data device" msgstr "Blockstorlek på dataenheten" -#: src/veritysetup.c:432 +#: src/veritysetup.c:474 msgid "Block size on the hash device" msgstr "Blockstorlek på hashenheten" -#: src/veritysetup.c:433 +#: src/veritysetup.c:475 msgid "FEC parity bytes" msgstr "FEC paritetsbyte" -#: src/veritysetup.c:434 +#: src/veritysetup.c:476 msgid "The number of blocks in the data file" msgstr "Antalet block i datafilen" -#: src/veritysetup.c:434 +#: src/veritysetup.c:476 msgid "blocks" msgstr "block" -#: src/veritysetup.c:435 +#: src/veritysetup.c:477 msgid "Path to device with error correction data" msgstr "Sökväg till enhet med felkorrigeringsdata" -#: src/veritysetup.c:435 src/integritysetup.c:528 +#: src/veritysetup.c:477 src/integritysetup.c:549 msgid "path" msgstr "sökväg" -#: src/veritysetup.c:436 +#: src/veritysetup.c:478 msgid "Starting offset on the hash device" msgstr "Startoffset på hashenheten" -#: src/veritysetup.c:437 +#: src/veritysetup.c:479 msgid "Starting offset on the FEC device" msgstr "Startoffset på FEC-enheten" -#: src/veritysetup.c:438 +#: src/veritysetup.c:480 msgid "Hash algorithm" msgstr "Hashalgoritm" -#: src/veritysetup.c:438 +#: src/veritysetup.c:480 msgid "string" msgstr "sträng" -#: src/veritysetup.c:439 +#: src/veritysetup.c:481 msgid "Salt" msgstr "Salt" -#: src/veritysetup.c:439 +#: src/veritysetup.c:481 msgid "hex string" msgstr "hexsträng" -#: src/veritysetup.c:441 +#: src/veritysetup.c:483 +msgid "Path to root hash signature file" +msgstr "Sökväg till root-hashsignaturfilen" + +#: src/veritysetup.c:484 msgid "Restart kernel if corruption is detected" msgstr "Starta om kärna om något skadat identifieras" -#: src/veritysetup.c:442 +#: src/veritysetup.c:485 +msgid "Panic kernel if corruption is detected" +msgstr "Sätt kärnan i Panic-läge om korruption identifieras" + +#: src/veritysetup.c:486 msgid "Ignore corruption, log it only" msgstr "Ignorera om något är skadat, logga endast" -#: src/veritysetup.c:443 +#: src/veritysetup.c:487 msgid "Do not verify zeroed blocks" msgstr "Verifiera inte nollställda block" -#: src/veritysetup.c:444 +#: src/veritysetup.c:488 msgid "Verify data block only the first time it is read" msgstr "Verifiera datablock endast första gången det läses in" -#: src/veritysetup.c:550 -msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation.\n" -msgstr "Flaggorna --ignore-corruption, --restart-on-corruption eller --ignore-zero-blocks är endast tillåtna för operationen open.\n" - -#: src/veritysetup.c:555 -msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together.\n" -msgstr "Flaggorna --ignore-corruption och --restart-on-corruption kan inte användas tillsammans.\n" +#: src/veritysetup.c:588 +msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." +msgstr "Flaggorna --ignore-corruption, --restart-on-corruption eller --ignore-zero-blocks är endast tillåtna för åtgärden open." + +#: src/veritysetup.c:593 +msgid "Option --root-hash-signature can be used only for open operation." +msgstr "Flaggan --root-hash-signature kan användas endast för åtgärden open." + +#: src/veritysetup.c:598 +msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." +msgstr "Flaggorna --ignore-corruption och --restart-on-corruption kan inte användas tillsammans." + +#: src/veritysetup.c:603 +msgid "Option --panic-on-corruption and --restart-on-corruption cannot be used together." +msgstr "Det går inte att använda flaggorna --panic-on-corruption och --restart-on-corruption tillsammans." -#: src/integritysetup.c:82 src/utils_password.c:298 +#: src/integritysetup.c:84 src/utils_password.c:305 #, c-format msgid "Cannot read keyfile %s." msgstr "Det går inte att läsa nyckelfilen %s." -#: src/integritysetup.c:86 src/utils_password.c:302 +#: src/integritysetup.c:88 src/utils_password.c:310 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "Det går inte att läsa %d byte från nyckelfilen %s." -#: src/integritysetup.c:248 +#: src/integritysetup.c:254 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Formaterad med taggstorlek %u, intern integritet %s.\n" -#: src/integritysetup.c:462 src/integritysetup.c:466 +#: src/integritysetup.c:479 src/integritysetup.c:483 msgid "" msgstr "" -#: src/integritysetup.c:463 +#: src/integritysetup.c:480 msgid " " msgstr " " -#: src/integritysetup.c:485 +#: src/integritysetup.c:502 #, c-format msgid "" "\n" @@ -2514,524 +3266,532 @@ " är enheten att skapa under %s\n" " är enheten som innehåller data med integritetstaggar\n" -#: src/integritysetup.c:490 +#: src/integritysetup.c:507 #, c-format msgid "" "\n" "Default compiled-in dm-integrity parameters:\n" -"\tTag size: %u bytes, Checksum algorithm: %s\n" +"\tChecksum algorithm: %s\n" msgstr "" "\n" "Inkompilerade standardparametrar för dm-integrity:\n" -"\tTaggstorlek: %u byte, Kontrollsummealgoritm: %s\n" -"\n" +"\tKontrollsummealgoritm: %s\n" -#: src/integritysetup.c:528 +#: src/integritysetup.c:549 msgid "Path to data device (if separated)" msgstr "Sökvägen till dataenhet (om separat)" -#: src/integritysetup.c:530 +#: src/integritysetup.c:551 msgid "Journal size" msgstr "Journalstorlek" -#: src/integritysetup.c:531 +#: src/integritysetup.c:552 msgid "Interleave sectors" msgstr "Infoga sektorer" -#: src/integritysetup.c:532 +#: src/integritysetup.c:553 msgid "Journal watermark" msgstr "Journalvattenmärke" -#: src/integritysetup.c:532 +#: src/integritysetup.c:553 msgid "percent" msgstr "procent" -#: src/integritysetup.c:533 +#: src/integritysetup.c:554 msgid "Journal commit time" msgstr "Journalincheckningstid" -#: src/integritysetup.c:533 +#: src/integritysetup.c:554 src/integritysetup.c:556 msgid "ms" msgstr "ms" -#: src/integritysetup.c:534 +#: src/integritysetup.c:555 +msgid "Number of 512-byte sectors per bit (bitmap mode)." +msgstr "Antal 512-byte sektorer per bit (bitmap-läge)." + +#: src/integritysetup.c:556 +msgid "Bitmap mode flush time" +msgstr "Renstid för bitmap-läge" + +#: src/integritysetup.c:557 msgid "Tag size (per-sector)" msgstr "Taggstorlek (per sektor)" -#: src/integritysetup.c:535 +#: src/integritysetup.c:558 msgid "Sector size" msgstr "Sektorstorlek" -#: src/integritysetup.c:536 +#: src/integritysetup.c:559 msgid "Buffers size" msgstr "Bufferstorlek" -#: src/integritysetup.c:538 +#: src/integritysetup.c:561 msgid "Data integrity algorithm" msgstr "Dataintegritetsalgoritm" -#: src/integritysetup.c:539 +#: src/integritysetup.c:562 msgid "The size of the data integrity key" msgstr "Storleken för dataintegritetsnyckeln" -#: src/integritysetup.c:540 +#: src/integritysetup.c:563 msgid "Read the integrity key from a file" msgstr "Läs integritetsnyckeln från en fil" -#: src/integritysetup.c:542 +#: src/integritysetup.c:565 msgid "Journal integrity algorithm" msgstr "Integritetsalgoritm för journal" -#: src/integritysetup.c:543 +#: src/integritysetup.c:566 msgid "The size of the journal integrity key" msgstr "Storleken för journalens integritetssnyckel" -#: src/integritysetup.c:544 +#: src/integritysetup.c:567 msgid "Read the journal integrity key from a file" msgstr "Läs journalens integritetsnyckel från en fil" -#: src/integritysetup.c:546 +#: src/integritysetup.c:569 msgid "Journal encryption algorithm" msgstr "Krypteringsalgoritm för journal" -#: src/integritysetup.c:547 +#: src/integritysetup.c:570 msgid "The size of the journal encryption key" msgstr "Storleken för journalens krypteringsnyckel" -#: src/integritysetup.c:548 +#: src/integritysetup.c:571 msgid "Read the journal encryption key from a file" msgstr "Läs journalens krypteringsnyckel från en fil" -#: src/integritysetup.c:551 +#: src/integritysetup.c:574 msgid "Recovery mode (no journal, no tag checking)" msgstr "Återhämtningsläge (ingen journal, ingen taggkontroll)" -#: src/integritysetup.c:552 +#: src/integritysetup.c:575 +msgid "Use bitmap to track changes and disable journal for integrity device" +msgstr "Använd bitmap för att spåra ändringar och inaktivera journal för integritetsenhet" + +#: src/integritysetup.c:576 msgid "Recalculate initial tags automatically." msgstr "Räkna automatiskt initiala taggar." -#: src/integritysetup.c:631 +#: src/integritysetup.c:649 msgid "Option --integrity-recalculate can be used only for open action." msgstr "Flaggan --integrity-recalculate kan användas endast för öppen åtgärd." -#: src/integritysetup.c:646 -msgid "Options --journal-size, --interleave-sectors, --sector-size, --tag-size and --no-wipe can be used only for format action.\n" -msgstr "Flaggorna --journal-size, --interleave-sectors, --sector-size, --tag-size och --no-wipe kan endast användas för åtgärden formatera.\n" +#: src/integritysetup.c:669 +msgid "Options --journal-size, --interleave-sectors, --sector-size, --tag-size and --no-wipe can be used only for format action." +msgstr "Flaggorna --journal-size, --interleave-sectors, --sector-size, --tag-size och --no-wipe kan endast användas för åtgärden formatera." -#: src/integritysetup.c:652 +#: src/integritysetup.c:675 msgid "Invalid journal size specification." msgstr "Ogiltig storlekspecifikation på journal." -#: src/integritysetup.c:657 +#: src/integritysetup.c:680 msgid "Both key file and key size options must be specified." msgstr "Både flaggor för nyckelfil och nyckelstorlek måste specifiiceras." -#: src/integritysetup.c:660 +#: src/integritysetup.c:683 msgid "Integrity algorithm must be specified if integrity key is used." msgstr "Integritetsalgoritm måste specificieras om integritetsnyckel används." -#: src/integritysetup.c:665 +#: src/integritysetup.c:688 msgid "Both journal integrity key file and key size options must be specified." msgstr "Både flaggor för nyckelfil för journalintegritet och nyckelstorlek måste specificeras." -#: src/integritysetup.c:668 +#: src/integritysetup.c:691 msgid "Journal integrity algorithm must be specified if journal integrity key is used." msgstr "Integritetsalgoritm för journal måste anges om integritetsnyckel för journal används." -#: src/integritysetup.c:673 +#: src/integritysetup.c:696 msgid "Both journal encryption key file and key size options must be specified." msgstr "Både flaggor för nyckelfil för journalkryptering och nyckelstorlek måste specificeras." -#: src/integritysetup.c:676 +#: src/integritysetup.c:699 msgid "Journal encryption algorithm must be specified if journal encryption key is used." msgstr "Krypteringsalgoritm för journal måste anges om integritetsnyckel för journal används." -#: src/cryptsetup_reencrypt.c:175 +#: src/integritysetup.c:703 +msgid "Recovery and bitmap mode options are mutually exclusive." +msgstr "Flaggorna för återställning- och bitmap-läge är ömsesidigt uteslutande." + +#: src/integritysetup.c:707 +msgid "Journal options cannot be used in bitmap mode." +msgstr "Det går inte att använda journalflaggor i bitmap-läge." + +#: src/integritysetup.c:711 +msgid "Bitmap options can be used only in bitmap mode." +msgstr "Flaggan för integritet kan endast användas i bitmap-läge." + +#: src/cryptsetup_reencrypt.c:172 msgid "Reencryption already in-progress." msgstr "Omkryptering pågår redan." -#: src/cryptsetup_reencrypt.c:181 -msgid "Reencryption of device with integrity profile is not supported." -msgstr "Kryptering för enhet med integritetsprofil stöds ej." - -#: src/cryptsetup_reencrypt.c:204 +#: src/cryptsetup_reencrypt.c:208 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "Kan inte öppna %s exklusivt, enheten används." -#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:1148 +#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 msgid "Allocation of aligned memory failed." msgstr "Misslyckades med allokering av justerat minne." -#: src/cryptsetup_reencrypt.c:225 +#: src/cryptsetup_reencrypt.c:229 #, c-format msgid "Cannot read device %s." msgstr "Det går inte att läsa enheten %s." -#: src/cryptsetup_reencrypt.c:236 +#: src/cryptsetup_reencrypt.c:240 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "Markerar LUKS1-enhet %s som oanvändbar." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:244 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "Sätter LUKS2-flaggan för att kryptera om på enheten %s." -#: src/cryptsetup_reencrypt.c:257 +#: src/cryptsetup_reencrypt.c:261 #, c-format msgid "Cannot write device %s." msgstr "Det går inte att skriva till enheten %s." -#: src/cryptsetup_reencrypt.c:345 +#: src/cryptsetup_reencrypt.c:309 msgid "Cannot write reencryption log file." msgstr "Det går inte att skriva loggfil för omkryptering." -#: src/cryptsetup_reencrypt.c:401 +#: src/cryptsetup_reencrypt.c:365 msgid "Cannot read reencryption log file." msgstr "Det går inte att läsa loggfil för omkryptering." -#: src/cryptsetup_reencrypt.c:439 +#: src/cryptsetup_reencrypt.c:403 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "Loggfilen %s existerar, återupptar kryptering.\n" -#: src/cryptsetup_reencrypt.c:488 +#: src/cryptsetup_reencrypt.c:452 msgid "Activating temporary device using old LUKS header." msgstr "Aktiverar temporär enhet användandes gammalt LUKS-huvud." -#: src/cryptsetup_reencrypt.c:498 +#: src/cryptsetup_reencrypt.c:462 msgid "Activating temporary device using new LUKS header." msgstr "Aktiverar temporär enhet användandes nytt LUKS-huvud." -#: src/cryptsetup_reencrypt.c:508 +#: src/cryptsetup_reencrypt.c:472 msgid "Activation of temporary devices failed." msgstr "Aktivering av temporära enheter misslyckades." -#: src/cryptsetup_reencrypt.c:586 -msgid "Failed to set PBKDF parameters." -msgstr "Misslyckades med att sätta PBKDF-parametrar." - -#: src/cryptsetup_reencrypt.c:592 +#: src/cryptsetup_reencrypt.c:559 msgid "Failed to set data offset." msgstr "Misslyckades med att sätta dataoffset." -#: src/cryptsetup_reencrypt.c:600 +#: src/cryptsetup_reencrypt.c:565 +msgid "Failed to set metadata size." +msgstr "Misslyckades med att sätta metadatastorlek." + +#: src/cryptsetup_reencrypt.c:573 #, c-format msgid "New LUKS header for device %s created." msgstr "Skapade nytt LUKS-huvud för enhet %s." -#: src/cryptsetup_reencrypt.c:660 +#: src/cryptsetup_reencrypt.c:633 #, c-format msgid "This version of cryptsetup-reencrypt can't handle new internal token type %s." msgstr "Denna version av cryptsetup-reencrypt kan inte hantera ny interna tokentypen %s." -#: src/cryptsetup_reencrypt.c:682 +#: src/cryptsetup_reencrypt.c:655 msgid "Failed to read activation flags from backup header." msgstr "Misslyckades med att läsa aktiveringsflaggor från säkerhetskopia av huvud." -#: src/cryptsetup_reencrypt.c:686 +#: src/cryptsetup_reencrypt.c:659 msgid "Failed to write activation flags to new header." -msgstr "Misslyckades med att skriva aktiveringsflaggor till nya huvuden.:" +msgstr "Misslyckades med att skriva aktiveringsflaggor till nytt huvud." -#: src/cryptsetup_reencrypt.c:690 src/cryptsetup_reencrypt.c:694 +#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 msgid "Failed to read requirements from backup header." msgstr "Misslyckades med att läsa krav från säkerhetskopiehuvud." -#: src/cryptsetup_reencrypt.c:731 +#: src/cryptsetup_reencrypt.c:705 #, c-format msgid "%s header backup of device %s created." msgstr "Skapade säkerhetskopia av %s-huvud på enhet %s." -#: src/cryptsetup_reencrypt.c:789 +#: src/cryptsetup_reencrypt.c:768 msgid "Creation of LUKS backup headers failed." msgstr "Misslyckades med att skapa en säkerhetskopia av LUKS-huvuden." -#: src/cryptsetup_reencrypt.c:918 +#: src/cryptsetup_reencrypt.c:901 #, c-format msgid "Cannot restore %s header on device %s." msgstr "Det går inte återställa %s-huvudet på enheten %s." -#: src/cryptsetup_reencrypt.c:920 +#: src/cryptsetup_reencrypt.c:903 #, c-format msgid "%s header on device %s restored." msgstr "Återställde %s-huvudet på enheten %s." -#: src/cryptsetup_reencrypt.c:958 src/cryptsetup_reencrypt.c:1038 -msgid "Cannot seek to device offset." -msgstr "Det går inte att söka till enhetsoffset." - -#: src/cryptsetup_reencrypt.c:1081 -msgid "Cannot seek to device offset.\n" -msgstr "Kan inte söka till enhetsoffset.\n" - -#: src/cryptsetup_reencrypt.c:1120 src/cryptsetup_reencrypt.c:1126 +#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 msgid "Cannot open temporary LUKS device." msgstr "Misslyckades med att öppna temporär LUKS-enhet." -#: src/cryptsetup_reencrypt.c:1131 src/cryptsetup_reencrypt.c:1136 +#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 msgid "Cannot get device size." msgstr "Det går inte att hämta enhetsstorlek." -#: src/cryptsetup_reencrypt.c:1173 -msgid "Interrupted by a signal." -msgstr "Avbruten av en signal." - -#: src/cryptsetup_reencrypt.c:1175 +#: src/cryptsetup_reencrypt.c:1158 msgid "IO error during reencryption." msgstr "In-/utfel under återkryptering." -#: src/cryptsetup_reencrypt.c:1206 +#: src/cryptsetup_reencrypt.c:1189 msgid "Provided UUID is invalid." msgstr "Angivet UUID är ogiltigt." -#: src/cryptsetup_reencrypt.c:1309 -msgid "Key file can be used only with --key-slot or with exactly one key slot active." -msgstr "Nyckelfil kan endast användas med --key-slot eller exakt en aktiv nyckelplats." - -#: src/cryptsetup_reencrypt.c:1350 src/cryptsetup_reencrypt.c:1361 -#, c-format -msgid "Enter passphrase for key slot %u: " -msgstr "Ange lösenfras för nyckelplats %u: " - -#: src/cryptsetup_reencrypt.c:1432 +#: src/cryptsetup_reencrypt.c:1423 msgid "Cannot open reencryption log file." msgstr "Det går inte att öppna loggfilen för omkryptering." -#: src/cryptsetup_reencrypt.c:1438 +#: src/cryptsetup_reencrypt.c:1429 msgid "No decryption in progress, provided UUID can be used only to resume suspended decryption process." msgstr "Ingen dekryptering pågår, givet UUID kan endast användas för att återuppta vilande dekrypteringsprocess." -#: src/cryptsetup_reencrypt.c:1513 +#: src/cryptsetup_reencrypt.c:1504 #, c-format msgid "Changed pbkdf parameters in keyslot %i." -msgstr "Ändrade pbkdf-parametrarna i nyckelplatsen %i.:1" +msgstr "Ändrade pbkdf-parametrarna i nyckelplatsen %i." -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1616 msgid "Reencryption block size" msgstr "Blockstorlek för omkryptering" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1616 msgid "MiB" msgstr "MiB" -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup_reencrypt.c:1620 msgid "Do not change key, no data area reencryption" msgstr "Ändra inte nyckel, ingen omkryptering av dataområde" -#: src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup_reencrypt.c:1622 msgid "Read new volume (master) key from file" msgstr "Läs volymnyckeln (master) från fil" -#: src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup_reencrypt.c:1623 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "PBKDF2-iterationstid för LUKS (i ms)" -#: src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup_reencrypt.c:1629 msgid "Use direct-io when accessing devices" msgstr "Använd direct-io vid enhetsåtkomst" -#: src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup_reencrypt.c:1630 msgid "Use fsync after each block" msgstr "Använd fsync efter varje block" -#: src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup_reencrypt.c:1631 msgid "Update log file after every block" msgstr "Uppdatera loggfilen efter varje block" -#: src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup_reencrypt.c:1632 msgid "Use only this slot (others will be disabled)" msgstr "Använd endast denna plats (andra kommer att inaktiveras)" -#: src/cryptsetup_reencrypt.c:1639 -msgid "Reduce data device size (move data offset). DANGEROUS!" -msgstr "Förminska dataenhetsstorleken (flytta dataoffset). FARLIGT!" - -#: src/cryptsetup_reencrypt.c:1640 -msgid "Use only specified device size (ignore rest of device). DANGEROUS!" -msgstr "Använd endast specificerad enhetsstorlek (ignorera resten av enheten). FARLIGT!" - -#: src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup_reencrypt.c:1637 msgid "Create new header on not encrypted device" msgstr "Skapa nytt huvud på icke-krypterad enhet" -#: src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup_reencrypt.c:1638 msgid "Permanently decrypt device (remove encryption)" msgstr "Dekryptera enheten permanent (ta bort kryptering)" -#: src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup_reencrypt.c:1639 msgid "The UUID used to resume decryption" msgstr "Det UUID som används för att återuppta kryptering" -#: src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup_reencrypt.c:1640 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Typ av LUKS-metadata: luks1, luks2" -#: src/cryptsetup_reencrypt.c:1663 +#: src/cryptsetup_reencrypt.c:1659 msgid "[OPTION...] " msgstr "[FLAGGA…] " -#: src/cryptsetup_reencrypt.c:1677 +#: src/cryptsetup_reencrypt.c:1667 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "Omkryptering kommer att ändra: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1678 +#: src/cryptsetup_reencrypt.c:1668 msgid "volume key" msgstr "volymnyckeln" -#: src/cryptsetup_reencrypt.c:1680 +#: src/cryptsetup_reencrypt.c:1670 msgid "set hash to " msgstr "sätt hash till " -#: src/cryptsetup_reencrypt.c:1681 +#: src/cryptsetup_reencrypt.c:1671 msgid ", set cipher to " msgstr ", sätt chiffer till " -#: src/cryptsetup_reencrypt.c:1685 +#: src/cryptsetup_reencrypt.c:1675 msgid "Argument required." msgstr "Kräver argument." -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup_reencrypt.c:1703 msgid "Only values between 1 MiB and 64 MiB allowed for reencryption block size." msgstr "Endast värden mellan 1 MiB och 64 MiB är tillåtna som blockstorlek för omkryptering." -#: src/cryptsetup_reencrypt.c:1732 src/cryptsetup_reencrypt.c:1737 -msgid "Invalid device size specification." -msgstr "Ogiltig storlekspecifikation på enhet." - -#: src/cryptsetup_reencrypt.c:1740 +#: src/cryptsetup_reencrypt.c:1730 msgid "Maximum device reduce size is 64 MiB." msgstr "Högsta förminskningsstorlek för enhet är 64 MiB." -#: src/cryptsetup_reencrypt.c:1743 -msgid "Reduce size must be multiple of 512 bytes sector." -msgstr "Minskningsstorlek måste vara en multipel av 512-bytesektor." - -#: src/cryptsetup_reencrypt.c:1747 +#: src/cryptsetup_reencrypt.c:1737 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "Flaggan --new måste användas tillsammans med --reduce-device-size eller --header." -#: src/cryptsetup_reencrypt.c:1751 +#: src/cryptsetup_reencrypt.c:1741 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "Flaggan --keep-key kan endast användas med --hash, --iter-time eller --pbkdf-force-iterations." -#: src/cryptsetup_reencrypt.c:1755 +#: src/cryptsetup_reencrypt.c:1745 msgid "Option --new cannot be used together with --decrypt." msgstr "Flaggan --new kan inte användas tillsammans med --decrypt." -#: src/cryptsetup_reencrypt.c:1759 +#: src/cryptsetup_reencrypt.c:1749 msgid "Option --decrypt is incompatible with specified parameters." msgstr "Flaggan --decrypt är inkompatibel med specificerade parametrar." -#: src/cryptsetup_reencrypt.c:1763 +#: src/cryptsetup_reencrypt.c:1753 msgid "Option --uuid is allowed only together with --decrypt." msgstr "Flaggan --uuid är endast tillåten tillsammans med --decrypt." -#: src/cryptsetup_reencrypt.c:1767 +#: src/cryptsetup_reencrypt.c:1757 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Ogiltig luks-typ. Använd en av dessa: 'luks', 'luks1' or 'luks2'." -#: src/utils_tools.c:150 +#: src/utils_tools.c:151 msgid "Error reading response from terminal." msgstr "Fel vid läsning av svar från terminal." -#: src/utils_tools.c:175 +#: src/utils_tools.c:186 msgid "Command successful.\n" msgstr "Kommandot lyckades.\n" -#: src/utils_tools.c:183 +#: src/utils_tools.c:194 msgid "wrong or missing parameters" msgstr "fel eller saknar parametrar" -#: src/utils_tools.c:185 +#: src/utils_tools.c:196 msgid "no permission or bad passphrase" msgstr "ingen behörighet eller dålig lösenfras" -#: src/utils_tools.c:187 +#: src/utils_tools.c:198 msgid "out of memory" msgstr "slut på minne" -#: src/utils_tools.c:189 +#: src/utils_tools.c:200 msgid "wrong device or file specified" msgstr "angav fel enhet eller fil" -#: src/utils_tools.c:191 +#: src/utils_tools.c:202 msgid "device already exists or device is busy" msgstr "enheten existerar redan eller så är enheten upptagen" -#: src/utils_tools.c:193 +#: src/utils_tools.c:204 msgid "unknown error" msgstr "okänt fel" -#: src/utils_tools.c:195 +#: src/utils_tools.c:206 #, c-format msgid "Command failed with code %i (%s).\n" msgstr "Kommandot misslyckades med kod %i (%s).\n" -#: src/utils_tools.c:272 +#: src/utils_tools.c:283 #, c-format msgid "Key slot %i created." msgstr "Nyckelplats %i är ändrad." -#: src/utils_tools.c:274 +#: src/utils_tools.c:285 #, c-format msgid "Key slot %i unlocked." msgstr "Nyckelplats %i är upplåst." -#: src/utils_tools.c:276 +#: src/utils_tools.c:287 #, c-format msgid "Key slot %i removed." msgstr "Nyckelplats %i är upplåst." -#: src/utils_tools.c:285 +#: src/utils_tools.c:296 #, c-format msgid "Token %i created." msgstr "Token %i används." -#: src/utils_tools.c:287 +#: src/utils_tools.c:298 #, c-format msgid "Token %i removed." msgstr "Token %i används." -#: src/utils_tools.c:453 +#: src/utils_tools.c:464 +msgid "" +"\n" +"Wipe interrupted." +msgstr "" +"\n" +"Skrivning avbruten." + +#: src/utils_tools.c:475 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "VARNING: Enheten %s innehåller redan en ”%s”-partitionssignatur.\n" -#: src/utils_tools.c:461 +#: src/utils_tools.c:483 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "VARNING: Enheten %s innehåller redan en ”%s”-superblocksignatur.\n" -#: src/utils_tools.c:482 src/utils_tools.c:546 +#: src/utils_tools.c:504 src/utils_tools.c:568 msgid "Failed to initialize device signature probes." msgstr "Misslyckades med att initiera identifiering av enhetssignatur." -#: src/utils_tools.c:526 +#: src/utils_tools.c:548 #, c-format msgid "Failed to stat device %s." msgstr "Misslyckades med att ta status på enhet %s." -#: src/utils_tools.c:539 +#: src/utils_tools.c:561 #, c-format msgid "Device %s is in use. Can not proceed with format operation." msgstr "Enheten %s används. Det går inte att fortsätta med formateringsåtgärden." -#: src/utils_tools.c:541 +#: src/utils_tools.c:563 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "Misslyckades med att öppna filen %s i läs-/skrivläge." -#: src/utils_tools.c:561 +#: src/utils_tools.c:577 +#, c-format +msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." +msgstr "Kommer att rensa befintlig ”%s”-partitionssignatur (förskjutning: % byte) på enheten %s." + +#: src/utils_tools.c:580 +#, c-format +msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." +msgstr "Kommer att rensa befintlig ”%s”-superblocksignatur (förskjutning: % byte) på enheten %s." + +#: src/utils_tools.c:583 msgid "Failed to wipe device signature." msgstr "Misslyckades med att radera enhetssignatur." -#: src/utils_tools.c:568 +#: src/utils_tools.c:590 #, c-format msgid "Failed to probe device %s for a signature." msgstr "Misslyckades med söka av enheten %s efter en signatur." +#: src/utils_tools.c:629 +msgid "" +"\n" +"Reencryption interrupted." +msgstr "" +"\n" +"Omkryptering avbryten." + #: src/utils_password.c:43 src/utils_password.c:75 #, c-format msgid "Cannot check password quality: %s" @@ -3072,21 +3832,25 @@ msgid "Enter passphrase: " msgstr "Ange lösenfras: " -#: src/utils_password.c:255 +#: src/utils_password.c:256 #, c-format msgid "Enter passphrase for %s: " msgstr "Ange lösenfras för %s: " -#: src/utils_password.c:285 +#: src/utils_password.c:287 msgid "No key available with this passphrase." msgstr "Ingen nyckel finns tillgänglig med denna lösenfras." -#: src/utils_password.c:320 +#: src/utils_password.c:289 +msgid "No usable keyslot is available." +msgstr "Ingen tillgänglig användbar nyckelplats." + +#: src/utils_password.c:328 #, c-format msgid "Cannot open keyfile %s for write." msgstr "Det går inte att öppna nyckelfilen %s för skrivning." -#: src/utils_password.c:327 +#: src/utils_password.c:335 #, c-format msgid "Cannot write to keyfile %s." msgstr "Det går inte att skriva till nyckelfilen %s." @@ -3129,6 +3893,49 @@ msgid "Failed to write JSON file." msgstr "Misslyckades med att skriva JSON-fil." +#~ msgid "Wrong key size." +#~ msgstr "Fel nyckelstorlek." + +#~ msgid "Requested dmcrypt performance options are not supported." +#~ msgstr "Begärda flaggor för dmcrypt-prestanda stöds inte." + +#~ msgid "Cannot format device %s which is still in use." +#~ msgstr "Det går inte att formatera enheten %s då den används." + +#~ msgid "Key slot %d is not used." +#~ msgstr "Nyckelplats %d används inte." + +#~ msgid "Function not available in FIPS mode." +#~ msgstr "Funktionen är inte tillgänglig i FIPS-läge." + +#~ msgid "Cipher %s is not available." +#~ msgstr "Chiffret %s är inte tillgängligt." + +#~ msgid "Key slot %d selected for deletion." +#~ msgstr "Nyckelplats %d markerad för borttagning." + +#~ msgid "open device as mapping " +#~ msgstr "öppna enhet som mappning " + +#, fuzzy +#~ msgid "Parameter --refresh is only allowed with open or refresh commands.\n" +#~ msgstr "Flaggan --refresh är endast tillåten för kommandona open eller refresh." + +#~ msgid "Unsupported encryption sector size.\n" +#~ msgstr "Stöder inte sektorstorlek för kryptering.\n" + +#~ msgid "close device (deactivate and remove mapping)" +#~ msgstr "stäng enhet (inaktivera och ta bort mappning)" + +#~ msgid "Failed to set PBKDF parameters." +#~ msgstr "Misslyckades med att sätta PBKDF-parametrar." + +#~ msgid "Cannot seek to device offset.\n" +#~ msgstr "Kan inte söka till enhetsoffset.\n" + +#~ msgid "Interrupted by a signal." +#~ msgstr "Avbruten av en signal." + #~ msgid "Replaced with key slot %d.\n" #~ msgstr "Ersätt med nyckelplats %d.\n" @@ -3146,9 +3953,6 @@ #~ "Saknad flagga --token för att ange token att ta bort.\n" #~ " \n" -#~ msgid "Failed to remove token %d.\n" -#~ msgstr "Misslyckades med att ta bort token %d.\n" - #~ msgid "Add or remove keyring token" #~ msgstr "Lägg till eller ta bort token för nyckelring" @@ -3185,9 +3989,6 @@ #~ msgid "Cannot use passed UUID unless decryption in progress.\n" #~ msgstr "Kan inte använda insänt UUID om inte dekryptering pågår.\n" -#~ msgid "Key slot %d verified.\n" -#~ msgstr "Nyckelplats %d har verifierats.\n" - #~ msgid "Enter LUKS passphrase: " #~ msgstr "Ange LUKS-lösenfras: " diff -Nru cryptsetup-2.3.4/po/uk.po cryptsetup-2.3.6/po/uk.po --- cryptsetup-2.3.4/po/uk.po 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/po/uk.po 2021-05-28 04:57:08.000000000 -0500 @@ -2,13 +2,13 @@ # Copyright (C) 2012 Free Software Foundation, Inc. # This file is put in the public domain. # -# Yuri Chornoivan , 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020. +# Yuri Chornoivan , 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021. msgid "" msgstr "" -"Project-Id-Version: cryptsetup 2.3.4-rc0\n" +"Project-Id-Version: cryptsetup 2.3.6-rc0\n" "Report-Msgid-Bugs-To: dm-crypt@saout.de\n" -"POT-Creation-Date: 2020-08-27 21:34+0200\n" -"PO-Revision-Date: 2020-09-01 10:55+0300\n" +"POT-Creation-Date: 2021-05-21 17:33+0200\n" +"PO-Revision-Date: 2021-05-22 18:02+0300\n" "Last-Translator: Yuri Chornoivan \n" "Language-Team: Ukrainian \n" "Language: uk\n" @@ -17,64 +17,64 @@ "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Lokalize 20.11.70\n" +"X-Generator: Lokalize 20.12.0\n" -#: lib/libdevmapper.c:405 +#: lib/libdevmapper.c:408 msgid "Cannot initialize device-mapper, running as non-root user." msgstr "Не можна ініціалізувати device-mapper, якщо програму запущено не від імені адміністратора (root)." -#: lib/libdevmapper.c:408 +#: lib/libdevmapper.c:411 msgid "Cannot initialize device-mapper. Is dm_mod kernel module loaded?" msgstr "Не вдалося ініціалізувати device-mapper. Чи завантажено модуль ядра dm_mod?" -#: lib/libdevmapper.c:1149 +#: lib/libdevmapper.c:1180 msgid "Requested deferred flag is not supported." msgstr "Підтримки бажаного прапорця відкладення, %s, не передбачено." -#: lib/libdevmapper.c:1216 +#: lib/libdevmapper.c:1249 #, c-format msgid "DM-UUID for device %s was truncated." msgstr "DM-UUID для пристрою %s було обрізано." -#: lib/libdevmapper.c:1547 +#: lib/libdevmapper.c:1580 msgid "Unknown dm target type." msgstr "Невідомий тип призначення dm." -#: lib/libdevmapper.c:1660 lib/libdevmapper.c:1665 lib/libdevmapper.c:1725 -#: lib/libdevmapper.c:1728 +#: lib/libdevmapper.c:1701 lib/libdevmapper.c:1706 lib/libdevmapper.c:1766 +#: lib/libdevmapper.c:1769 msgid "Requested dm-crypt performance options are not supported." msgstr "Підтримки вказаних параметрів швидкодії dm-crypt не передбачено." -#: lib/libdevmapper.c:1672 lib/libdevmapper.c:1676 +#: lib/libdevmapper.c:1713 lib/libdevmapper.c:1717 msgid "Requested dm-verity data corruption handling options are not supported." msgstr "Підтримки вказаних параметрів обробки пошкоджених даних за допомогою dm-verity не передбачено." -#: lib/libdevmapper.c:1680 +#: lib/libdevmapper.c:1721 msgid "Requested dm-verity FEC options are not supported." msgstr "Підтримки вказаних параметрів FEC за допомогою dm-verity не передбачено." -#: lib/libdevmapper.c:1684 +#: lib/libdevmapper.c:1725 msgid "Requested data integrity options are not supported." msgstr "Підтримки вказаних параметрів цілісності даних не передбачено." -#: lib/libdevmapper.c:1686 +#: lib/libdevmapper.c:1727 msgid "Requested sector_size option is not supported." msgstr "Підтримки вказаного параметра sector_size не передбачено." -#: lib/libdevmapper.c:1691 +#: lib/libdevmapper.c:1732 msgid "Requested automatic recalculation of integrity tags is not supported." msgstr "Підтримки потрібного вам автоматичного повторного обчислення міток цілісності не передбачено." -#: lib/libdevmapper.c:1695 lib/libdevmapper.c:1731 lib/libdevmapper.c:1734 +#: lib/libdevmapper.c:1736 lib/libdevmapper.c:1772 lib/libdevmapper.c:1775 #: lib/luks2/luks2_json_metadata.c:2170 msgid "Discard/TRIM is not supported." msgstr "Підтримки відкидання або обрізання не передбачено." -#: lib/libdevmapper.c:1699 +#: lib/libdevmapper.c:1740 msgid "Requested dm-integrity bitmap mode is not supported." msgstr "Підтримки вказаного режиму бітової карти цілісності dm не передбачено." -#: lib/libdevmapper.c:2663 +#: lib/libdevmapper.c:2713 #, c-format msgid "Failed to query dm-%s segment." msgstr "Не вдалося опитати сегмент dm-%s." @@ -116,7 +116,7 @@ msgid "Cannot initialize crypto backend." msgstr "Не вдалося ініціалізувати допоміжну програму шифрування." -#: 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 #, c-format msgid "Hash algorithm %s not supported." msgstr "Підтримки алгоритму хешування %s не передбачено." @@ -130,7 +130,7 @@ msgid "Cannot determine device type. Incompatible activation of device?" msgstr "Не вдалося визначити тип пристрою. Несумісна дія з активації пристрою?" -#: lib/setup.c:341 lib/setup.c:3050 +#: lib/setup.c:341 lib/setup.c:3058 msgid "This operation is supported only for LUKS device." msgstr "Підтримку цієї дії передбачено лише для пристроїв LUKS." @@ -138,7 +138,7 @@ msgid "This operation is supported only for LUKS2 device." msgstr "Підтримку цієї дії передбачено лише для пристроїв LUKS2." -#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2345 +#: lib/setup.c:423 lib/luks2/luks2_reencrypt.c:2347 msgid "All key slots full." msgstr "Заповнено всі слоти ключів." @@ -152,7 +152,7 @@ msgid "Key slot %d is full, please select another one." msgstr "Слот ключа %d заповнено, будь ласка, виберіть інший." -#: lib/setup.c:525 lib/setup.c:2824 +#: lib/setup.c:525 lib/setup.c:2832 msgid "Device size is not aligned to device logical block size." msgstr "Розмір пристрою не вирівняно за розміром логічного блоку пристрою." @@ -161,7 +161,7 @@ msgid "Header detected but device %s is too small." msgstr "Виявлено заголовок, але об’єм пристрою %s є надто малим." -#: lib/setup.c:661 +#: lib/setup.c:661 lib/setup.c:2777 msgid "This operation is not supported for this device type." msgstr "Підтримки цієї дії для цього типу пристроїв не передбачено." @@ -169,17 +169,13 @@ 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 #, c-format msgid "Unsupported LUKS version %d." msgstr "Непідтримувана версія LUKS, %d." -#: lib/setup.c:849 lib/setup.c:1539 lib/setup.c:1959 -msgid "Detached metadata device is not supported for this crypt type." -msgstr "Підтримки пристрою від'єднаних метаданих для цього типу шифрування не передбачено." - -#: lib/setup.c:1427 lib/setup.c:2544 lib/setup.c:2616 lib/setup.c:2628 -#: lib/setup.c:2777 lib/setup.c:4517 +#: lib/setup.c:1427 lib/setup.c:2547 lib/setup.c:2619 lib/setup.c:2631 +#: lib/setup.c:2785 lib/setup.c:4532 #, c-format msgid "Device %s is not active." msgstr "Пристрій %s є неактивним." @@ -193,7 +189,7 @@ msgid "Invalid plain crypt parameters." msgstr "Некоректні параметри звичайного шифрування." -#: lib/setup.c:1529 lib/setup.c:1949 src/integritysetup.c:74 +#: lib/setup.c:1529 lib/setup.c:1949 msgid "Invalid key size." msgstr "Некоректний розмір ключа." @@ -201,12 +197,16 @@ msgid "UUID is not supported for this crypt type." msgstr "Підтримки UUID для цього типу шифрування не передбачено." +#: lib/setup.c:1539 lib/setup.c:1959 +msgid "Detached metadata device is not supported for this crypt type." +msgstr "Підтримки пристрою від'єднаних метаданих для цього типу шифрування не передбачено." + #: lib/setup.c:1549 lib/setup.c:1739 lib/luks2/luks2_reencrypt.c:2308 -#: src/cryptsetup.c:1238 src/cryptsetup.c:3945 +#: src/cryptsetup.c:1296 src/cryptsetup.c:4037 msgid "Unsupported encryption sector size." msgstr "Непідтримуваний розмір сектора шифрування." -#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2818 +#: lib/setup.c:1557 lib/setup.c:1864 lib/setup.c:2826 msgid "Device size is not aligned to requested sector size." msgstr "Розмір пристрою не вирівняно за вказаним розміром сектора." @@ -250,8 +250,8 @@ msgid "WARNING: LUKS2 keyslots area size changed to % bytes.\n" msgstr "Увага: розмір області слотів ключів LUKS2 змінено до % байтів.\n" -#: lib/setup.c:1882 lib/utils_device.c:834 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:2358 lib/luks2/luks2_reencrypt.c:3383 #, c-format msgid "Device %s is too small." msgstr "Об’єм пристрою %s є надто малим." @@ -284,16 +284,16 @@ msgid "Can't format VERITY without device." msgstr "Форматування VERITY без пристрою неможливе." -#: lib/setup.c:2000 lib/verity/verity.c:102 +#: lib/setup.c:2000 lib/verity/verity.c:103 #, c-format msgid "Unsupported VERITY hash type %d." msgstr "Непідтримуваний тип хешування VERITY, %d." -#: lib/setup.c:2006 lib/verity/verity.c:110 +#: lib/setup.c:2006 lib/verity/verity.c:111 msgid "Unsupported VERITY block size." msgstr "Непідтримуваний розмір блоку VERITY." -#: lib/setup.c:2011 lib/verity/verity.c:74 +#: lib/setup.c:2011 lib/verity/verity.c:75 msgid "Unsupported VERITY hash offset." msgstr "Непідтримуваний відступ хешу VERITY." @@ -323,236 +323,236 @@ msgid "Unknown crypt device type %s requested." msgstr "Надіслано запит щодо невідомого типу пристрою шифрування, %s." -#: lib/setup.c:2550 lib/setup.c:2622 lib/setup.c:2635 +#: lib/setup.c:2553 lib/setup.c:2625 lib/setup.c:2638 #, c-format msgid "Unsupported parameters on device %s." msgstr "Непідтримувані параметри на пристрої %s." -#: 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:2410 +#: lib/luks2/luks2_reencrypt.c:2753 #, c-format msgid "Mismatching parameters on device %s." msgstr "Невідповідність параметрів на пристрої %s." -#: 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:2054 +#: lib/luks2/luks2_reencrypt.c:3161 #, c-format msgid "Failed to reload device %s." msgstr "Не вдалося перезавантажити пристрій %s." -#: lib/setup.c:2708 lib/setup.c:2713 lib/luks2/luks2_reencrypt.c:2025 +#: lib/setup.c:2711 lib/setup.c:2716 lib/luks2/luks2_reencrypt.c:2025 #: lib/luks2/luks2_reencrypt.c:2032 #, c-format msgid "Failed to suspend device %s." msgstr "Не вдалося приспати пристрій %s." -#: 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:2039 +#: lib/luks2/luks2_reencrypt.c:3096 lib/luks2/luks2_reencrypt.c:3165 #, c-format msgid "Failed to resume device %s." msgstr "Не вдалося відновити роботу пристрою %s." -#: lib/setup.c:2732 +#: lib/setup.c:2735 #, c-format msgid "Fatal error while reloading device %s (on top of device %s)." msgstr "Критична помилка під час перезавантаження пристрої %s (над пристроєм %s)." -#: lib/setup.c:2735 lib/setup.c:2737 +#: lib/setup.c:2738 lib/setup.c:2740 #, c-format msgid "Failed to switch device %s to dm-error." msgstr "Не вдалося перемкнути пристрій %s у режим dm-error." -#: lib/setup.c:2809 +#: lib/setup.c:2817 msgid "Cannot resize loop device." msgstr "Неможливо змінити розмір петльового пристрою." -#: lib/setup.c:2882 +#: lib/setup.c:2890 msgid "Do you really want to change UUID of device?" msgstr "Ви справді хочете змінити UUID пристрою?" -#: lib/setup.c:2958 +#: lib/setup.c:2966 msgid "Header backup file does not contain compatible LUKS header." msgstr "Файл резервної копії заголовка не містить сумісного із LUKS заголовка." -#: lib/setup.c:3058 +#: lib/setup.c:3066 #, c-format msgid "Volume %s is not active." msgstr "Том %s не є активним." -#: lib/setup.c:3069 +#: lib/setup.c:3077 #, c-format msgid "Volume %s is already suspended." msgstr "Том %s вже приспано." -#: lib/setup.c:3082 +#: lib/setup.c:3090 #, c-format msgid "Suspend is not supported for device %s." msgstr "Підтримки присипляння для пристрою %s не передбачено." -#: lib/setup.c:3084 +#: lib/setup.c:3092 #, c-format msgid "Error during suspending device %s." msgstr "Помилка під час спроби приспати пристрій %s." -#: lib/setup.c:3117 lib/setup.c:3184 lib/setup.c:3267 -#, c-format -msgid "Volume %s is not suspended." -msgstr "Том %s не приспано." - -#: lib/setup.c:3146 +#: lib/setup.c:3128 #, c-format msgid "Resume is not supported for device %s." msgstr "Підтримки дії з пробудження для пристрою %s не передбачено." -#: lib/setup.c:3148 lib/setup.c:3216 lib/setup.c:3297 +#: lib/setup.c:3130 #, c-format msgid "Error during resuming device %s." msgstr "Помилка під час спроби пробудити пристрій %s." -#: lib/setup.c:3282 lib/setup.c:3648 lib/setup.c:4314 lib/setup.c:4327 -#: lib/setup.c:4335 lib/setup.c:4348 lib/setup.c:4698 lib/setup.c:5844 +#: lib/setup.c:3164 lib/setup.c:3212 lib/setup.c:3282 +#, c-format +msgid "Volume %s is not suspended." +msgstr "Том %s не приспано." + +#: lib/setup.c:3297 lib/setup.c:3652 lib/setup.c:4325 lib/setup.c:4338 +#: lib/setup.c:4346 lib/setup.c:4359 lib/setup.c:4713 lib/setup.c:5862 msgid "Volume key does not match the volume." msgstr "Ключ тому не відповідає тому." -#: lib/setup.c:3343 lib/setup.c:3531 +#: lib/setup.c:3344 lib/setup.c:3535 msgid "Cannot add key slot, all slots disabled and no volume key provided." msgstr "Не вдалося додати слот ключа, всі слоти вимкнено і не вказано ключа тому." -#: lib/setup.c:3483 +#: lib/setup.c:3487 msgid "Failed to swap new key slot." msgstr "Не вдалося зарезервувати новий слот ключа." -#: lib/setup.c:3669 +#: lib/setup.c:3673 #, c-format msgid "Key slot %d is invalid." msgstr "Слот ключа %d є некоректним." -#: lib/setup.c:3675 src/cryptsetup.c:1584 src/cryptsetup.c:1929 +#: lib/setup.c:3679 src/cryptsetup.c:1634 src/cryptsetup.c:1979 #, c-format msgid "Keyslot %d is not active." msgstr "Слот ключа %d не є активним." -#: lib/setup.c:3694 +#: lib/setup.c:3698 msgid "Device header overlaps with data area." msgstr "Заголовок пристрою перекривається із областю даних." -#: lib/setup.c:3981 +#: lib/setup.c:3991 msgid "Reencryption in-progress. Cannot activate device." msgstr "Виконуємо повторне шифрування. Не можна активувати пристрій." -#: lib/setup.c:3983 lib/luks2/luks2_json_metadata.c:2253 -#: lib/luks2/luks2_reencrypt.c:2836 +#: lib/setup.c:3993 lib/luks2/luks2_json_metadata.c:2253 +#: lib/luks2/luks2_reencrypt.c:2852 msgid "Failed to get reencryption lock." msgstr "Не вдалося отримати стан блокування для повторного шифрування." -#: lib/setup.c:3996 lib/luks2/luks2_reencrypt.c:2855 +#: lib/setup.c:4006 lib/luks2/luks2_reencrypt.c:2871 msgid "LUKS2 reencryption recovery failed." msgstr "Не вдалося виконати відновлення даних повторного шифрування LUKS2." -#: lib/setup.c:4127 lib/setup.c:4384 +#: lib/setup.c:4137 lib/setup.c:4399 msgid "Device type is not properly initialized." msgstr "Тип пристрою не ініціалізовано належним чином." -#: lib/setup.c:4175 +#: lib/setup.c:4185 #, c-format msgid "Device %s already exists." msgstr "Пристрій %s вже існує." -#: lib/setup.c:4182 +#: lib/setup.c:4192 #, c-format msgid "Cannot use device %s, name is invalid or still in use." msgstr "Неможливо скористатися пристроєм %s, некоректна назва або пристрій усе ще використовується." -#: lib/setup.c:4301 +#: lib/setup.c:4312 msgid "Incorrect volume key specified for plain device." msgstr "Для пристрою зі звичайним шифруванням вказано помилковий ключ тому." -#: lib/setup.c:4410 +#: lib/setup.c:4425 msgid "Incorrect root hash specified for verity device." msgstr "Для пристрою перевірки вказано помилковий кореневий хеш." -#: lib/setup.c:4417 +#: lib/setup.c:4432 msgid "Root hash signature required." msgstr "Потрібен хеш-підпис кореневої теки." -#: lib/setup.c:4426 +#: lib/setup.c:4441 msgid "Kernel keyring missing: required for passing signature to kernel." msgstr "Немає сховища ключів ядра: це сховище потрібне для передавання підпису ядру." -#: lib/setup.c:4443 lib/setup.c:5920 +#: lib/setup.c:4458 lib/setup.c:5938 msgid "Failed to load key in kernel keyring." msgstr "Не вдалося завантажити ключ до сховища ключів ядра." -#: lib/setup.c:4496 lib/setup.c:4512 lib/luks2/luks2_json_metadata.c:2306 -#: src/cryptsetup.c:2676 +#: lib/setup.c:4511 lib/setup.c:4527 lib/luks2/luks2_json_metadata.c:2306 +#: src/cryptsetup.c:2744 #, c-format msgid "Device %s is still in use." msgstr "Пристрій %s все ще використовується." -#: lib/setup.c:4521 +#: lib/setup.c:4536 #, c-format msgid "Invalid device %s." msgstr "Некоректний пристрій %s." -#: lib/setup.c:4637 +#: lib/setup.c:4652 msgid "Volume key buffer too small." msgstr "Буфер ключів тому є занадто малим." -#: lib/setup.c:4645 +#: lib/setup.c:4660 msgid "Cannot retrieve volume key for plain device." msgstr "Неможливо отримати ключ тому для пристрою зі звичайним шифруванням." -#: lib/setup.c:4662 +#: lib/setup.c:4677 msgid "Cannot retrieve root hash for verity device." msgstr "Не вдалося отримати кореневий хеш для пристрою VERITY." -#: lib/setup.c:4664 +#: lib/setup.c:4679 #, c-format msgid "This operation is not supported for %s crypt device." msgstr "Підтримки цієї дії для шифрованого пристрою %s не передбачено." -#: lib/setup.c:4870 +#: lib/setup.c:4885 msgid "Dump operation is not supported for this device type." msgstr "Підтримки дії зі створення дампу для цього типу пристроїв не передбачено." -#: lib/setup.c:5195 +#: lib/setup.c:5213 #, c-format msgid "Data offset is not multiple of %u bytes." msgstr "Зсув у даних не є кратним до %u байтів." -#: lib/setup.c:5480 +#: lib/setup.c:5498 #, c-format msgid "Cannot convert device %s which is still in use." msgstr "Не можна перетворити пристрій %s, який перебуває у користуванні." -#: lib/setup.c:5777 +#: lib/setup.c:5795 #, c-format msgid "Failed to assign keyslot %u as the new volume key." msgstr "Не вдалося прив'язати слот ключа %u як новий ключ тому." -#: lib/setup.c:5850 +#: lib/setup.c:5868 msgid "Failed to initialize default LUKS2 keyslot parameters." msgstr "Не вдалося ініціалізувати типові параметри слоту ключів LUKS2." -#: lib/setup.c:5856 +#: lib/setup.c:5874 #, c-format msgid "Failed to assign keyslot %d to digest." msgstr "Не вдалося прив'язати слот ключа %d до контрольної суми." -#: lib/setup.c:5987 +#: lib/setup.c:6005 msgid "Kernel keyring is not supported by the kernel." msgstr "У ядрі не передбачено підтримки сховища ключів ядра." -#: lib/setup.c:5997 lib/luks2/luks2_reencrypt.c:2952 +#: lib/setup.c:6015 lib/luks2/luks2_reencrypt.c:2968 #, c-format msgid "Failed to read passphrase from keyring (error %d)." msgstr "Не вдалося прочитати пароль із ключа зі сховища ключів (помилка %d)." -#: lib/setup.c:6021 +#: lib/setup.c:6039 msgid "Failed to acquire global memory-hard access serialization lock." msgstr "Не вдалося створити загальне блокування серіалізації доступу до пам'яті." @@ -580,8 +580,8 @@ msgid "Cannot seek to requested keyfile offset." msgstr "Не вдалося встановити потрібну позицію у файлі ключа." -#: 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 msgid "Out of memory while reading passphrase." msgstr "Під час читання пароля вичерпано пам’ять." @@ -601,56 +601,56 @@ msgid "Cannot read requested amount of data." msgstr "Не вдалося прочитати бажаний об’єм даних." -#: 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 #, c-format msgid "Device %s does not exist or access denied." msgstr "Пристрою %s не існує або доступ до цього пристрою заборонено." -#: lib/utils_device.c:197 +#: lib/utils_device.c:200 #, c-format msgid "Device %s is not compatible." msgstr "Пристрій %s є сумісним." -#: lib/utils_device.c:532 +#: lib/utils_device.c:544 #, c-format msgid "Ignoring bogus optimal-io size for data device (%u bytes)." msgstr "Ігноруємо фіктивний розмір optimal-io для пристрою даних (%u байтів)." -#: lib/utils_device.c:648 +#: lib/utils_device.c:666 #, c-format msgid "Device %s is too small. Need at least % bytes." msgstr "Обсяг пристрою %s є надто малим. Потрібно принаймні % байтів." -#: lib/utils_device.c:729 +#: lib/utils_device.c:747 #, c-format msgid "Cannot use device %s which is in use (already mapped or mounted)." msgstr "Не можна використовувати пристрій %s, оскільки його вже використано (призначено або змонтовано)." -#: lib/utils_device.c:733 +#: lib/utils_device.c:751 #, c-format msgid "Cannot use device %s, permission denied." msgstr "Не можна скористатися пристроєм %s, недостатні права доступу." -#: lib/utils_device.c:736 +#: lib/utils_device.c:754 #, c-format msgid "Cannot get info about device %s." msgstr "Не вдалося отримати дані щодо пристрою %s." -#: lib/utils_device.c:759 +#: lib/utils_device.c:777 msgid "Cannot use a loopback device, running as non-root user." msgstr "Не можна використовувати петльовий пристрій, програму запущено не від імені адміністративного користувача (root)." -#: lib/utils_device.c:769 +#: lib/utils_device.c:787 msgid "Attaching loopback device failed (loop device with autoclear flag is required)." msgstr "Спроба долучення петльового пристрою зазнала невдачі (потрібен петльовий пристрій з встановленим прапорцем автоматичного спорожнення)." -#: lib/utils_device.c:815 +#: lib/utils_device.c:833 #, c-format msgid "Requested offset is beyond real size of device %s." msgstr "Бажана точка відступу перебуває за межами об’єму пристрою %s." -#: lib/utils_device.c:823 +#: lib/utils_device.c:841 #, c-format msgid "Device %s has zero size." msgstr "Об’єм пристрою %s є нульовим." @@ -724,16 +724,16 @@ #: lib/utils_device_locking.c:109 #, c-format -msgid "WARNING: Locking directory %s/%s is missing!\n" -msgstr "ПОПЕРЕДЖЕННЯ: не вистачає блокування каталогу %s/%s!\n" +msgid "Locking directory %s/%s will be created with default compiled-in permissions." +msgstr "Буде створено каталог блокування %s/%s із типовими вбудованими правами доступу." #: lib/utils_device_locking.c:119 #, c-format msgid "Locking aborted. The locking path %s/%s is unusable (%s is not a directory)." msgstr "Блокування перервано Шлях блокування %s/%s є непридатним для користування (%s не є каталогом)." -#: 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 msgid "Cannot seek to device offset." msgstr "Не вдалося встановити вказану позицію на пристрої." @@ -760,7 +760,7 @@ msgstr "Специфікацію шифрування слід вказувати так: [алгоритм]-[режим]-[iv]." #: lib/luks1/keyencryption.c:97 lib/luks1/keymanage.c:344 -#: lib/luks1/keymanage.c:635 lib/luks1/keymanage.c:1080 +#: lib/luks1/keymanage.c:642 lib/luks1/keymanage.c:1094 #: lib/luks2/luks2_json_metadata.c:1260 lib/luks2/luks2_keyslot.c:734 #, c-format msgid "Cannot write to device %s, permission denied." @@ -780,12 +780,12 @@ msgstr "Помилка введення-виведення під час шифрування слоту ключів." #: 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:1263 -#: 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:1263 +#: src/cryptsetup_reencrypt.c:218 src/cryptsetup_reencrypt.c:230 #, c-format msgid "Cannot open device %s." msgstr "Не вдалося відкрити пристрій %s." @@ -806,13 +806,13 @@ msgid "LUKS keyslot %u is invalid." msgstr "Слот ключа LUKS %u є некоректним." -#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:472 -#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1445 -#: src/cryptsetup.c:1571 src/cryptsetup.c:1628 src/cryptsetup.c:1684 -#: src/cryptsetup.c:1751 src/cryptsetup.c:1854 src/cryptsetup.c:1918 -#: src/cryptsetup.c:2148 src/cryptsetup.c:2343 src/cryptsetup.c:2403 -#: src/cryptsetup.c:2469 src/cryptsetup.c:2633 src/cryptsetup.c:3291 -#: src/cryptsetup.c:3300 src/cryptsetup_reencrypt.c:1388 +#: lib/luks1/keymanage.c:228 lib/luks1/keymanage.c:479 +#: lib/luks2/luks2_json_metadata.c:1091 src/cryptsetup.c:1495 +#: src/cryptsetup.c:1621 src/cryptsetup.c:1678 src/cryptsetup.c:1734 +#: src/cryptsetup.c:1801 src/cryptsetup.c:1904 src/cryptsetup.c:1968 +#: src/cryptsetup.c:2198 src/cryptsetup.c:2409 src/cryptsetup.c:2471 +#: src/cryptsetup.c:2537 src/cryptsetup.c:2701 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3386 src/cryptsetup_reencrypt.c:1406 #, c-format msgid "Device %s is not a valid LUKS device." msgstr "Пристрій %s не є коректним пристроєм LUKS." @@ -836,7 +836,7 @@ msgid "Backup file does not contain valid LUKS header." msgstr "Файл резервної копії не містить коректного заголовка LUKS." -#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:549 +#: lib/luks1/keymanage.c:299 lib/luks1/keymanage.c:556 #: lib/luks2/luks2_json_metadata.c:1190 #, c-format msgid "Cannot open header backup file %s." @@ -876,101 +876,101 @@ msgid "Non standard key size, manual repair required." msgstr "Нестандартний розмір ключа, слід виправити дані вручну." -#: lib/luks1/keymanage.c:380 +#: lib/luks1/keymanage.c:385 msgid "Non standard keyslots alignment, manual repair required." msgstr "Нестандартне вирівнювання слотів ключів, слід виправити дані вручну." -#: lib/luks1/keymanage.c:390 +#: lib/luks1/keymanage.c:397 msgid "Repairing keyslots." msgstr "Виправлення слотів ключів." -#: lib/luks1/keymanage.c:409 +#: lib/luks1/keymanage.c:416 #, c-format msgid "Keyslot %i: offset repaired (%u -> %u)." msgstr "Слот ключа %i: виправлено відступ (%u -> %u)." -#: lib/luks1/keymanage.c:417 +#: lib/luks1/keymanage.c:424 #, c-format msgid "Keyslot %i: stripes repaired (%u -> %u)." msgstr "Слот ключа %i: виправлено смужки (%u -> %u)." -#: lib/luks1/keymanage.c:426 +#: lib/luks1/keymanage.c:433 #, c-format msgid "Keyslot %i: bogus partition signature." msgstr "Слот ключа %i: зайвий підпис розділу." -#: lib/luks1/keymanage.c:431 +#: lib/luks1/keymanage.c:438 #, c-format msgid "Keyslot %i: salt wiped." msgstr "Слот ключа %i: дані ініціалізації (сіль) витерто." -#: lib/luks1/keymanage.c:448 +#: lib/luks1/keymanage.c:455 msgid "Writing LUKS header to disk." msgstr "Запис заголовка LUKS на диск." -#: lib/luks1/keymanage.c:453 +#: lib/luks1/keymanage.c:460 msgid "Repair failed." msgstr "Спроба виправлення зазнала невдачі." -#: lib/luks1/keymanage.c:481 lib/luks1/keymanage.c:750 +#: lib/luks1/keymanage.c:488 lib/luks1/keymanage.c:757 #, c-format msgid "Requested LUKS hash %s is not supported." msgstr "Підтримки бажаного хешування LUKS, %s, не передбачено." -#: lib/luks1/keymanage.c:509 src/cryptsetup.c:1145 +#: lib/luks1/keymanage.c:516 src/cryptsetup.c:1188 msgid "No known problems detected for LUKS header." msgstr "У заголовку LUKS не виявлено жодних проблем." -#: lib/luks1/keymanage.c:660 +#: lib/luks1/keymanage.c:667 #, c-format msgid "Error during update of LUKS header on device %s." msgstr "Помилка під час оновлення заголовка LUKS на пристрої %s." -#: lib/luks1/keymanage.c:668 +#: lib/luks1/keymanage.c:675 #, c-format msgid "Error re-reading LUKS header after update on device %s." msgstr "Помилка під час спроби повторного читання заголовка LUKS після оновлення на пристрої %s." -#: lib/luks1/keymanage.c:744 +#: lib/luks1/keymanage.c:751 msgid "Data offset for LUKS header must be either 0 or higher than header size." msgstr "Відступ даних для заголовка LUKS має бути або рівним нулеві, або перевищувати розмір заголовка." -#: lib/luks1/keymanage.c:755 lib/luks1/keymanage.c:825 -#: lib/luks2/luks2_json_format.c:283 lib/luks2/luks2_json_metadata.c:1009 -#: src/cryptsetup.c:2796 +#: lib/luks1/keymanage.c:762 lib/luks1/keymanage.c:832 +#: lib/luks2/luks2_json_format.c:284 lib/luks2/luks2_json_metadata.c:1009 +#: src/cryptsetup.c:2864 msgid "Wrong LUKS UUID format provided." msgstr "Вказано UUID LUKS у помилковому форматі." -#: lib/luks1/keymanage.c:778 +#: lib/luks1/keymanage.c:785 msgid "Cannot create LUKS header: reading random salt failed." msgstr "Не вдалося створити заголовок LUKS: помилка читання випадкових даних для ініціалізації." -#: lib/luks1/keymanage.c:804 +#: lib/luks1/keymanage.c:811 #, c-format msgid "Cannot create LUKS header: header digest failed (using hash %s)." msgstr "Не вдалося створити заголовок LUKS: помилка під час обчислення контрольної суми заголовка (з використанням хешу %s)." -#: lib/luks1/keymanage.c:848 +#: lib/luks1/keymanage.c:855 #, c-format msgid "Key slot %d active, purge first." msgstr "Слот ключа %d є активним. Його слід спочатку спорожнити." -#: lib/luks1/keymanage.c:854 +#: lib/luks1/keymanage.c:861 #, c-format msgid "Key slot %d material includes too few stripes. Header manipulation?" msgstr "Ентропія даних слота ключа %d є надто низькою. Маніпуляції з заголовком?" -#: lib/luks1/keymanage.c:990 +#: lib/luks1/keymanage.c:1002 #, c-format msgid "Cannot open keyslot (using hash %s)." msgstr "Не вдалося відкрити слот ключа (за допомогою хешу %s)." -#: lib/luks1/keymanage.c:1066 +#: lib/luks1/keymanage.c:1080 #, c-format msgid "Key slot %d is invalid, please select keyslot between 0 and %d." msgstr "Слот ключа %d є некоректним, будь ласка, виберіть слот ключа з номером від 0 до %d." -#: lib/luks1/keymanage.c:1084 lib/luks2/luks2_keyslot.c:738 +#: lib/luks1/keymanage.c:1098 lib/luks2/luks2_keyslot.c:738 #, c-format msgid "Cannot wipe device %s." msgstr "Не вдалося витерти пристрій %s." @@ -1006,11 +1006,11 @@ msgid "PBKDF2 hash algorithm %s not available, skipping." msgstr "Засіб створення хешів PBKDF2 за алгоритмом %s недоступний, пропускаємо." -#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1022 +#: lib/tcrypt/tcrypt.c:611 src/cryptsetup.c:1059 msgid "Required kernel crypto interface not available." msgstr "Потрібний для роботи інтерфейс ядра для шифрування недоступний." -#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1024 +#: lib/tcrypt/tcrypt.c:613 src/cryptsetup.c:1061 msgid "Ensure you have algif_skcipher kernel module loaded." msgstr "Переконайтеся, що завантажено модуль ядра algif_skcipher." @@ -1036,146 +1036,160 @@ msgid "This function is not supported without TCRYPT header load." msgstr "Підтримки цієї дії без завантаження заголовка TCRYPT." -#: 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 "Під час обробки підтримуваного основного ключа тому виявлено неочікуваний тип запису метаданих «%u»." -#: 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 "Під час обробки підтримуваного основного ключа тому виявлено неочікуваний рядок («%s»)." -#: 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 "Під час обробки підтримуваного основного ключа тому виявлено неочікуване значення запису метаданих «%u»." -#: lib/bitlk/bitlk.c:479 +#: lib/bitlk/bitlk.c:502 #, c-format msgid "Failed to read BITLK signature from %s." msgstr "Не вдалося прочитати підпис BITLK з %s." -#: lib/bitlk/bitlk.c:485 +#: lib/bitlk/bitlk.c:514 +msgid "Invalid or unknown signature for BITLK device." +msgstr "Некоректний або невідомий підпис для пристрою BITLK." + +#: lib/bitlk/bitlk.c:520 msgid "BITLK version 1 is currently not supported." msgstr "Підтримки BITLK версії 1 у поточній версії не передбачено." -#: lib/bitlk/bitlk.c:491 +#: lib/bitlk/bitlk.c:526 msgid "Invalid or unknown boot signature for BITLK device." msgstr "Некоректний або невідомий підпис завантаження для пристрою BITLK." -#: lib/bitlk/bitlk.c:503 -msgid "Invalid or unknown signature for BITLK device." -msgstr "Некоректний або невідомий підпис для пристрою BITLK." - -#: lib/bitlk/bitlk.c:515 +#: lib/bitlk/bitlk.c:538 #, c-format msgid "Unsupported sector size %." msgstr "Непідтримуваний розмір сектора %." -#: lib/bitlk/bitlk.c:523 +#: lib/bitlk/bitlk.c:546 #, c-format msgid "Failed to read BITLK header from %s." msgstr "Не вдалося прочитати заголовок BITLK з %s." -#: lib/bitlk/bitlk.c:548 +#: lib/bitlk/bitlk.c:571 #, c-format msgid "Failed to read BITLK FVE metadata from %s." msgstr "Не вдалося прочитати метадані FVE BITLK з %s." -#: lib/bitlk/bitlk.c:599 +#: lib/bitlk/bitlk.c:622 msgid "Unknown or unsupported encryption type." msgstr "Невідомий або непідтримуваний тип шифрування." -#: lib/bitlk/bitlk.c:632 +#: lib/bitlk/bitlk.c:655 #, c-format msgid "Failed to read BITLK metadata entries from %s." msgstr "Не вдалося прочитати записи метаданих BITLK з %s." -#: lib/bitlk/bitlk.c:926 +#: lib/bitlk/bitlk.c:897 +#, c-format +msgid "Unexpected metadata entry type '%u' found when parsing external key." +msgstr "Під час обробки зовнішнього ключа виявлено неочікуваний тип запису метаданих «%u»." + +#: lib/bitlk/bitlk.c:912 +#, c-format +msgid "Unexpected metadata entry value '%u' found when parsing external key." +msgstr "Під час обробки зовнішнього ключа виявлено неочікуване значення запису метаданих «%u»." + +#: lib/bitlk/bitlk.c:980 +msgid "Unexpected metadata entry found when parsing startup key." +msgstr "Під час обробки ключа запуску виявлено неочікуваний запис метаданих." + +#: lib/bitlk/bitlk.c:1071 msgid "This operation is not supported." msgstr "Підтримки цієї дії не передбачено." -#: lib/bitlk/bitlk.c:934 +#: lib/bitlk/bitlk.c:1079 msgid "Unexpected key data size." msgstr "Неочікуваний розмір даних ключа." -#: lib/bitlk/bitlk.c:988 +#: lib/bitlk/bitlk.c:1133 msgid "This BITLK device is in an unsupported state and cannot be activated." msgstr "Цей пристрій BITLK перебуває у непідтримуваному стані — його неможливо активувати." -#: lib/bitlk/bitlk.c:994 +#: lib/bitlk/bitlk.c:1139 #, c-format msgid "BITLK devices with type '%s' cannot be activated." msgstr "Пристрої BITLK типу «%s» неможливо активувати." -#: lib/bitlk/bitlk.c:1076 +#: lib/bitlk/bitlk.c:1234 msgid "Activation of partially decrypted BITLK device is not supported." msgstr "Активації частково розшифрованого пристрою BITLK не передбачено." -#: lib/bitlk/bitlk.c:1212 +#: lib/bitlk/bitlk.c:1370 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK IV." msgstr "Не вдалося активувати пристрій — у dm-crypt ядра немає підтримки BITLK IV." -#: lib/bitlk/bitlk.c:1216 +#: lib/bitlk/bitlk.c:1374 msgid "Cannot activate device, kernel dm-crypt is missing support for BITLK Elephant diffuser." msgstr "Не вдалося активувати пристрій — у dm-crypt ядра немає підтримки дифузера Elephant BITLK." -#: lib/verity/verity.c:68 lib/verity/verity.c:171 +#: lib/verity/verity.c:69 lib/verity/verity.c:180 #, c-format msgid "Verity device %s does not use on-disk header." msgstr "На пристрої VERITY %s не використовується вбудований заголовок." -#: lib/verity/verity.c:90 +#: lib/verity/verity.c:91 #, c-format msgid "Device %s is not a valid VERITY device." msgstr "Пристрій %s не є коректним пристроєм VERITY." -#: lib/verity/verity.c:97 +#: lib/verity/verity.c:98 #, c-format msgid "Unsupported VERITY version %d." msgstr "Непідтримувана версія VERITY, %d." -#: lib/verity/verity.c:128 +#: lib/verity/verity.c:129 msgid "VERITY header corrupted." msgstr "Пошкоджено заголовок VERITY." -#: lib/verity/verity.c:165 +#: lib/verity/verity.c:174 #, c-format msgid "Wrong VERITY UUID format provided on device %s." msgstr "На пристрої %s вказано UUID VERITY у помилковому форматі." -#: lib/verity/verity.c:198 +#: lib/verity/verity.c:218 #, c-format msgid "Error during update of verity header on device %s." msgstr "Помилка під час оновлення заголовка verity на пристрої %s." -#: lib/verity/verity.c:256 +#: lib/verity/verity.c:276 msgid "Root hash signature verification is not supported." msgstr "Підтримки перевірки підпису кореневого хешу не передбачено." -#: lib/verity/verity.c:267 +#: lib/verity/verity.c:288 msgid "Errors cannot be repaired with FEC device." msgstr "Помилки не може бути виправлено за допомогою пристрою FEC." -#: lib/verity/verity.c:269 +#: lib/verity/verity.c:290 #, c-format msgid "Found %u repairable errors with FEC device." msgstr "За допомогою пристрою FEC виявлено %u придатних до виправлення помилок." -#: lib/verity/verity.c:308 +#: lib/verity/verity.c:333 msgid "Kernel does not support dm-verity mapping." msgstr "У ядрі не передбачено підтримки прив'язки dm-verity." -#: lib/verity/verity.c:312 +#: lib/verity/verity.c:337 msgid "Kernel does not support dm-verity signature option." msgstr "У ядрі не передбачено підтримки параметра підпису dm-verity." -#: lib/verity/verity.c:323 +#: lib/verity/verity.c:348 msgid "Verity device detected corruption after activation." msgstr "Виявлено пошкодження даних на пристрої перевірки після активації." @@ -1184,41 +1198,37 @@ msgid "Spare area is not zeroed at position %." msgstr "Резервну область не занулено у позиції %." -#: 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 msgid "Device offset overflow." msgstr "Переповнення відступу на пристрої." -#: lib/verity/verity_hash.c:203 +#: lib/verity/verity_hash.c:194 #, c-format msgid "Verification failed at position %." msgstr "Помилка під час перевірки за позицією %." -#: lib/verity/verity_hash.c:276 -msgid "Invalid size parameters for verity device." -msgstr "Некоректні параметри розміру для пристрою перевірки." - -#: 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 msgid "Verification of data area failed." msgstr "Не вдалося перевірити область даних." -#: lib/verity/verity_hash.c:378 +#: lib/verity/verity_hash.c:351 msgid "Verification of root hash failed." msgstr "Не вдалося перевірити кореневий хеш." -#: lib/verity/verity_hash.c:384 +#: lib/verity/verity_hash.c:357 msgid "Input/output error while creating hash area." msgstr "Під час створення області хешу сталася помилка введення або виведення даних." -#: lib/verity/verity_hash.c:386 +#: lib/verity/verity_hash.c:359 msgid "Creation of hash area failed." msgstr "Не вдалося створити область хешу." -#: lib/verity/verity_hash.c:433 +#: lib/verity/verity_hash.c:394 #, c-format msgid "WARNING: Kernel cannot activate device if data block size exceeds page size (%u)." msgstr "Попередження: ядро не зможе задіяти пристрій, якщо розмір блоку перевищуватиме розмір сторінки (%u)." @@ -1227,51 +1237,59 @@ msgid "Failed to allocate RS context." msgstr "Не вдалося розмістити контекст RS." -#: lib/verity/verity_fec.c:146 +#: lib/verity/verity_fec.c:149 msgid "Failed to allocate buffer." msgstr "Не вдалося розмістити у пам'яті буфер." -#: lib/verity/verity_fec.c:156 +#: lib/verity/verity_fec.c:159 #, c-format msgid "Failed to read RS block % byte %d." msgstr "Не вдалося прочитати блок RS %, байт %d." -#: lib/verity/verity_fec.c:169 +#: lib/verity/verity_fec.c:172 #, c-format msgid "Failed to read parity for RS block %." msgstr "Не вдалося прочитати парність для блоку RS %." -#: lib/verity/verity_fec.c:177 +#: lib/verity/verity_fec.c:180 #, c-format msgid "Failed to repair parity for block %." msgstr "Не вдалося відновити парність для блоку %." -#: lib/verity/verity_fec.c:188 +#: lib/verity/verity_fec.c:191 #, c-format msgid "Failed to write parity for RS block %." msgstr "Не вдалося прочитати парність для блоку RS %." -#: lib/verity/verity_fec.c:223 +#: lib/verity/verity_fec.c:227 msgid "Block sizes must match for FEC." msgstr "Розміри блоків для FEC мають бути однаковими." -#: 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 "Некоректна довжина сегмента FEC." + +#: lib/verity/verity_fec.c:302 #, c-format msgid "Failed to determine size for device %s." msgstr "Не вдалося визначити розмір для пристрою %s." -#: lib/integrity/integrity.c:271 lib/integrity/integrity.c:343 +#: lib/integrity/integrity.c:272 lib/integrity/integrity.c:355 msgid "Kernel does not support dm-integrity mapping." msgstr "У ядрі не передбачено підтримки прив'язки dm-integrity." -#: lib/integrity/integrity.c:277 +#: lib/integrity/integrity.c:278 msgid "Kernel does not support dm-integrity fixed metadata alignment." msgstr "У ядрі не передбачено підтримки вирівнювання фіксованих метаданих dm-integrity." +#: 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:967 #: lib/luks2/luks2_json_metadata.c:1252 #, c-format @@ -1294,7 +1312,7 @@ msgid "Requested data offset is too small." msgstr "Вказаний відступ у даних є надто малим." -#: lib/luks2/luks2_json_format.c:271 +#: lib/luks2/luks2_json_format.c:272 #, c-format msgid "WARNING: keyslots area (% bytes) is very small, available LUKS2 keyslot count is very limited.\n" msgstr "Увага: область слоту ключів є надто малою (% байтів), доступна кількість слотів ключів LUKS2 буде дуже обмеженою.\n" @@ -1378,7 +1396,7 @@ msgid "Reencryption in-progress. Cannot deactivate device." msgstr "Виконуємо повторне шифрування. Не можна деактивувати пристрій." -#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3190 +#: lib/luks2/luks2_json_metadata.c:2262 lib/luks2/luks2_reencrypt.c:3206 #, c-format msgid "Failed to replace suspended device %s with dm-error target." msgstr "Не вдалося замінити пристрій %s, роботу якого призупинено, ціллю dm-error." @@ -1487,7 +1505,7 @@ #: 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:3046 msgid "Failed to initialize old segment storage wrapper." msgstr "Не вдалося ініціалізувати обгортку старого сховища сегментів." @@ -1499,7 +1517,7 @@ msgid "Failed to read checksums for current hotzone." msgstr "Не вдалося прочитати контрольні суми для поточної «гарячої» ділянки." -#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3038 +#: lib/luks2/luks2_reencrypt.c:1347 lib/luks2/luks2_reencrypt.c:3054 #, c-format msgid "Failed to read hotzone area starting at %." msgstr "Не вдалося прочитати «гарячу» ділянку, починаючи з %." @@ -1542,209 +1560,209 @@ msgid "Failed to set new keyslots area size." msgstr "Не вдалося встановити розмір області нових слотів ключів." -#: lib/luks2/luks2_reencrypt.c:2318 +#: lib/luks2/luks2_reencrypt.c:2320 #, c-format msgid "Data shift is not aligned to requested encryption sector size (% bytes)." msgstr "Зміщення даних не вирівняно до запитаного розміру сектора для шифрування (% байтів)." -#: lib/luks2/luks2_reencrypt.c:2339 +#: lib/luks2/luks2_reencrypt.c:2341 #, c-format msgid "Data device is not aligned to requested encryption sector size (% bytes)." msgstr "Пристрій зберігання даних не вирівняно до запитаного розміру сектора для шифрування (% байтів)." -#: lib/luks2/luks2_reencrypt.c:2360 +#: lib/luks2/luks2_reencrypt.c:2362 #, c-format msgid "Data shift (% sectors) is less than future data offset (% 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:2368 lib/luks2/luks2_reencrypt.c:2795 +#: lib/luks2/luks2_reencrypt.c:2816 #, c-format msgid "Failed to open %s in exclusive mode (already mapped or mounted)." msgstr "Не вдалося відкрити %s в ексклюзивному режимі (вже пов'язано або змонтовано)." -#: lib/luks2/luks2_reencrypt.c:2534 +#: lib/luks2/luks2_reencrypt.c:2536 msgid "Device not marked for LUKS2 reencryption." msgstr "Пристрій не позначено для повторного шифрування LUKS2." -#: lib/luks2/luks2_reencrypt.c:2540 lib/luks2/luks2_reencrypt.c:3295 +#: lib/luks2/luks2_reencrypt.c:2542 lib/luks2/luks2_reencrypt.c:3311 msgid "Failed to load LUKS2 reencryption context." msgstr "Не вдалося завантажити контекст повторного шифрування LUKS2." -#: lib/luks2/luks2_reencrypt.c:2619 +#: lib/luks2/luks2_reencrypt.c:2621 msgid "Failed to get reencryption state." msgstr "Не вдалося отримати стан повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:2623 +#: lib/luks2/luks2_reencrypt.c:2625 msgid "Device is not in reencryption." msgstr "Пристрій не перебуває у повторному шифруванні." -#: lib/luks2/luks2_reencrypt.c:2630 +#: lib/luks2/luks2_reencrypt.c:2632 msgid "Reencryption process is already running." msgstr "Процес повторного шифрування вже виконується." -#: lib/luks2/luks2_reencrypt.c:2632 +#: lib/luks2/luks2_reencrypt.c:2634 msgid "Failed to acquire reencryption lock." msgstr "Не вдалося створити блокування для повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:2650 +#: lib/luks2/luks2_reencrypt.c:2652 msgid "Cannot proceed with reencryption. Run reencryption recovery first." msgstr "Продовження повторного шифрування неможливе. Спочатку слід виконати відновлення повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:2750 +#: lib/luks2/luks2_reencrypt.c:2766 msgid "Active device size and requested reencryption size don't match." msgstr "Не збігаються розмір активного пристрою і запитаний розмір повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:2764 +#: lib/luks2/luks2_reencrypt.c:2780 msgid "Illegal device size requested in reencryption parameters." msgstr "У параметрах повторного шифрування вказано некоректний розмір пристрою." -#: lib/luks2/luks2_reencrypt.c:2834 +#: lib/luks2/luks2_reencrypt.c:2850 msgid "Reencryption in-progress. Cannot perform recovery." msgstr "Виконується повторне шифрування. Неможливо виконати відновлення." -#: lib/luks2/luks2_reencrypt.c:2906 +#: lib/luks2/luks2_reencrypt.c:2922 msgid "LUKS2 reencryption already initialized in metadata." msgstr "Повторне шифрування LUKS2 вже ініційовано у метаданих." -#: lib/luks2/luks2_reencrypt.c:2913 +#: lib/luks2/luks2_reencrypt.c:2929 msgid "Failed to initialize LUKS2 reencryption in metadata." msgstr "Не вдалося ініціалізувати повторне шифрування LUKS2 лише у метаданих." -#: lib/luks2/luks2_reencrypt.c:3004 +#: lib/luks2/luks2_reencrypt.c:3020 msgid "Failed to set device segments for next reencryption hotzone." msgstr "Не вдалося встановити сегменти пристрою для наступної «гарячої» ділянки повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:3046 +#: lib/luks2/luks2_reencrypt.c:3062 msgid "Failed to write reencryption resilience metadata." msgstr "Не вдалося записати метадані стійкості для повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:3053 +#: lib/luks2/luks2_reencrypt.c:3069 msgid "Decryption failed." msgstr "Помилка розшифрування." -#: lib/luks2/luks2_reencrypt.c:3058 +#: lib/luks2/luks2_reencrypt.c:3074 #, c-format msgid "Failed to write hotzone area starting at %." msgstr "Не вдалося записати «гарячу» ділянку, починаючи з %." -#: lib/luks2/luks2_reencrypt.c:3063 +#: lib/luks2/luks2_reencrypt.c:3079 msgid "Failed to sync data." msgstr "Не вдалося синхронізувати дані." -#: lib/luks2/luks2_reencrypt.c:3071 +#: lib/luks2/luks2_reencrypt.c:3087 msgid "Failed to update metadata after current reencryption hotzone completed." msgstr "Не вдалося оновити метадані після завершення обробки поточної «гарячої» зони повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:3138 +#: lib/luks2/luks2_reencrypt.c:3154 msgid "Failed to write LUKS2 metadata." msgstr "Не вдалося записати метадані LUKS2." -#: lib/luks2/luks2_reencrypt.c:3161 +#: lib/luks2/luks2_reencrypt.c:3177 msgid "Failed to wipe backup segment data." msgstr "Не вдалося витерти дані резервного сегмента." -#: lib/luks2/luks2_reencrypt.c:3174 +#: lib/luks2/luks2_reencrypt.c:3190 msgid "Failed to disable reencryption requirement flag." msgstr "Не вдалося вимкнути прапорець вимоги повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:3182 +#: lib/luks2/luks2_reencrypt.c:3198 #, c-format msgid "Fatal error while reencrypting chunk starting at %, % sectors long." msgstr "Критична помилка під час повторного шифрування фрагмента, починаючи з %, довжиною у % секторів." -#: lib/luks2/luks2_reencrypt.c:3191 +#: lib/luks2/luks2_reencrypt.c:3207 msgid "Do not resume the device unless replaced with error target manually." msgstr "Не відновлюйте пристрій, якщо не заміните вручну пристрій призначення для помилок." -#: lib/luks2/luks2_reencrypt.c:3240 +#: lib/luks2/luks2_reencrypt.c:3256 msgid "Cannot proceed with reencryption. Unexpected reencryption status." msgstr "Не вдалося виконати повторне шифрування. Неочікуваний стан засобу повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:3246 +#: lib/luks2/luks2_reencrypt.c:3262 msgid "Missing or invalid reencrypt context." msgstr "Не вказано контекст повторного шифрування або вказано некоректний контекст." -#: lib/luks2/luks2_reencrypt.c:3253 +#: lib/luks2/luks2_reencrypt.c:3269 msgid "Failed to initialize reencryption device stack." msgstr "Не вдалося ініціалізувати стос пристроїв повторного шифрування." -#: lib/luks2/luks2_reencrypt.c:3272 lib/luks2/luks2_reencrypt.c:3308 +#: lib/luks2/luks2_reencrypt.c:3288 lib/luks2/luks2_reencrypt.c:3324 msgid "Failed to update reencryption context." msgstr "Не вдалося оновити контекст повторного шифрування." -#: lib/luks2/luks2_token.c:262 +#: lib/luks2/luks2_token.c:263 msgid "No free token slot." msgstr "Немає вільного слоту ключів." -#: lib/luks2/luks2_token.c:269 +#: lib/luks2/luks2_token.c:270 #, c-format msgid "Failed to create builtin token %s." msgstr "Не вдалося створити вбудований ключ %s." -#: src/cryptsetup.c:166 +#: src/cryptsetup.c:198 msgid "Can't do passphrase verification on non-tty inputs." msgstr "Перевірку паролів не можна виконувати на основі вхідних даних, які надходять не з tty." -#: src/cryptsetup.c:229 +#: src/cryptsetup.c:261 msgid "Keyslot encryption parameters can be set only for LUKS2 device." msgstr "Параметри шифрування слоту ключів можна встановлювати лише для пристроїв LUKS2." -#: src/cryptsetup.c:259 src/cryptsetup.c:971 src/cryptsetup.c:1281 -#: src/cryptsetup.c:3157 src/cryptsetup_reencrypt.c:723 -#: src/cryptsetup_reencrypt.c:793 +#: src/cryptsetup.c:291 src/cryptsetup.c:1006 src/cryptsetup.c:1339 +#: src/cryptsetup.c:3245 src/cryptsetup_reencrypt.c:741 +#: src/cryptsetup_reencrypt.c:811 msgid "No known cipher specification pattern detected." msgstr "Не виявлено жодного відомого зразка специфікації шифрування." -#: src/cryptsetup.c:267 +#: src/cryptsetup.c:299 msgid "WARNING: The --hash parameter is being ignored in plain mode with keyfile specified.\n" msgstr "Попередження: параметр --hash у простому режимі із вказаним файлом ключа ігнорується.\n" -#: src/cryptsetup.c:275 +#: 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 "Попередження: параметр --keyfile-size проігноровано, розмір прочитаних даних збігається із розміром ключа шифрування.\n" -#: src/cryptsetup.c:315 +#: src/cryptsetup.c:347 #, c-format msgid "Detected device signature(s) on %s. Proceeding further may damage existing data." msgstr "На %s виявлено підписи пристроїв. Подальша обробка може пошкодити наявні дані." -#: src/cryptsetup.c:321 src/cryptsetup.c:1102 src/cryptsetup.c:1154 -#: src/cryptsetup.c:1258 src/cryptsetup.c:1331 src/cryptsetup.c:1986 -#: src/cryptsetup.c:2694 src/cryptsetup.c:2817 src/integritysetup.c:233 +#: src/cryptsetup.c:353 src/cryptsetup.c:1145 src/cryptsetup.c:1197 +#: src/cryptsetup.c:1316 src/cryptsetup.c:1389 src/cryptsetup.c:2036 +#: src/cryptsetup.c:2762 src/cryptsetup.c:2886 src/integritysetup.c:242 msgid "Operation aborted.\n" msgstr "Дію перервано.\n" -#: src/cryptsetup.c:389 +#: src/cryptsetup.c:421 msgid "Option --key-file is required." msgstr "Слід вказати параметр --key-file." -#: src/cryptsetup.c:442 +#: src/cryptsetup.c:474 msgid "Enter VeraCrypt PIM: " msgstr "Введіть PIM VeraCrypt: " -#: src/cryptsetup.c:451 +#: src/cryptsetup.c:483 msgid "Invalid PIM value: parse error." msgstr "Некоректне значення PIM: помилка обробки." -#: src/cryptsetup.c:454 +#: src/cryptsetup.c:486 msgid "Invalid PIM value: 0." msgstr "Некоректне значення PIM: 0." -#: src/cryptsetup.c:457 +#: src/cryptsetup.c:489 msgid "Invalid PIM value: outside of range." msgstr "Некоректне значення PIM: поза межами діапазону." -#: src/cryptsetup.c:480 +#: src/cryptsetup.c:512 msgid "No device header detected with this passphrase." msgstr "Для цього пароля не виявлено заголовка пристрою." -#: src/cryptsetup.c:549 +#: src/cryptsetup.c:582 #, c-format msgid "Device %s is not a valid BITLK device." msgstr "Пристрій %s не є коректним пристроєм BITLK." -#: src/cryptsetup.c:584 +#: src/cryptsetup.c:617 msgid "" "Header dump with volume key is sensitive information\n" "which allows access to encrypted partition without passphrase.\n" @@ -1755,68 +1773,68 @@ "без пароля. Цей дамп слід зберігати у зашифрованому форматі\n" "у безпечному місці." -#: src/cryptsetup.c:681 +#: src/cryptsetup.c:714 #, c-format msgid "Device %s is still active and scheduled for deferred removal.\n" msgstr "Пристрій %s усе ще є активним, його заплановано для відкладеного вилучення.\n" -#: src/cryptsetup.c:709 +#: src/cryptsetup.c:742 msgid "Resize of active device requires volume key in keyring but --disable-keyring option is set." msgstr "Зміна розмірів активного пристрою потребує наявності ключа тому у сховищі ключів, але вказано параметр --disable-keyring." -#: src/cryptsetup.c:850 +#: src/cryptsetup.c:885 msgid "Benchmark interrupted." msgstr "Тестування перервано." -#: src/cryptsetup.c:871 +#: src/cryptsetup.c:906 #, c-format msgid "PBKDF2-%-9s N/A\n" msgstr "PBKDF2-%-9s н/д\n" -#: src/cryptsetup.c:873 +#: src/cryptsetup.c:908 #, c-format msgid "PBKDF2-%-9s %7u iterations per second for %zu-bit key\n" msgstr "PBKDF2-%-9s %7u ітерацій за секунду для %zu-бітового ключа\n" -#: src/cryptsetup.c:887 +#: src/cryptsetup.c:922 #, c-format msgid "%-10s N/A\n" msgstr "%-10s н/д\n" -#: src/cryptsetup.c:889 +#: 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 "%-10s %4u ітерацій, пам'ять: %5u, %1u паралельних потоків (процесорів) для %zu-бітового ключа (запит на %u мс часу)\n" -#: src/cryptsetup.c:913 +#: src/cryptsetup.c:948 msgid "Result of benchmark is not reliable." msgstr "Результат тестування є ненадійним." -#: src/cryptsetup.c:963 +#: src/cryptsetup.c:998 msgid "# Tests are approximate using memory only (no storage IO).\n" msgstr "# Наближені значення під час перевірки визначаються лише за допомогою оперативної пам’яті (без запису на диск).\n" #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:983 +#: src/cryptsetup.c:1018 #, c-format msgid "#%*s Algorithm | Key | Encryption | Decryption\n" msgstr "№%*s Алгоритм | Ключ | Шифрування | Розшифрування\n" -#: src/cryptsetup.c:987 +#: src/cryptsetup.c:1022 #, c-format msgid "Cipher %s (with %i bits key) is not available." msgstr "Шифрування %s (розмір ключа — %i бітів) є недоступним." #. TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. -#: src/cryptsetup.c:1006 +#: src/cryptsetup.c:1041 msgid "# Algorithm | Key | Encryption | Decryption\n" msgstr "№ Алгоритм | Ключ | Шифрування | Розшифрування\n" -#: src/cryptsetup.c:1015 +#: src/cryptsetup.c:1052 msgid "N/A" msgstr "н/д" -#: src/cryptsetup.c:1095 +#: src/cryptsetup.c:1138 msgid "" "Seems device does not require reencryption recovery.\n" "Do you want to proceed anyway?" @@ -1824,19 +1842,19 @@ "Здається, пристрій не потребує відновлення повторного шифрування.\n" "Хочете виконати цю дію попри це?" -#: src/cryptsetup.c:1101 +#: src/cryptsetup.c:1144 msgid "Really proceed with LUKS2 reencryption recovery?" msgstr "Ви справді хочете продовжити процедуру відновлення повторного шифрування LUKS2?" -#: src/cryptsetup.c:1110 +#: src/cryptsetup.c:1153 msgid "Enter passphrase for reencryption recovery: " msgstr "Вкажіть пароль для відновлення повторного шифрування: " -#: src/cryptsetup.c:1153 +#: src/cryptsetup.c:1196 msgid "Really try to repair LUKS device header?" msgstr "Спробувати відновити заголовок пристрою LUKS?" -#: src/cryptsetup.c:1172 src/integritysetup.c:146 +#: src/cryptsetup.c:1215 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" @@ -1844,104 +1862,108 @@ "Витираємо пристрій для ініціалізації контрольних сум для цілісності.\n" "Ви можете перервати цей процес натисканням комбінації клавіш CTRL+C (решта невитертого пристрою міститиме некоректну контрольну суму).\n" -#: src/cryptsetup.c:1194 src/integritysetup.c:168 +#: src/cryptsetup.c:1237 src/integritysetup.c:179 #, c-format msgid "Cannot deactivate temporary device %s." msgstr "Не можна скасувати активацію тимчасового пристрою %s." -#: src/cryptsetup.c:1243 +#: src/cryptsetup.c:1301 msgid "Integrity option can be used only for LUKS2 format." msgstr "Параметр цілісності може бути використано лише для формату LUKS2." -#: src/cryptsetup.c:1248 src/cryptsetup.c:1308 +#: src/cryptsetup.c:1306 src/cryptsetup.c:1366 msgid "Unsupported LUKS2 metadata size options." msgstr "Непідтримувані параметри розміру метаданих LUKS2." -#: src/cryptsetup.c:1265 +#: src/cryptsetup.c:1315 +msgid "Header file does not exist, do you want to create it?" +msgstr "Файла заголовка не існує. Хочете його створити?" + +#: src/cryptsetup.c:1323 #, c-format msgid "Cannot create header file %s." msgstr "Не вдалося створити файл заголовка %s." -#: src/cryptsetup.c:1288 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:1346 src/integritysetup.c:205 src/integritysetup.c:213 +#: src/integritysetup.c:222 src/integritysetup.c:295 src/integritysetup.c:303 +#: src/integritysetup.c:313 msgid "No known integrity specification pattern detected." msgstr "Не виявлено жодного відомого зразка специфікації цілісності." -#: src/cryptsetup.c:1301 +#: src/cryptsetup.c:1359 #, c-format msgid "Cannot use %s as on-disk header." msgstr "Не можна використовувати %s як заголовок на диску." -#: src/cryptsetup.c:1325 src/integritysetup.c:227 +#: src/cryptsetup.c:1383 src/integritysetup.c:236 #, c-format msgid "This will overwrite data on %s irrevocably." msgstr "Дані на %s буде перезаписано без можливості відновлення." -#: src/cryptsetup.c:1366 src/cryptsetup.c:1700 src/cryptsetup.c:1767 -#: src/cryptsetup.c:1869 src/cryptsetup.c:1935 src/cryptsetup_reencrypt.c:553 +#: src/cryptsetup.c:1416 src/cryptsetup.c:1750 src/cryptsetup.c:1817 +#: src/cryptsetup.c:1919 src/cryptsetup.c:1985 src/cryptsetup_reencrypt.c:571 msgid "Failed to set pbkdf parameters." msgstr "Не вдалося встановити параметри pbkdf." -#: src/cryptsetup.c:1451 +#: src/cryptsetup.c:1501 msgid "Reduced data offset is allowed only for detached LUKS header." msgstr "Зменшений відступ даних можна використовувати лише для від’єднаних заголовків LUKS." -#: src/cryptsetup.c:1462 src/cryptsetup.c:1773 +#: src/cryptsetup.c:1512 src/cryptsetup.c:1823 msgid "Cannot determine volume key size for LUKS without keyslots, please use --key-size option." msgstr "Неможливо визначити розмір ключа тому для LUKS без слотів ключів. Будь ласка, скористайтеся параметром --key-size." -#: src/cryptsetup.c:1500 +#: src/cryptsetup.c:1550 msgid "Device activated but cannot make flags persistent." msgstr "Пристрій задіяно, але не вдалося зробити прапорці сталими." -#: src/cryptsetup.c:1581 src/cryptsetup.c:1651 +#: src/cryptsetup.c:1631 src/cryptsetup.c:1701 #, c-format msgid "Keyslot %d is selected for deletion." msgstr "Слот ключа %d позначено для вилучення." -#: src/cryptsetup.c:1593 src/cryptsetup.c:1654 +#: src/cryptsetup.c:1643 src/cryptsetup.c:1704 msgid "This is the last keyslot. Device will become unusable after purging this key." msgstr "Це останній слот ключа. Пристрій стане непридатним для використання після спорожнення цього ключа." -#: src/cryptsetup.c:1594 +#: src/cryptsetup.c:1644 msgid "Enter any remaining passphrase: " msgstr "Введіть будь-який інший пароль: " -#: src/cryptsetup.c:1595 src/cryptsetup.c:1656 +#: src/cryptsetup.c:1645 src/cryptsetup.c:1706 msgid "Operation aborted, the keyslot was NOT wiped.\n" msgstr "Дію перервано, слот ключів НЕ витерто.\n" -#: src/cryptsetup.c:1633 +#: src/cryptsetup.c:1683 msgid "Enter passphrase to be deleted: " msgstr "Введіть пароль, який слід вилучити: " -#: src/cryptsetup.c:1714 src/cryptsetup.c:1788 src/cryptsetup.c:1822 +#: src/cryptsetup.c:1764 src/cryptsetup.c:1838 src/cryptsetup.c:1872 msgid "Enter new passphrase for key slot: " msgstr "Введіть новий пароль для слота ключа: " -#: src/cryptsetup.c:1805 src/cryptsetup_reencrypt.c:1343 +#: src/cryptsetup.c:1855 src/cryptsetup_reencrypt.c:1361 #, c-format msgid "Enter any existing passphrase: " msgstr "Введіть будь-який пароль: " -#: src/cryptsetup.c:1873 +#: src/cryptsetup.c:1923 msgid "Enter passphrase to be changed: " msgstr "Введіть пароль, який слід змінити: " -#: src/cryptsetup.c:1889 src/cryptsetup_reencrypt.c:1329 +#: src/cryptsetup.c:1939 src/cryptsetup_reencrypt.c:1347 msgid "Enter new passphrase: " msgstr "Введіть новий пароль: " -#: src/cryptsetup.c:1939 +#: src/cryptsetup.c:1989 msgid "Enter passphrase for keyslot to be converted: " msgstr "Вкажіть пароль для слоту ключа, який буде перетворено: " -#: src/cryptsetup.c:1963 +#: src/cryptsetup.c:2013 msgid "Only one device argument for isLuks operation is supported." msgstr "У команді isLuks можна використовувати лише один аргумент назви пристрою." -#: src/cryptsetup.c:2013 +#: src/cryptsetup.c:2063 msgid "" "The header dump with volume key is sensitive information\n" "that allows access to encrypted partition without a passphrase.\n" @@ -1952,12 +1974,12 @@ "без пароля. Цей дамп слід зберігати у зашифрованому форматі\n" "у безпечному місці." -#: src/cryptsetup.c:2078 +#: src/cryptsetup.c:2128 #, c-format msgid "Keyslot %d does not contain unbound key." msgstr "Слот ключа %d не містить непов'язаного ключа." -#: src/cryptsetup.c:2084 +#: src/cryptsetup.c:2134 msgid "" "The header dump with unbound key is sensitive information.\n" "This dump should be stored encrypted in a safe place." @@ -1965,30 +1987,40 @@ "Дамп заголовка з непов'язаним ключем є конфіденційними даними.\n" "Цей дамп слід зберігати у зашифрованому форматі у безпечному місці." -#: src/cryptsetup.c:2219 src/cryptsetup.c:2240 +#: src/cryptsetup.c:2223 src/cryptsetup.c:2252 +#, c-format +msgid "%s is not active %s device name." +msgstr "%s не є назвою активного пристрою %s." + +#: src/cryptsetup.c:2247 +#, c-format +msgid "%s is not active LUKS device name or header is missing." +msgstr "%s не є назвою активного пристрою LUKS або пропущено заголовок." + +#: src/cryptsetup.c:2285 src/cryptsetup.c:2306 msgid "Option --header-backup-file is required." msgstr "Слід вказати параметр --header-backup-file." -#: src/cryptsetup.c:2270 +#: src/cryptsetup.c:2336 #, c-format msgid "%s is not cryptsetup managed device." msgstr "%s не є керованим cryptsetup пристроєм." -#: src/cryptsetup.c:2281 +#: src/cryptsetup.c:2347 #, c-format msgid "Refresh is not supported for device type %s" msgstr "Підтримки дії з оновлення для пристрою типу %s не передбачено." -#: src/cryptsetup.c:2323 +#: src/cryptsetup.c:2389 #, c-format msgid "Unrecognized metadata device type %s." msgstr "Нерозпізнаний тип пристрою метаданих, %s." -#: src/cryptsetup.c:2326 +#: src/cryptsetup.c:2392 msgid "Command requires device and mapped name as arguments." msgstr "Аргументами команди мають бути назва пристрою та призначена до нього назва." -#: src/cryptsetup.c:2348 +#: src/cryptsetup.c:2414 #, c-format msgid "" "This operation will erase all keyslots on device %s.\n" @@ -1997,95 +2029,95 @@ "У результаті виконання цієї операції буде витерто усі слоти ключів на пристрої %s.\n" "Після виконання цієї дії пристроєм не можна буде скористатися." -#: src/cryptsetup.c:2355 +#: src/cryptsetup.c:2421 msgid "Operation aborted, keyslots were NOT wiped.\n" msgstr "Дію перервано, слоти ключів НЕ витерто.\n" -#: src/cryptsetup.c:2392 +#: src/cryptsetup.c:2460 msgid "Invalid LUKS type, only luks1 and luks2 are supported." msgstr "Некоректний тип LUKS. Передбачено підтримку лише luks1 і luks2." -#: src/cryptsetup.c:2410 +#: src/cryptsetup.c:2478 #, c-format msgid "Device is already %s type." msgstr "Пристрій вже належить до типу %s." -#: src/cryptsetup.c:2415 +#: src/cryptsetup.c:2483 #, c-format msgid "This operation will convert %s to %s format.\n" msgstr "Ця дія перетворить %s до формату %s.\n" -#: src/cryptsetup.c:2421 +#: src/cryptsetup.c:2489 msgid "Operation aborted, device was NOT converted.\n" msgstr "Дію перервано, дані пристрою НЕ перетворено.\n" -#: src/cryptsetup.c:2461 +#: src/cryptsetup.c:2529 msgid "Option --priority, --label or --subsystem is missing." msgstr "Пропущено параметр --priority, --label або --subsystem." -#: src/cryptsetup.c:2495 src/cryptsetup.c:2528 src/cryptsetup.c:2551 +#: src/cryptsetup.c:2563 src/cryptsetup.c:2596 src/cryptsetup.c:2619 #, c-format msgid "Token %d is invalid." msgstr "Ключ %d є некоректним." -#: src/cryptsetup.c:2498 src/cryptsetup.c:2554 +#: src/cryptsetup.c:2566 src/cryptsetup.c:2622 #, c-format msgid "Token %d in use." msgstr "Ключ %d використовується." -#: src/cryptsetup.c:2505 +#: src/cryptsetup.c:2573 #, c-format msgid "Failed to add luks2-keyring token %d." msgstr "Не вдалося додати ключ %d зі сховища ключів luks2." -#: src/cryptsetup.c:2514 src/cryptsetup.c:2576 +#: src/cryptsetup.c:2582 src/cryptsetup.c:2644 #, c-format msgid "Failed to assign token %d to keyslot %d." msgstr "Не вдалося прив'язати ключ %d до слоту ключа %d." -#: src/cryptsetup.c:2531 +#: src/cryptsetup.c:2599 #, c-format msgid "Token %d is not in use." msgstr "Ключ %d не використовується." -#: src/cryptsetup.c:2566 +#: src/cryptsetup.c:2634 msgid "Failed to import token from file." msgstr "Не вдалося імпортувати ключ з файла." -#: src/cryptsetup.c:2591 +#: src/cryptsetup.c:2659 #, c-format msgid "Failed to get token %d for export." msgstr "Не вдалося отримати ключ %d для експортування." -#: src/cryptsetup.c:2606 +#: src/cryptsetup.c:2674 msgid "--key-description parameter is mandatory for token add action." msgstr "Параметр --key-description є обов'язковим для дій із додавання ключів." -#: src/cryptsetup.c:2612 src/cryptsetup.c:2620 +#: src/cryptsetup.c:2680 src/cryptsetup.c:2688 msgid "Action requires specific token. Use --token-id parameter." msgstr "Для виконання дії потрібен специфічний ключ. Скористайтеся параметром --token-id." -#: src/cryptsetup.c:2625 +#: src/cryptsetup.c:2693 #, c-format msgid "Invalid token operation %s." msgstr "Некоректна дія з ключем %s." -#: src/cryptsetup.c:2680 +#: src/cryptsetup.c:2748 #, c-format msgid "Auto-detected active dm device '%s' for data device %s.\n" msgstr "Автоматично виявлено активний пристрій dm «%s» для пристрою даних %s.\n" -#: src/cryptsetup.c:2684 +#: src/cryptsetup.c:2752 #, c-format msgid "Device %s is not a block device.\n" msgstr "Пристрій %s не є блоковим пристроєм.\n" -#: src/cryptsetup.c:2686 +#: src/cryptsetup.c:2754 #, c-format msgid "Failed to auto-detect device %s holders." msgstr "Не вдалося автоматично визначити утримувачів пристрою %s." -#: src/cryptsetup.c:2688 +#: src/cryptsetup.c:2756 #, c-format msgid "" "Unable to decide if device %s is activated or not.\n" @@ -2098,233 +2130,242 @@ "Таке шифрування може призвести до пошкодження даних, якщо пристрій задіяно.\n" "Щоб запустити повторне шифрування у режимі без від'єднання, скористайтеся параметром --active-name.\n" -#: src/cryptsetup.c:2768 +#: src/cryptsetup.c:2836 msgid "Invalid LUKS device type." msgstr "Некоректний тип пристрою LUKS." -#: src/cryptsetup.c:2773 +#: src/cryptsetup.c:2841 msgid "Encryption without detached header (--header) is not possible without data device size reduction (--reduce-device-size)." msgstr "Шифрування без від'єднаного заголовка (--header) є неможливим без зменшення розміру пристрою зберігання даних (--reduce-device-size)." -#: src/cryptsetup.c:2778 +#: src/cryptsetup.c:2846 msgid "Requested data offset must be less than or equal to half of --reduce-device-size parameter." msgstr "Вказаний зсув даних має бути меншим або рівним половині значення параметра --reduce-device-size." -#: src/cryptsetup.c:2787 +#: src/cryptsetup.c:2855 #, c-format msgid "Adjusting --reduce-device-size value to twice the --offset % (sectors).\n" msgstr "Коригуємо значення --reduce-device-size до подвійного значення --offset % (у секторах).\n" -#: src/cryptsetup.c:2791 +#: src/cryptsetup.c:2859 msgid "Encryption is supported only for LUKS2 format." msgstr "Підтримку шифрування передбачено лише для формату LUKS2." -#: src/cryptsetup.c:2813 +#: src/cryptsetup.c:2882 #, c-format msgid "Detected LUKS device on %s. Do you want to encrypt that LUKS device again?" msgstr "Виявлено пристрій LUKS на %s. Хочете зашифрувати цей пристрій LUKS знову?" -#: src/cryptsetup.c:2828 +#: src/cryptsetup.c:2900 #, c-format msgid "Temporary header file %s already exists. Aborting." msgstr "Файл тимчасового заголовка %s вже існує. Перериваємо обробку." -#: src/cryptsetup.c:2830 src/cryptsetup.c:2837 +#: src/cryptsetup.c:2902 src/cryptsetup.c:2909 #, c-format msgid "Cannot create temporary header file %s." msgstr "Не вдалося створити файл тимчасового заголовка %s." -#: src/cryptsetup.c:2901 +#: src/cryptsetup.c:2976 #, c-format msgid "%s/%s is now active and ready for online encryption.\n" msgstr "%s/%s задіяно, система готова до інтерактивного шифрування.\n" -#: src/cryptsetup.c:3065 src/cryptsetup.c:3071 +#: src/cryptsetup.c:3013 +msgid "LUKS2 decryption is supported with detached header device only." +msgstr "Підтримку розшифровування LUKS2 передбачено лише для пристроїв із від'єднаним заголовком." + +#: src/cryptsetup.c:3146 src/cryptsetup.c:3152 msgid "Not enough free keyslots for reencryption." msgstr "Недостатньо вільних слотів ключів для повторного шифрування." -#: src/cryptsetup.c:3091 src/cryptsetup_reencrypt.c:1294 +#: src/cryptsetup.c:3172 src/cryptsetup_reencrypt.c:1312 msgid "Key file can be used only with --key-slot or with exactly one key slot active." msgstr "Файлом ключа можна користуватися лише з --key-slot, або якщо активним є лише один слот ключа." -#: src/cryptsetup.c:3100 src/cryptsetup_reencrypt.c:1341 -#: src/cryptsetup_reencrypt.c:1352 +#: src/cryptsetup.c:3181 src/cryptsetup_reencrypt.c:1359 +#: src/cryptsetup_reencrypt.c:1370 #, c-format msgid "Enter passphrase for key slot %d: " msgstr "Вкажіть пароль для слоту ключа %d: " -#: src/cryptsetup.c:3108 +#: src/cryptsetup.c:3190 #, c-format msgid "Enter passphrase for key slot %u: " msgstr "Вкажіть пароль для слоту ключа %u: " -#: src/cryptsetup.c:3283 +#: src/cryptsetup.c:3236 +#, c-format +msgid "Switching data encryption cipher to %s.\n" +msgstr "Перемикаємося на шифрування даних %s.\n" + +#: src/cryptsetup.c:3369 msgid "Command requires device as argument." msgstr "Комарні слід передати аргумент пристрою." -#: src/cryptsetup.c:3305 +#: src/cryptsetup.c:3391 msgid "Only LUKS2 format is currently supported. Please use cryptsetup-reencrypt tool for LUKS1." msgstr "У поточній версії передбачено підтримку лише формату LUKS2. Для роботи з LUKS1, будь ласка, скористайтеся програмою cryptsetup-reencrypt." -#: src/cryptsetup.c:3317 +#: src/cryptsetup.c:3403 msgid "Legacy offline reencryption already in-progress. Use cryptsetup-reencrypt utility." msgstr "Вже виконується повторне шифрування з від'єднанням у застарілому режимі. Скористайтеся програмою cryptsetup-reencrypt." -#: src/cryptsetup.c:3327 src/cryptsetup_reencrypt.c:178 +#: src/cryptsetup.c:3413 src/cryptsetup_reencrypt.c:196 msgid "Reencryption of device with integrity profile is not supported." msgstr "Підтримки повторного шифрування пристрою із профілем цілісності не передбачено." -#: src/cryptsetup.c:3335 +#: src/cryptsetup.c:3421 msgid "LUKS2 reencryption already initialized. Aborting operation." msgstr "Вже ініційовано повторне шифрування LUKS2. Перериваємо виконання дії." -#: src/cryptsetup.c:3339 +#: src/cryptsetup.c:3425 msgid "LUKS2 device is not in reencryption." msgstr "Пристрій LUKS2 не перебуває у стані повторного шифрування." -#: src/cryptsetup.c:3366 +#: src/cryptsetup.c:3452 msgid " [--type ] []" msgstr "<пристрій> [--type <тип>] [<назва>]" -#: src/cryptsetup.c:3366 src/veritysetup.c:399 src/integritysetup.c:480 +#: src/cryptsetup.c:3452 src/veritysetup.c:408 src/integritysetup.c:493 msgid "open device as " msgstr "відкрити пристрій як <назва>" -#: src/cryptsetup.c:3367 src/cryptsetup.c:3368 src/cryptsetup.c:3369 -#: src/veritysetup.c:400 src/veritysetup.c:401 src/integritysetup.c:481 -#: src/integritysetup.c:482 +#: src/cryptsetup.c:3453 src/cryptsetup.c:3454 src/cryptsetup.c:3455 +#: src/veritysetup.c:409 src/veritysetup.c:410 src/integritysetup.c:494 +#: src/integritysetup.c:495 msgid "" msgstr "<назва>" -#: src/cryptsetup.c:3367 src/veritysetup.c:400 src/integritysetup.c:481 +#: src/cryptsetup.c:3453 src/veritysetup.c:409 src/integritysetup.c:494 msgid "close device (remove mapping)" msgstr "закрити пристрій (вилучити призначення)" -#: src/cryptsetup.c:3368 +#: src/cryptsetup.c:3454 msgid "resize active device" msgstr "змінити розмір активного пристрою" -#: src/cryptsetup.c:3369 +#: src/cryptsetup.c:3455 msgid "show device status" msgstr "показати стан пристрою" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "[--cipher ]" msgstr "[--cipher <шифр>]" -#: src/cryptsetup.c:3370 +#: src/cryptsetup.c:3456 msgid "benchmark cipher" msgstr "перевірити швидкодію шифрування" -#: src/cryptsetup.c:3371 src/cryptsetup.c:3372 src/cryptsetup.c:3373 -#: src/cryptsetup.c:3374 src/cryptsetup.c:3375 src/cryptsetup.c:3382 -#: src/cryptsetup.c:3383 src/cryptsetup.c:3384 src/cryptsetup.c:3385 -#: src/cryptsetup.c:3386 src/cryptsetup.c:3387 src/cryptsetup.c:3388 -#: src/cryptsetup.c:3389 src/cryptsetup.c:3390 +#: src/cryptsetup.c:3457 src/cryptsetup.c:3458 src/cryptsetup.c:3459 +#: src/cryptsetup.c:3460 src/cryptsetup.c:3461 src/cryptsetup.c:3468 +#: src/cryptsetup.c:3469 src/cryptsetup.c:3470 src/cryptsetup.c:3471 +#: src/cryptsetup.c:3472 src/cryptsetup.c:3473 src/cryptsetup.c:3474 +#: src/cryptsetup.c:3475 src/cryptsetup.c:3476 msgid "" msgstr "<пристрій>" -#: src/cryptsetup.c:3371 +#: src/cryptsetup.c:3457 msgid "try to repair on-disk metadata" msgstr "спробувати виправити метадані на диску" -#: src/cryptsetup.c:3372 +#: src/cryptsetup.c:3458 msgid "reencrypt LUKS2 device" msgstr "повторно зашифрувати пристрій LUKS2" -#: src/cryptsetup.c:3373 +#: src/cryptsetup.c:3459 msgid "erase all keyslots (remove encryption key)" msgstr "витерти усі слоти ключів (вилучити ключ шифрування)" -#: src/cryptsetup.c:3374 +#: src/cryptsetup.c:3460 msgid "convert LUKS from/to LUKS2 format" msgstr "перетворити LUKS із формату LUKS2 або навпаки" -#: src/cryptsetup.c:3375 +#: src/cryptsetup.c:3461 msgid "set permanent configuration options for LUKS2" msgstr "встановити сталі параметри налаштування для LUKS2" -#: src/cryptsetup.c:3376 src/cryptsetup.c:3377 +#: src/cryptsetup.c:3462 src/cryptsetup.c:3463 msgid " []" msgstr "<пристрій> [<новий файл ключа>]" -#: src/cryptsetup.c:3376 +#: src/cryptsetup.c:3462 msgid "formats a LUKS device" msgstr "форматує пристрій LUKS" -#: src/cryptsetup.c:3377 +#: src/cryptsetup.c:3463 msgid "add key to LUKS device" msgstr "додати ключ до пристрою LUKS" -#: src/cryptsetup.c:3378 src/cryptsetup.c:3379 src/cryptsetup.c:3380 +#: src/cryptsetup.c:3464 src/cryptsetup.c:3465 src/cryptsetup.c:3466 msgid " []" msgstr "<пристрій> [<файл ключа>]" -#: src/cryptsetup.c:3378 +#: src/cryptsetup.c:3464 msgid "removes supplied key or key file from LUKS device" msgstr "вилучає наданий ключ або файл ключа з пристрою LUKS" -#: src/cryptsetup.c:3379 +#: src/cryptsetup.c:3465 msgid "changes supplied key or key file of LUKS device" msgstr "змінює наданий ключ або файл ключа пристрою LUKS" -#: src/cryptsetup.c:3380 +#: src/cryptsetup.c:3466 msgid "converts a key to new pbkdf parameters" msgstr "перетворює ключ до нових параметрів pbkdf" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid " " msgstr "<пристрій> <слот ключа>" -#: src/cryptsetup.c:3381 +#: src/cryptsetup.c:3467 msgid "wipes key with number from LUKS device" msgstr "вилучає ключ з номером <слот ключа> з пристрою LUKS" -#: src/cryptsetup.c:3382 +#: src/cryptsetup.c:3468 msgid "print UUID of LUKS device" msgstr "вивести UUID пристрою LUKS" -#: src/cryptsetup.c:3383 +#: src/cryptsetup.c:3469 msgid "tests for LUKS partition header" msgstr "виконати спробу виявлення заголовка розділу LUKS на пристрої <пристрій>" -#: src/cryptsetup.c:3384 +#: src/cryptsetup.c:3470 msgid "dump LUKS partition information" msgstr "створити дамп даних щодо розділу LUKS" -#: src/cryptsetup.c:3385 +#: src/cryptsetup.c:3471 msgid "dump TCRYPT device information" msgstr "створити дамп даних пристрою TCRYPT" -#: src/cryptsetup.c:3386 +#: src/cryptsetup.c:3472 msgid "dump BITLK device information" msgstr "створити дамп даних пристрою BITLK" -#: src/cryptsetup.c:3387 +#: src/cryptsetup.c:3473 msgid "Suspend LUKS device and wipe key (all IOs are frozen)" msgstr "Приспати пристрій LUKS і витерти ключ (роботу всіх каналів введення-виведення буде заморожено)" -#: src/cryptsetup.c:3388 +#: src/cryptsetup.c:3474 msgid "Resume suspended LUKS device" msgstr "Відновити роботу приспаного пристрою LUKS" -#: src/cryptsetup.c:3389 +#: src/cryptsetup.c:3475 msgid "Backup LUKS device header and keyslots" msgstr "Створити резервну копію заголовка пристрою LUKS і слотів ключів" -#: src/cryptsetup.c:3390 +#: src/cryptsetup.c:3476 msgid "Restore LUKS device header and keyslots" msgstr "Відновити заголовок пристрою LUKS і слоти ключів" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid " " msgstr " <пристрій>" -#: src/cryptsetup.c:3391 +#: src/cryptsetup.c:3477 msgid "Manipulate LUKS2 tokens" msgstr "Керування ключами LUKS2" -#: src/cryptsetup.c:3409 src/veritysetup.c:417 src/integritysetup.c:498 +#: src/cryptsetup.c:3495 src/veritysetup.c:426 src/integritysetup.c:511 msgid "" "\n" " is one of:\n" @@ -2332,7 +2373,7 @@ "\n" "<дія> є однією з таких:\n" -#: src/cryptsetup.c:3415 +#: src/cryptsetup.c:3501 msgid "" "\n" "You can also use old syntax aliases:\n" @@ -2345,7 +2386,7 @@ "\tвідкрити: create (plainOpen), luksOpen, loopaesOpen, tcryptOpen, bitlkOpen\n" "\tзакрити: remove (plainClose), luksClose, loopaesClose, tcryptClose, bitlkClose\n" -#: src/cryptsetup.c:3419 +#: src/cryptsetup.c:3505 #, c-format msgid "" "\n" @@ -2360,7 +2401,7 @@ "<слот ключа> — номер слота ключа LUKS, який слід змінити\n" "<файл ключа> — необов’язковий файл ключа для нового ключа для дії luksAddKey\n" -#: src/cryptsetup.c:3426 +#: src/cryptsetup.c:3512 #, c-format msgid "" "\n" @@ -2369,7 +2410,7 @@ "\n" "Типовий укомпільований формат метаданих — %s (для дії luksFormat).\n" -#: src/cryptsetup.c:3431 +#: src/cryptsetup.c:3517 #, c-format msgid "" "\n" @@ -2386,7 +2427,7 @@ "Типовий PBKDF для LUKS2: %s\n" "\tЧас ітерації: %d, потрібний обсяг пам'яті: %d кБ, паралельних потоків: %d\n" -#: src/cryptsetup.c:3442 +#: src/cryptsetup.c:3528 #, c-format msgid "" "\n" @@ -2401,451 +2442,451 @@ "\tзвичайне: %s, ключ: %d-бітовий, хешування пароля: %s\n" "\tLUKS: %s, ключ: %d-бітовий, хешування заголовка LUKS: %s, RNG: %s\n" -#: src/cryptsetup.c:3451 +#: src/cryptsetup.c:3537 msgid "\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n" msgstr "\tLUKS: типовий розмір ключа у режимі XTS (два вбудованих ключа) буде подвоєно.\n" -#: src/cryptsetup.c:3467 src/veritysetup.c:575 src/integritysetup.c:642 +#: src/cryptsetup.c:3555 src/veritysetup.c:587 src/integritysetup.c:665 #, c-format msgid "%s: requires %s as arguments" msgstr "%s: слід вказати у параметрах %s" -#: src/cryptsetup.c:3500 src/veritysetup.c:462 src/integritysetup.c:536 -#: src/cryptsetup_reencrypt.c:1607 +#: src/cryptsetup.c:3587 src/veritysetup.c:472 src/integritysetup.c:553 +#: src/cryptsetup_reencrypt.c:1627 msgid "Show this help message" msgstr "Показати цю довідку" -#: src/cryptsetup.c:3501 src/veritysetup.c:463 src/integritysetup.c:537 -#: src/cryptsetup_reencrypt.c:1608 +#: src/cryptsetup.c:3588 src/veritysetup.c:473 src/integritysetup.c:554 +#: src/cryptsetup_reencrypt.c:1628 msgid "Display brief usage" msgstr "Показати короткі настанови щодо користування" -#: src/cryptsetup.c:3502 src/veritysetup.c:464 src/integritysetup.c:538 -#: src/cryptsetup_reencrypt.c:1609 +#: src/cryptsetup.c:3589 src/veritysetup.c:474 src/integritysetup.c:555 +#: src/cryptsetup_reencrypt.c:1629 msgid "Print package version" msgstr "Вивести дані щодо версії пакунка" -#: src/cryptsetup.c:3506 src/veritysetup.c:468 src/integritysetup.c:542 -#: src/cryptsetup_reencrypt.c:1613 +#: src/cryptsetup.c:3593 src/veritysetup.c:478 src/integritysetup.c:559 +#: src/cryptsetup_reencrypt.c:1633 msgid "Help options:" msgstr "Пункти довідки:" -#: src/cryptsetup.c:3507 src/veritysetup.c:469 src/integritysetup.c:543 -#: src/cryptsetup_reencrypt.c:1614 +#: src/cryptsetup.c:3594 src/veritysetup.c:479 src/integritysetup.c:560 +#: src/cryptsetup_reencrypt.c:1634 msgid "Shows more detailed error messages" msgstr "Показувати докладні повідомлення про помилки" -#: src/cryptsetup.c:3508 src/veritysetup.c:470 src/integritysetup.c:544 -#: src/cryptsetup_reencrypt.c:1615 +#: src/cryptsetup.c:3595 src/veritysetup.c:480 src/integritysetup.c:561 +#: src/cryptsetup_reencrypt.c:1635 msgid "Show debug messages" msgstr "Показувати діагностичні повідомлення" -#: src/cryptsetup.c:3509 +#: src/cryptsetup.c:3596 msgid "Show debug messages including JSON metadata" msgstr "Показувати діагностичні повідомлення, зокрема метадані JSON" -#: src/cryptsetup.c:3510 src/cryptsetup_reencrypt.c:1617 +#: src/cryptsetup.c:3597 src/cryptsetup_reencrypt.c:1637 msgid "The cipher used to encrypt the disk (see /proc/crypto)" msgstr "Шифр, який використано для шифрування даних диска (див. /proc/crypto)" -#: src/cryptsetup.c:3511 src/cryptsetup_reencrypt.c:1619 +#: src/cryptsetup.c:3598 src/cryptsetup_reencrypt.c:1639 msgid "The hash used to create the encryption key from the passphrase" msgstr "Хеш, використаний для створення ключа шифрування на основі пароля" -#: src/cryptsetup.c:3512 +#: src/cryptsetup.c:3599 msgid "Verifies the passphrase by asking for it twice" msgstr "Перевіряє пароль повторним запитом щодо нього" -#: src/cryptsetup.c:3513 src/cryptsetup_reencrypt.c:1621 +#: src/cryptsetup.c:3600 src/cryptsetup_reencrypt.c:1641 msgid "Read the key from a file" msgstr "Прочитати ключ з файла" -#: src/cryptsetup.c:3514 +#: src/cryptsetup.c:3601 msgid "Read the volume (master) key from file." msgstr "Прочитати ключ тому (основний ключ) з файла." -#: src/cryptsetup.c:3515 +#: src/cryptsetup.c:3602 msgid "Dump volume (master) key instead of keyslots info" msgstr "Створити дамп ключа тому (основного ключа) замість показу даних щодо слотів ключів" -#: src/cryptsetup.c:3516 src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup_reencrypt.c:1638 msgid "The size of the encryption key" msgstr "Розмір ключа шифрування" -#: src/cryptsetup.c:3516 src/cryptsetup.c:3579 src/integritysetup.c:562 -#: src/integritysetup.c:566 src/integritysetup.c:570 -#: src/cryptsetup_reencrypt.c:1618 +#: src/cryptsetup.c:3603 src/cryptsetup.c:3666 src/integritysetup.c:579 +#: src/integritysetup.c:583 src/integritysetup.c:587 +#: src/cryptsetup_reencrypt.c:1638 msgid "BITS" msgstr "БІТИ" -#: src/cryptsetup.c:3517 src/cryptsetup_reencrypt.c:1634 +#: src/cryptsetup.c:3604 src/cryptsetup_reencrypt.c:1654 msgid "Limits the read from keyfile" msgstr "Обмежує читання з файла ключа" -#: src/cryptsetup.c:3517 src/cryptsetup.c:3518 src/cryptsetup.c:3519 -#: src/cryptsetup.c:3520 src/cryptsetup.c:3523 src/cryptsetup.c:3576 -#: src/cryptsetup.c:3577 src/cryptsetup.c:3585 src/cryptsetup.c:3586 -#: src/veritysetup.c:473 src/veritysetup.c:474 src/veritysetup.c:475 -#: src/veritysetup.c:478 src/veritysetup.c:479 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:3604 src/cryptsetup.c:3605 src/cryptsetup.c:3606 +#: src/cryptsetup.c:3607 src/cryptsetup.c:3610 src/cryptsetup.c:3663 +#: src/cryptsetup.c:3664 src/cryptsetup.c:3672 src/cryptsetup.c:3673 +#: 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 "байти" -#: src/cryptsetup.c:3518 src/cryptsetup_reencrypt.c:1633 +#: src/cryptsetup.c:3605 src/cryptsetup_reencrypt.c:1653 msgid "Number of bytes to skip in keyfile" msgstr "Кількість байтів, які слід пропустити у файлі ключа" -#: src/cryptsetup.c:3519 +#: src/cryptsetup.c:3606 msgid "Limits the read from newly added keyfile" msgstr "Обмежує читання з щойно доданого файла ключа" -#: src/cryptsetup.c:3520 +#: src/cryptsetup.c:3607 msgid "Number of bytes to skip in newly added keyfile" msgstr "Кількість байтів, які слід пропустити у щойно доданому файлі ключа" -#: src/cryptsetup.c:3521 +#: src/cryptsetup.c:3608 msgid "Slot number for new key (default is first free)" msgstr "Номер слоту для нового ключа (типовим слотом є перший вільний слот)" -#: src/cryptsetup.c:3522 +#: src/cryptsetup.c:3609 msgid "The size of the device" msgstr "Розмір пристрою" -#: src/cryptsetup.c:3522 src/cryptsetup.c:3524 src/cryptsetup.c:3525 -#: src/cryptsetup.c:3531 src/integritysetup.c:552 src/integritysetup.c:559 +#: src/cryptsetup.c:3609 src/cryptsetup.c:3611 src/cryptsetup.c:3612 +#: src/cryptsetup.c:3618 src/integritysetup.c:569 src/integritysetup.c:576 msgid "SECTORS" msgstr "СЕКТОРИ" -#: src/cryptsetup.c:3523 src/cryptsetup_reencrypt.c:1636 +#: src/cryptsetup.c:3610 src/cryptsetup_reencrypt.c:1656 msgid "Use only specified device size (ignore rest of device). DANGEROUS!" msgstr "Використовувати лише вказаний розмір пристрою (ігнорувати решту об’єму). НЕБЕЗПЕЧНО!" -#: src/cryptsetup.c:3524 +#: src/cryptsetup.c:3611 msgid "The start offset in the backend device" msgstr "Початковий відступ на допоміжному пристрої" -#: src/cryptsetup.c:3525 +#: src/cryptsetup.c:3612 msgid "How many sectors of the encrypted data to skip at the beginning" msgstr "Кількість секторів зашифрованих даних, які слід пропустити на початку" -#: src/cryptsetup.c:3526 +#: src/cryptsetup.c:3613 msgid "Create a readonly mapping" msgstr "Створити призначення у режимі лише читання" -#: src/cryptsetup.c:3527 src/integritysetup.c:545 -#: src/cryptsetup_reencrypt.c:1624 +#: src/cryptsetup.c:3614 src/integritysetup.c:562 +#: src/cryptsetup_reencrypt.c:1644 msgid "Do not ask for confirmation" msgstr "Не питати про підтвердження" -#: src/cryptsetup.c:3528 +#: src/cryptsetup.c:3615 msgid "Timeout for interactive passphrase prompt (in seconds)" msgstr "Час очікування у інтерактивному запиті щодо пароля (у секундах)" -#: src/cryptsetup.c:3528 src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3615 src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "secs" msgstr "секунди" -#: src/cryptsetup.c:3529 src/integritysetup.c:546 -#: src/cryptsetup_reencrypt.c:1625 +#: src/cryptsetup.c:3616 src/integritysetup.c:563 +#: src/cryptsetup_reencrypt.c:1645 msgid "Progress line update (in seconds)" msgstr "Оновлення лінії поступу (у секундах)" -#: src/cryptsetup.c:3530 src/cryptsetup_reencrypt.c:1626 +#: src/cryptsetup.c:3617 src/cryptsetup_reencrypt.c:1646 msgid "How often the input of the passphrase can be retried" msgstr "Частота повторень спроб отримання вхідних даних пароля" -#: src/cryptsetup.c:3531 +#: src/cryptsetup.c:3618 msgid "Align payload at sector boundaries - for luksFormat" msgstr "Вирівняти дані за областями у секторів, для luksFormat" -#: src/cryptsetup.c:3532 +#: src/cryptsetup.c:3619 msgid "File with LUKS header and keyslots backup" msgstr "Файл з заголовком LUKS та резервною копію слотів ключів" -#: src/cryptsetup.c:3533 src/cryptsetup_reencrypt.c:1627 +#: src/cryptsetup.c:3620 src/cryptsetup_reencrypt.c:1647 msgid "Use /dev/random for generating volume key" msgstr "Використовувати для створення ключа тому /dev/random" -#: src/cryptsetup.c:3534 src/cryptsetup_reencrypt.c:1628 +#: src/cryptsetup.c:3621 src/cryptsetup_reencrypt.c:1648 msgid "Use /dev/urandom for generating volume key" msgstr "Використовувати для створення ключа тому /dev/urandom" -#: src/cryptsetup.c:3535 +#: src/cryptsetup.c:3622 msgid "Share device with another non-overlapping crypt segment" msgstr "Використовувати пристрій спільно з іншим сегментом шифрування, без перекриття" -#: src/cryptsetup.c:3536 src/veritysetup.c:482 +#: src/cryptsetup.c:3623 src/veritysetup.c:492 msgid "UUID for device to use" msgstr "UUID пристрою, який слід використати" -#: src/cryptsetup.c:3537 src/integritysetup.c:579 +#: src/cryptsetup.c:3624 src/integritysetup.c:599 msgid "Allow discards (aka TRIM) requests for device" msgstr "Дозволити запити відкидання (або TRIM) до пристрою" -#: src/cryptsetup.c:3538 src/cryptsetup_reencrypt.c:1645 +#: src/cryptsetup.c:3625 src/cryptsetup_reencrypt.c:1665 msgid "Device or file with separated LUKS header" msgstr "Пристрій або файл з окремим заголовком LUKS" -#: src/cryptsetup.c:3539 +#: src/cryptsetup.c:3626 msgid "Do not activate device, just check passphrase" msgstr "Не задіювати пристрій, просто перевірити пароль" -#: src/cryptsetup.c:3540 +#: src/cryptsetup.c:3627 msgid "Use hidden header (hidden TCRYPT device)" msgstr "Використовувати прихований заголовок (прихований пристрій TCRYPT)" -#: src/cryptsetup.c:3541 +#: src/cryptsetup.c:3628 msgid "Device is system TCRYPT drive (with bootloader)" msgstr "Пристрій є системним диском TCRYPT (диском з завантажувачем)" -#: src/cryptsetup.c:3542 +#: src/cryptsetup.c:3629 msgid "Use backup (secondary) TCRYPT header" msgstr "Використовувати резервний (вторинний) заголовок TCRYPT" -#: src/cryptsetup.c:3543 +#: src/cryptsetup.c:3630 msgid "Scan also for VeraCrypt compatible device" msgstr "Виконати також пошук сумісних із VeraCrypt пристроїв" -#: src/cryptsetup.c:3544 +#: src/cryptsetup.c:3631 msgid "Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Особистий множник ітерації (Personal Iteration Multiplier або PIM) для сумісного з VeraCrypt пристрою" -#: src/cryptsetup.c:3545 +#: src/cryptsetup.c:3632 msgid "Query Personal Iteration Multiplier for VeraCrypt compatible device" msgstr "Особистий множник ітерації (Personal Iteration Multiplier або PIM) запису для сумісного з VeraCrypt пристрою" -#: src/cryptsetup.c:3546 +#: src/cryptsetup.c:3633 msgid "Type of device metadata: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" msgstr "Типи метаданих пристрою: luks, luks1, luks2, plain, loopaes, tcrypt, bitlk" -#: src/cryptsetup.c:3547 +#: src/cryptsetup.c:3634 msgid "Disable password quality check (if enabled)" msgstr "Вимкнути перевірку якості пароля (якщо її увімкнено)" -#: src/cryptsetup.c:3548 +#: src/cryptsetup.c:3635 msgid "Use dm-crypt same_cpu_crypt performance compatibility option" msgstr "Скористатися параметром сумісності швидкодії dm-crypt same_cpu_crypt" -#: src/cryptsetup.c:3549 +#: src/cryptsetup.c:3636 msgid "Use dm-crypt submit_from_crypt_cpus performance compatibility option" msgstr "Скористатися параметром сумісності швидкодії dm-crypt submit_from_crypt_cpus" -#: src/cryptsetup.c:3550 +#: src/cryptsetup.c:3637 msgid "Bypass dm-crypt workqueue and process read requests synchronously" msgstr "Обійти чергу обробки dm-crypt і обробляти запити щодо читання синхронно" -#: src/cryptsetup.c:3551 +#: src/cryptsetup.c:3638 msgid "Bypass dm-crypt workqueue and process write requests synchronously" msgstr "Обійти чергу обробки dm-crypt і обробляти запити щодо запису синхронно" -#: src/cryptsetup.c:3552 +#: src/cryptsetup.c:3639 msgid "Device removal is deferred until the last user closes it" msgstr "Вилучення пристрою відкладено до часу, коли останній користувач закриє його" -#: src/cryptsetup.c:3553 +#: src/cryptsetup.c:3640 msgid "Use global lock to serialize memory hard PBKDF (OOM workaround)" msgstr "Скористатися загальним блокуванням для перетворення у послідовну форму «жорсткого» PBKDF у пам'яті (обхід OOM)" -#: src/cryptsetup.c:3554 +#: src/cryptsetup.c:3641 msgid "PBKDF iteration time for LUKS (in ms)" msgstr "Тривалість ітерації PBKDF для LUKS (у мс)" -#: src/cryptsetup.c:3554 src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup.c:3641 src/cryptsetup_reencrypt.c:1643 msgid "msecs" msgstr "мс" -#: src/cryptsetup.c:3555 src/cryptsetup_reencrypt.c:1641 +#: src/cryptsetup.c:3642 src/cryptsetup_reencrypt.c:1661 msgid "PBKDF algorithm (for LUKS2): argon2i, argon2id, pbkdf2" msgstr "Алгоритм PBKDF (для LUKS2) (argon2i/argon2id/pbkdf2)" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "PBKDF memory cost limit" msgstr "Обмеження вартості пам'яті PBKDF" -#: src/cryptsetup.c:3556 src/cryptsetup_reencrypt.c:1642 +#: src/cryptsetup.c:3643 src/cryptsetup_reencrypt.c:1662 msgid "kilobytes" msgstr "кілобайти" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "PBKDF parallel cost" msgstr "Вартість розпаралелювання PBKDF" -#: src/cryptsetup.c:3557 src/cryptsetup_reencrypt.c:1643 +#: src/cryptsetup.c:3644 src/cryptsetup_reencrypt.c:1663 msgid "threads" msgstr "threads" -#: src/cryptsetup.c:3558 src/cryptsetup_reencrypt.c:1644 +#: src/cryptsetup.c:3645 src/cryptsetup_reencrypt.c:1664 msgid "PBKDF iterations cost (forced, disables benchmark)" msgstr "Вартість ітерацій PBKDF (примусово, вимикає тестування)" -#: src/cryptsetup.c:3559 +#: src/cryptsetup.c:3646 msgid "Keyslot priority: ignore, normal, prefer" msgstr "Пріоритетність слотів ключів: ignore, normal, prefer" -#: src/cryptsetup.c:3560 +#: src/cryptsetup.c:3647 msgid "Disable locking of on-disk metadata" msgstr "Вимкнути блокування метаданих на диску" -#: src/cryptsetup.c:3561 +#: src/cryptsetup.c:3648 msgid "Disable loading volume keys via kernel keyring" msgstr "Вимкнути завантаження ключів тому за допомогою сховища ключів ядра" -#: src/cryptsetup.c:3562 +#: src/cryptsetup.c:3649 msgid "Data integrity algorithm (LUKS2 only)" msgstr "Алгоритм перевірки цілісності даних (лише LUKS2)" -#: src/cryptsetup.c:3563 src/integritysetup.c:573 +#: src/cryptsetup.c:3650 src/integritysetup.c:590 msgid "Disable journal for integrity device" msgstr "Вимкнути журнал для пристрою забезпечення цілісності" -#: src/cryptsetup.c:3564 src/integritysetup.c:547 +#: src/cryptsetup.c:3651 src/integritysetup.c:564 msgid "Do not wipe device after format" msgstr "Не витирати пристрій після форматування" -#: src/cryptsetup.c:3565 src/integritysetup.c:577 +#: src/cryptsetup.c:3652 src/integritysetup.c:594 msgid "Use inefficient legacy padding (old kernels)" msgstr "Скористатися неефективним застарілим відступом (застарілі ядра)" -#: src/cryptsetup.c:3566 +#: src/cryptsetup.c:3653 msgid "Do not ask for passphrase if activation by token fails" msgstr "Не просити ввести пароль, якщо не вдасться скористатися активацією за ключем" -#: src/cryptsetup.c:3567 +#: src/cryptsetup.c:3654 msgid "Token number (default: any)" msgstr "Номер ключа (типове значення: будь-який)" -#: src/cryptsetup.c:3568 +#: src/cryptsetup.c:3655 msgid "Key description" msgstr "Опис ключа" -#: src/cryptsetup.c:3569 +#: src/cryptsetup.c:3656 msgid "Encryption sector size (default: 512 bytes)" msgstr "Розмір сектора шифрування (типове значення: 512 байтів)" -#: src/cryptsetup.c:3570 +#: src/cryptsetup.c:3657 msgid "Use IV counted in sector size (not in 512 bytes)" msgstr "Використовувати обчислення за IV у розмірі сектора (не за блоками у 512 байтів)" -#: src/cryptsetup.c:3571 +#: src/cryptsetup.c:3658 msgid "Set activation flags persistent for device" msgstr "Встановити сталі прапорці активації для пристрою" -#: src/cryptsetup.c:3572 +#: src/cryptsetup.c:3659 msgid "Set label for the LUKS2 device" msgstr "Встановити мітку для пристрою LUKS2" -#: src/cryptsetup.c:3573 +#: src/cryptsetup.c:3660 msgid "Set subsystem label for the LUKS2 device" msgstr "Встановити мітку підтому для пристрою LUKS2" -#: src/cryptsetup.c:3574 +#: src/cryptsetup.c:3661 msgid "Create or dump unbound (no assigned data segment) LUKS2 keyslot" msgstr "Створити непов'язаний (без пов'язаного сегмента даних) слот ключів LUKS2 або його дамп" -#: src/cryptsetup.c:3575 +#: src/cryptsetup.c:3662 msgid "Read or write the json from or to a file" msgstr "Прочитати json з файла або записати json до файла" -#: src/cryptsetup.c:3576 +#: src/cryptsetup.c:3663 msgid "LUKS2 header metadata area size" msgstr "Розмір області метаданих у заголовку LUKS2" -#: src/cryptsetup.c:3577 +#: src/cryptsetup.c:3664 msgid "LUKS2 header keyslots area size" msgstr "Розмір області слотів ключів у заголовку LUKS2" -#: src/cryptsetup.c:3578 +#: src/cryptsetup.c:3665 msgid "Refresh (reactivate) device with new parameters" msgstr "Оновити (повторно активувати) пристрій згідно з новими параметрами" -#: src/cryptsetup.c:3579 +#: src/cryptsetup.c:3666 msgid "LUKS2 keyslot: The size of the encryption key" msgstr "Слот ключів LUKS2: розмір ключа шифрування" -#: src/cryptsetup.c:3580 +#: src/cryptsetup.c:3667 msgid "LUKS2 keyslot: The cipher used for keyslot encryption" msgstr "Слот ключа LUKS2: шифрування, яке використано для слоту ключів" -#: src/cryptsetup.c:3581 +#: src/cryptsetup.c:3668 msgid "Encrypt LUKS2 device (in-place encryption)." msgstr "Зашифрувати пристрій LUKS2 (шифрування на місці)." -#: src/cryptsetup.c:3582 +#: src/cryptsetup.c:3669 msgid "Decrypt LUKS2 device (remove encryption)." msgstr "Розшифрувати пристрій LUKS2 (усунути шифрування)." -#: src/cryptsetup.c:3583 +#: src/cryptsetup.c:3670 msgid "Initialize LUKS2 reencryption in metadata only." msgstr "Ініціалізувати повторне шифрування LUKS2 лише у метаданих." -#: src/cryptsetup.c:3584 +#: src/cryptsetup.c:3671 msgid "Resume initialized LUKS2 reencryption only." msgstr "Відновлювати лише ініціалізоване повторне шифрування LUKS2." -#: src/cryptsetup.c:3585 src/cryptsetup_reencrypt.c:1635 +#: src/cryptsetup.c:3672 src/cryptsetup_reencrypt.c:1655 msgid "Reduce data device size (move data offset). DANGEROUS!" msgstr "Зменшити розмір пристрою зберігання даних (змістити відступ даних). НЕБЕЗПЕЧНО!" -#: src/cryptsetup.c:3586 +#: src/cryptsetup.c:3673 msgid "Maximal reencryption hotzone size." msgstr "Максимальний розмір «гарячої» ділянки повторного шифрування." -#: src/cryptsetup.c:3587 +#: src/cryptsetup.c:3674 msgid "Reencryption hotzone resilience type (checksum,journal,none)" msgstr "Тип стійкості «гарячої» ділянки повторного шифрування (checksum (контрольна сума), journal (журнал), none (немає))" -#: src/cryptsetup.c:3588 +#: src/cryptsetup.c:3675 msgid "Reencryption hotzone checksums hash" msgstr "Хеш контрольних сум «гарячої» ділянки повторного шифрування" -#: src/cryptsetup.c:3589 +#: src/cryptsetup.c:3676 msgid "Override device autodetection of dm device to be reencrypted" msgstr "Перевизначити автоматично визначені параметри пристрою dm, який буде повторно зашифровано" -#: src/cryptsetup.c:3605 src/veritysetup.c:505 src/integritysetup.c:595 +#: src/cryptsetup.c:3692 src/veritysetup.c:515 src/integritysetup.c:615 msgid "[OPTION...] " msgstr "[ПАРАМЕТР...] <дія> <параметри_дії>" -#: src/cryptsetup.c:3656 src/veritysetup.c:539 src/integritysetup.c:606 +#: src/cryptsetup.c:3747 src/veritysetup.c:551 src/integritysetup.c:626 msgid "Argument missing." msgstr "Не вказано аргумент <дія>." -#: src/cryptsetup.c:3725 src/veritysetup.c:570 src/integritysetup.c:637 +#: src/cryptsetup.c:3817 src/veritysetup.c:582 src/integritysetup.c:660 msgid "Unknown action." msgstr "Невідома дія." -#: src/cryptsetup.c:3735 +#: src/cryptsetup.c:3827 msgid "Options --refresh and --test-passphrase are mutually exclusive." msgstr "Не можна поєднувати параметри --refresh і --test-passphrase." -#: src/cryptsetup.c:3740 +#: src/cryptsetup.c:3832 msgid "Option --deferred is allowed only for close command." msgstr "Параметр --deferred можна використовувати лише для команди закриття (close)." -#: src/cryptsetup.c:3745 +#: src/cryptsetup.c:3837 msgid "Option --shared is allowed only for open of plain device." msgstr "Параметр --shared можна використовувати лише для відкриття незашифрованого пристрою." -#: src/cryptsetup.c:3750 src/integritysetup.c:654 +#: src/cryptsetup.c:3842 src/integritysetup.c:677 msgid "Option --allow-discards is allowed only for open operation." msgstr "Параметр --shared можна використовувати лише для дії з відкриття." -#: src/cryptsetup.c:3755 +#: src/cryptsetup.c:3847 msgid "Option --persistent is allowed only for open operation." msgstr "Параметр --persistent можна використовувати лише для дії з відкриття." -#: src/cryptsetup.c:3760 +#: src/cryptsetup.c:3852 msgid "Option --serialize-memory-hard-pbkdf is allowed only for open operation." msgstr "Параметр --serialize-memory-hard-pbkdf можна використовувати лише для дії з відкриття." -#: src/cryptsetup.c:3765 +#: src/cryptsetup.c:3857 msgid "Option --persistent is not allowed with --test-passphrase." msgstr "Параметр --persistent не можна використовувати разом із --test-passphrase." -#: src/cryptsetup.c:3775 +#: src/cryptsetup.c:3867 msgid "" "Option --key-size is allowed only for luksFormat, luksAddKey,\n" "open and benchmark actions. To limit read from keyfile use --keyfile-size=(bytes)." @@ -2853,259 +2894,259 @@ "Параметр --key-size можна використовувати лише для luksFormat, luksAddKey,\n" "дій open і benchmark. Щоб обмежити читання з файла ключа, скористайтеся параметром --keyfile-size=(об’єм у байтах)." -#: src/cryptsetup.c:3781 +#: src/cryptsetup.c:3873 msgid "Option --integrity is allowed only for luksFormat (LUKS2)." msgstr "Параметр --integrity можна використовувати лише для luksFormat (LUKS2)." -#: src/cryptsetup.c:3786 +#: src/cryptsetup.c:3878 msgid "Option --integrity-no-wipe can be used only for format action with integrity extension." msgstr "Параметром --integrity-no-wipe можна користуватися лише для дії з форматування із розширенням забезпечення цілісності." -#: src/cryptsetup.c:3792 +#: src/cryptsetup.c:3884 msgid "Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations." msgstr "Параметри --label і --subsystem можна використовувати лише для дій luksFormat та config для LUKS2." -#: src/cryptsetup.c:3798 +#: src/cryptsetup.c:3890 msgid "Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices." msgstr "Параметр --test-passphrase можна використовувати лише для відкриття пристроїв LUKS, TCRYPT та BITLK." -#: src/cryptsetup.c:3803 src/cryptsetup_reencrypt.c:1708 +#: src/cryptsetup.c:3895 src/cryptsetup_reencrypt.c:1728 msgid "Key size must be a multiple of 8 bits" msgstr "Розмір ключа має бути кратним 8 бітам" -#: src/cryptsetup.c:3809 src/cryptsetup_reencrypt.c:1394 -#: src/cryptsetup_reencrypt.c:1713 +#: src/cryptsetup.c:3901 src/cryptsetup_reencrypt.c:1412 +#: src/cryptsetup_reencrypt.c:1733 msgid "Key slot is invalid." msgstr "Некоректний слот ключа." -#: src/cryptsetup.c:3816 +#: src/cryptsetup.c:3908 msgid "Option --key-file takes precedence over specified key file argument." msgstr "Параметр --key-file має пріоритет над вказаним параметром файла ключа." -#: src/cryptsetup.c:3823 src/veritysetup.c:582 src/integritysetup.c:663 -#: src/cryptsetup_reencrypt.c:1687 +#: src/cryptsetup.c:3915 src/veritysetup.c:594 src/integritysetup.c:686 +#: src/cryptsetup_reencrypt.c:1707 msgid "Negative number for option not permitted." msgstr "Не можна використовувати від’ємні значення для параметра." -#: src/cryptsetup.c:3827 +#: src/cryptsetup.c:3919 msgid "Only one --key-file argument is allowed." msgstr "Можна використовувати лише один аргумент --key-file." -#: src/cryptsetup.c:3831 src/cryptsetup_reencrypt.c:1679 -#: src/cryptsetup_reencrypt.c:1717 +#: src/cryptsetup.c:3923 src/cryptsetup_reencrypt.c:1699 +#: src/cryptsetup_reencrypt.c:1737 msgid "Only one of --use-[u]random options is allowed." msgstr "Можна використовувати лише один з параметрів --use-[u]random." -#: src/cryptsetup.c:3835 +#: src/cryptsetup.c:3927 msgid "Option --use-[u]random is allowed only for luksFormat." msgstr "Параметр --use-[u]random можна використовувати лише для дії luksFormat." -#: src/cryptsetup.c:3839 +#: src/cryptsetup.c:3931 msgid "Option --uuid is allowed only for luksFormat and luksUUID." msgstr "Параметр --uuid можна використовувати лише для дій luksFormat і luksUUID." -#: src/cryptsetup.c:3843 +#: src/cryptsetup.c:3935 msgid "Option --align-payload is allowed only for luksFormat." msgstr "Параметр --align-payload можна використовувати лише для дії luksFormat." -#: src/cryptsetup.c:3847 +#: src/cryptsetup.c:3939 msgid "Options --luks2-metadata-size and --opt-luks2-keyslots-size are allowed only for luksFormat with LUKS2." msgstr "Параметрами --luks2-metadata-size і --opt-luks2-keyslots-size можна користуватися лише для luksFormat з LUKS2." -#: src/cryptsetup.c:3852 +#: src/cryptsetup.c:3944 msgid "Invalid LUKS2 metadata size specification." msgstr "Некоректна специфікація розміру метаданих LUKS2." -#: src/cryptsetup.c:3856 +#: src/cryptsetup.c:3948 msgid "Invalid LUKS2 keyslots size specification." msgstr "Некоректна специфікація розміру слоту ключів LUKS2." -#: src/cryptsetup.c:3860 +#: src/cryptsetup.c:3952 msgid "Options --align-payload and --offset cannot be combined." msgstr "Не можна одночасно використовувати параметри --align-payload і --offset." -#: src/cryptsetup.c:3866 +#: src/cryptsetup.c:3958 msgid "Option --skip is supported only for open of plain and loopaes devices." msgstr "Підтримку параметра --skip передбачено лише для відкриття незашифрованих пристроїв та пристроїв loopaes." -#: src/cryptsetup.c:3873 +#: src/cryptsetup.c:3965 msgid "Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption." msgstr "Підтримку параметра --offset передбачено лише для відкриття незашифрованих пристроїв та пристроїв loopaes, luksFormat та повторного шифрування." -#: src/cryptsetup.c:3879 +#: src/cryptsetup.c:3971 msgid "Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device." msgstr "Підтримку параметрів --tcrypt-hidden, --tcrypt-system і --tcrypt-backup передбачено лише для пристроїв TCRYPT." -#: src/cryptsetup.c:3884 +#: src/cryptsetup.c:3976 msgid "Option --tcrypt-hidden cannot be combined with --allow-discards." msgstr "Параметр --tcrypt-hidden не можна поєднувати з --allow-discards." -#: src/cryptsetup.c:3889 +#: src/cryptsetup.c:3981 msgid "Option --veracrypt is supported only for TCRYPT device type." msgstr "Підтримку параметра --veracrypt передбачено лише для пристроїв TCRYPT." -#: src/cryptsetup.c:3895 +#: src/cryptsetup.c:3987 msgid "Invalid argument for parameter --veracrypt-pim supplied." msgstr "Надано некоректний аргумент для параметра --veracrypt-pim." -#: src/cryptsetup.c:3899 +#: src/cryptsetup.c:3991 msgid "Option --veracrypt-pim is supported only for VeraCrypt compatible devices." msgstr "Параметр --veracrypt-pim можна використовувати лише для сумісних із VeraCrypt пристроїв." -#: src/cryptsetup.c:3907 +#: src/cryptsetup.c:3999 msgid "Option --veracrypt-query-pim is supported only for VeraCrypt compatible devices." msgstr "Параметр --veracrypt-query-pim можна використовувати лише для сумісних із VeraCrypt пристроїв." -#: src/cryptsetup.c:3911 +#: src/cryptsetup.c:4003 msgid "The options --veracrypt-pim and --veracrypt-query-pim are mutually exclusive." msgstr "Не можна поєднувати параметри --veracrypt-pim і --veracrypt-query-pim." -#: src/cryptsetup.c:3918 +#: src/cryptsetup.c:4010 msgid "Option --priority can be only ignore/normal/prefer." msgstr "Значенням для параметра --priority може бути лише один з таких рядків: ignore, normal або prefer." -#: src/cryptsetup.c:3923 src/cryptsetup.c:3961 +#: src/cryptsetup.c:4015 src/cryptsetup.c:4053 msgid "Keyslot specification is required." msgstr "Слід вказати специфікація слотів ключів." -#: src/cryptsetup.c:3928 src/cryptsetup_reencrypt.c:1693 +#: src/cryptsetup.c:4020 src/cryptsetup_reencrypt.c:1713 msgid "Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id." msgstr "Функцією отримання ключа на основі пароля (PBKDF) може бути лише pbkdf2 або argon2i/argon2id." -#: src/cryptsetup.c:3933 src/cryptsetup_reencrypt.c:1698 +#: src/cryptsetup.c:4025 src/cryptsetup_reencrypt.c:1718 msgid "PBKDF forced iterations cannot be combined with iteration time option." msgstr "Примусові ітерації PBKDF не можна поєднувати із параметром тривалості ітерацій." -#: src/cryptsetup.c:3939 +#: src/cryptsetup.c:4031 msgid "Sector size option is not supported for this command." msgstr "У цій команді не передбачено підтримки параметра розміру сектора." -#: src/cryptsetup.c:3951 +#: src/cryptsetup.c:4043 msgid "Large IV sectors option is supported only for opening plain type device with sector size larger than 512 bytes." msgstr "Підтримку можливості використання великих секторів IV передбачено лише для відкриття пристроїв простого типу з розміром сектора, який перевищує 512 байтів." -#: src/cryptsetup.c:3956 +#: src/cryptsetup.c:4048 msgid "Key size is required with --unbound option." msgstr "Разом із параметром --unbound слід вказувати розмір ключа." -#: src/cryptsetup.c:3966 +#: src/cryptsetup.c:4058 msgid "Option --unbound may be used only with luksAddKey and luksDump actions." msgstr "Параметр --unbound можна використовувати лише з діями luksAddKey і luksDump." -#: src/cryptsetup.c:3971 +#: src/cryptsetup.c:4063 msgid "Option --refresh may be used only with open action." msgstr "Параметр --refresh можна використовувати лише під час дії з відкриття (open)." -#: src/cryptsetup.c:3982 +#: src/cryptsetup.c:4074 msgid "Cannot disable metadata locking." msgstr "Не вдалося вимкнути блокування метаданих." -#: src/cryptsetup.c:3992 +#: src/cryptsetup.c:4085 msgid "Invalid max reencryption hotzone size specification." msgstr "Некоректна специфікація розміру «гарячої» ділянки повторного шифрування." -#: src/cryptsetup.c:4000 src/cryptsetup_reencrypt.c:1722 -#: src/cryptsetup_reencrypt.c:1727 +#: src/cryptsetup.c:4093 src/cryptsetup_reencrypt.c:1742 +#: src/cryptsetup_reencrypt.c:1747 msgid "Invalid device size specification." msgstr "Некоректна специфікація розміру пристрою." -#: src/cryptsetup.c:4003 +#: src/cryptsetup.c:4096 msgid "Maximum device reduce size is 1 GiB." msgstr "Максимальний розмір зменшення розміру пристрою дорівнює 1 ГіБ." -#: src/cryptsetup.c:4006 src/cryptsetup_reencrypt.c:1733 +#: src/cryptsetup.c:4099 src/cryptsetup_reencrypt.c:1753 msgid "Reduce size must be multiple of 512 bytes sector." msgstr "Розмір зменшення має бути кратним до 512-байтового сектора." -#: src/cryptsetup.c:4011 +#: src/cryptsetup.c:4104 msgid "Invalid data size specification." msgstr "Некоректна специфікація розміру даних." -#: src/cryptsetup.c:4016 +#: src/cryptsetup.c:4109 msgid "Reduce size overflow." msgstr "Переповнення розміру зменшення." -#: src/cryptsetup.c:4020 +#: src/cryptsetup.c:4113 msgid "LUKS2 decryption requires option --header." msgstr "Розшифрування LUKS2 потребує параметра --header." -#: src/cryptsetup.c:4024 +#: src/cryptsetup.c:4117 msgid "Device size must be multiple of 512 bytes sector." msgstr "Розмір пристрою має бути кратним до 512-байтового сектора." -#: src/cryptsetup.c:4028 +#: src/cryptsetup.c:4121 msgid "Options --reduce-device-size and --data-size cannot be combined." msgstr "Не можна одночасно використовувати параметри --reduce-device-size і --data-size." -#: src/cryptsetup.c:4032 +#: src/cryptsetup.c:4125 msgid "Options --device-size and --size cannot be combined." msgstr "Не можна одночасно використовувати параметри --device-size і --size." -#: src/cryptsetup.c:4036 +#: src/cryptsetup.c:4129 msgid "Options --keyslot-cipher and --keyslot-key-size must be used together." msgstr "Параметри --keyslot-cipher і --keyslot-key-size має бути використано разом." -#: src/veritysetup.c:67 +#: src/veritysetup.c:76 msgid "Invalid salt string specified." msgstr "Вказано некоректний рядок солі." -#: src/veritysetup.c:98 +#: src/veritysetup.c:107 #, c-format msgid "Cannot create hash image %s for writing." msgstr "Не вдалося створити образ хешу %s для запису." -#: src/veritysetup.c:108 +#: src/veritysetup.c:117 #, c-format msgid "Cannot create FEC image %s for writing." msgstr "Не вдалося створити образ FEC %s для запису." -#: src/veritysetup.c:182 +#: src/veritysetup.c:191 msgid "Invalid root hash string specified." msgstr "Вказано некоректний рядок кореневого хешу." -#: src/veritysetup.c:190 +#: src/veritysetup.c:199 #, c-format msgid "Invalid signature file %s." msgstr "Некоректний файл підпису %s." -#: src/veritysetup.c:197 +#: src/veritysetup.c:206 #, c-format msgid "Cannot read signature file %s." msgstr "Не вдалося прочитати файл підпису %s." -#: src/veritysetup.c:397 +#: src/veritysetup.c:406 msgid " " msgstr "<пристрій_даних> <пристрій_хешу>" -#: src/veritysetup.c:397 src/integritysetup.c:479 +#: src/veritysetup.c:406 src/integritysetup.c:492 msgid "format device" msgstr "форматувати пристрій" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid " " msgstr "<пристрій_даних> <пристрій_хешу> <кореневий_хеш>" -#: src/veritysetup.c:398 +#: src/veritysetup.c:407 msgid "verify device" msgstr "перевірити пристрій" -#: src/veritysetup.c:399 +#: src/veritysetup.c:408 msgid " " msgstr "<пристрій_даних> <назва> <пристрій_хешу> <кореневий_хеш>" -#: src/veritysetup.c:401 src/integritysetup.c:482 +#: src/veritysetup.c:410 src/integritysetup.c:495 msgid "show active device status" msgstr "показати стан активного пристрою" -#: src/veritysetup.c:402 +#: src/veritysetup.c:411 msgid "" msgstr "<пристрій_хешу>" -#: src/veritysetup.c:402 src/integritysetup.c:483 +#: src/veritysetup.c:411 src/integritysetup.c:496 msgid "show on-disk information" msgstr "показати вбудовані дані" -#: src/veritysetup.c:421 +#: src/veritysetup.c:430 #, c-format msgid "" "\n" @@ -3120,7 +3161,7 @@ "<пристрій_хешу> — пристрій, на якому зберігаються дані для перевірки\n" "<кореневий_хеш> — хеш кореневого вузла на пристрої <пристрій_хешу>\n" -#: src/veritysetup.c:428 +#: src/veritysetup.c:437 #, c-format msgid "" "\n" @@ -3131,134 +3172,139 @@ "Типові вбудовані параметри dm-verity:\n" "\tхеш: %s, блок даних (у байтах): %u, блок хешу (у байтах): %u, розмір солі: %u, формат хешування: %u\n" -#: src/veritysetup.c:471 +#: src/veritysetup.c:481 msgid "Do not use verity superblock" msgstr "Не використовувати суперблок verity" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "Format type (1 - normal, 0 - original Chrome OS)" msgstr "Тип форматування (1 — звичайне, 0 — початкове Chrome OS)" -#: src/veritysetup.c:472 +#: src/veritysetup.c:482 msgid "number" msgstr "номер" -#: src/veritysetup.c:473 +#: src/veritysetup.c:483 msgid "Block size on the data device" msgstr "Розмір блоку на пристрої даних" -#: src/veritysetup.c:474 +#: src/veritysetup.c:484 msgid "Block size on the hash device" msgstr "Розмір блоку на пристрої хешу" -#: src/veritysetup.c:475 +#: src/veritysetup.c:485 msgid "FEC parity bytes" msgstr "Байти парності FEC" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "The number of blocks in the data file" msgstr "Кількість блоків у файлі даних" -#: src/veritysetup.c:476 +#: src/veritysetup.c:486 msgid "blocks" msgstr "блоки" -#: src/veritysetup.c:477 +#: src/veritysetup.c:487 msgid "Path to device with error correction data" msgstr "Шлях до пристрою із даними для виправлення помилок" -#: src/veritysetup.c:477 src/integritysetup.c:549 +#: src/veritysetup.c:487 src/integritysetup.c:566 msgid "path" msgstr "шлях" -#: src/veritysetup.c:478 +#: src/veritysetup.c:488 msgid "Starting offset on the hash device" msgstr "Початковий відступ на пристрої хешу" -#: src/veritysetup.c:479 +#: src/veritysetup.c:489 msgid "Starting offset on the FEC device" msgstr "Початковий відступ на пристрої FEC" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "Hash algorithm" msgstr "Алгоритм хешування" -#: src/veritysetup.c:480 +#: src/veritysetup.c:490 msgid "string" msgstr "рядок" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "Salt" msgstr "Сіль" -#: src/veritysetup.c:481 +#: src/veritysetup.c:491 msgid "hex string" msgstr "шістнадцятковий рядок" -#: src/veritysetup.c:483 +#: src/veritysetup.c:493 msgid "Path to root hash signature file" msgstr "Шлях до файла підпису кореневого хешу" -#: src/veritysetup.c:484 +#: src/veritysetup.c:494 msgid "Restart kernel if corruption is detected" msgstr "Перезапустити ядро, якщо виявлено пошкодження" -#: src/veritysetup.c:485 +#: src/veritysetup.c:495 msgid "Panic kernel if corruption is detected" msgstr "Запустити паніку ядра, якщо виявлено пошкодження" -#: src/veritysetup.c:486 +#: src/veritysetup.c:496 msgid "Ignore corruption, log it only" msgstr "Ігнорувати пошкодження, лише записати повідомлення до журналу" -#: src/veritysetup.c:487 +#: src/veritysetup.c:497 msgid "Do not verify zeroed blocks" msgstr "Не перевіряти занулені блоки" -#: src/veritysetup.c:488 +#: src/veritysetup.c:498 msgid "Verify data block only the first time it is read" msgstr "Перевіряти блок даних лише під час його першого читання" -#: src/veritysetup.c:588 +#: src/veritysetup.c:600 msgid "Option --ignore-corruption, --restart-on-corruption or --ignore-zero-blocks is allowed only for open operation." msgstr "Параметри --ignore-corruption, --restart-on-corruption та --ignore-zero-blocks можна використовувати лише для дії з відкриття (open)." -#: src/veritysetup.c:593 +#: src/veritysetup.c:605 msgid "Option --root-hash-signature can be used only for open operation." msgstr "Параметром --root-hash-signature можна користуватися лише для дії з відкриття." -#: src/veritysetup.c:598 +#: src/veritysetup.c:610 msgid "Option --ignore-corruption and --restart-on-corruption cannot be used together." msgstr "Параметри --ignore-corruption і --restart-on-corruption не можна використовувати одночасно." -#: src/veritysetup.c:603 +#: src/veritysetup.c:615 msgid "Option --panic-on-corruption and --restart-on-corruption cannot be used together." msgstr "Параметри --panic-on-corruption і --restart-on-corruption не можна використовувати одночасно." -#: src/integritysetup.c:84 src/utils_password.c:305 +#: src/integritysetup.c:85 +#, c-format +msgid "Invalid key size. Maximum is %u bytes." +msgstr "Некоректний розмір ключа. Максимальний розмір дорівнює %u байтів." + +#: src/integritysetup.c:95 src/utils_password.c:339 #, c-format msgid "Cannot read keyfile %s." msgstr "Не вдалося прочитати файл ключа %s." -#: src/integritysetup.c:88 src/utils_password.c:310 +#: src/integritysetup.c:99 src/utils_password.c:344 #, c-format msgid "Cannot read %d bytes from keyfile %s." msgstr "Не вдалося прочитати %d байтів з файла ключа %s." -#: src/integritysetup.c:254 +#: src/integritysetup.c:266 #, c-format msgid "Formatted with tag size %u, internal integrity %s.\n" msgstr "Форматовано із розміром мітки %u, внутрішня цілісність %s.\n" -#: src/integritysetup.c:479 src/integritysetup.c:483 +#: src/integritysetup.c:492 src/integritysetup.c:496 msgid "" msgstr "<пристрій_цілісності>" -#: src/integritysetup.c:480 +#: src/integritysetup.c:493 msgid " " msgstr "<пристрій_цілісності> <назва>" -#: src/integritysetup.c:502 +#: src/integritysetup.c:515 #, c-format msgid "" "\n" @@ -3269,403 +3315,409 @@ "<назва> є пристроєм, який слід створити у %s\n" "<пристрій_цілісності> є пристроєм, на якому зберігаються дані із мітками цілісності\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 "" "\n" "Типові компільовані параметри dm-integrity:\n" "\tАлгоритм обчислення контрольної суми: %s\n" +"\tМаксимальний розмір файла ключа: %d кБ\n" -#: 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 "Кількість 512-байтових секторів на біт (режим бітової карти)." -#: 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 msgid "The size of the data integrity key" msgstr "Розмір ключа цілісності даних" -#: src/integritysetup.c:563 +#: src/integritysetup.c:580 msgid "Read the integrity key from a file" msgstr "Прочитати ключ цілісності з файла" -#: src/integritysetup.c:565 +#: src/integritysetup.c:582 msgid "Journal integrity algorithm" msgstr "Алгоритм забезпечення цілісності журналу" -#: src/integritysetup.c:566 +#: src/integritysetup.c:583 msgid "The size of the journal integrity key" msgstr "Розмір ключа цілісності журналу" -#: src/integritysetup.c:567 +#: src/integritysetup.c:584 msgid "Read the journal integrity key from a file" msgstr "Прочитати ключ цілісності журналу з файла" -#: src/integritysetup.c:569 +#: src/integritysetup.c:586 msgid "Journal encryption algorithm" msgstr "Алгоритм шифрування журналу" -#: src/integritysetup.c:570 +#: src/integritysetup.c:587 msgid "The size of the journal encryption key" msgstr "Розмір ключа шифрування журналу" -#: src/integritysetup.c:571 +#: src/integritysetup.c:588 msgid "Read the journal encryption key from a file" msgstr "Читати ключ шифрування журналу з файла" -#: 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 "Не захищати суперблок HMAC (застарілі ядра)" + +#: src/integritysetup.c:597 +msgid "Allow recalculating of volumes with HMAC keys (old kernels)" +msgstr "Дозволити повторне обчислення томів за допомогою ключів HMAC (застарілі ядра)" + +#: src/integritysetup.c:672 msgid "Option --integrity-recalculate can be used only for open action." msgstr "Параметр --integrity-recalculate можна використовувати лише під час дії з відкриття (open)." -#: 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 "Параметри --journal-size, --interleave-sectors, --sector-size, --tag-size та --no-wipe можна використовувати лише для дії з форматування." -#: src/integritysetup.c:675 +#: src/integritysetup.c:698 msgid "Invalid journal size specification." msgstr "Некоректна специфікація розміру журналу." -#: 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 msgid "Reencryption already in-progress." msgstr "Вже виконується повторне шифрування." -#: src/cryptsetup_reencrypt.c:208 +#: src/cryptsetup_reencrypt.c:226 #, c-format msgid "Cannot exclusively open %s, device in use." msgstr "Не можна відкрити %s у виключному режимі, пристрій вже використовується." -#: src/cryptsetup_reencrypt.c:222 src/cryptsetup_reencrypt.c:1135 +#: src/cryptsetup_reencrypt.c:240 src/cryptsetup_reencrypt.c:1153 msgid "Allocation of aligned memory failed." msgstr "Спроба розподілу вирівняних ділянок пам’яті зазнала невдачі." -#: src/cryptsetup_reencrypt.c:229 +#: src/cryptsetup_reencrypt.c:247 #, c-format msgid "Cannot read device %s." msgstr "Не вдалося виконати читання з пристрою %s." -#: src/cryptsetup_reencrypt.c:240 +#: src/cryptsetup_reencrypt.c:258 #, c-format msgid "Marking LUKS1 device %s unusable." msgstr "Позначаємо пристрій LUKS1 %s як непридатний." -#: src/cryptsetup_reencrypt.c:244 +#: src/cryptsetup_reencrypt.c:262 #, c-format msgid "Setting LUKS2 offline reencrypt flag on device %s." msgstr "Встановлюємо прапорець повторного шифрування LUKS2 з від'єднанням на пристрій %s." -#: src/cryptsetup_reencrypt.c:261 +#: src/cryptsetup_reencrypt.c:279 #, c-format msgid "Cannot write device %s." msgstr "Не вдалося виконати запис на пристрій %s." -#: src/cryptsetup_reencrypt.c:309 +#: src/cryptsetup_reencrypt.c:327 msgid "Cannot write reencryption log file." msgstr "Не вдалося записати файл журналу повторного шифрування." -#: src/cryptsetup_reencrypt.c:365 +#: src/cryptsetup_reencrypt.c:383 msgid "Cannot read reencryption log file." msgstr "Не вдалося прочитати файл журналу повторного шифрування." -#: src/cryptsetup_reencrypt.c:403 +#: src/cryptsetup_reencrypt.c:421 #, c-format msgid "Log file %s exists, resuming reencryption.\n" msgstr "Файл журналу %s вже існує, поновлюємо повторне шифрування.\n" -#: src/cryptsetup_reencrypt.c:452 +#: src/cryptsetup_reencrypt.c:470 msgid "Activating temporary device using old LUKS header." msgstr "Спроба задіяти тимчасовий пристрій за допомогою старого заголовка LUKS." -#: src/cryptsetup_reencrypt.c:462 +#: src/cryptsetup_reencrypt.c:480 msgid "Activating temporary device using new LUKS header." msgstr "Спроба задіяти тимчасовий пристрій за допомогою нового заголовка LUKS." -#: src/cryptsetup_reencrypt.c:472 +#: src/cryptsetup_reencrypt.c:490 msgid "Activation of temporary devices failed." msgstr "Спроба задіяти тимчасові пристрої зазнала невдачі." -#: src/cryptsetup_reencrypt.c:559 +#: src/cryptsetup_reencrypt.c:577 msgid "Failed to set data offset." msgstr "Не вдалося встановити відступ у даних." -#: src/cryptsetup_reencrypt.c:565 +#: src/cryptsetup_reencrypt.c:583 msgid "Failed to set metadata size." msgstr "Не вдалося встановити розмір метаданих." -#: src/cryptsetup_reencrypt.c:573 +#: src/cryptsetup_reencrypt.c:591 #, c-format msgid "New LUKS header for device %s created." msgstr "Створено новий заголовок LUKS для пристрою %s." -#: 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 "Ця версія cryptsetup-reencrypt не може обробляти новий тип вбудованих ключів %s." -#: 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 msgid "Failed to write activation flags to new header." msgstr "Не вдалося записати прапорці активації до нового заголовка." -#: src/cryptsetup_reencrypt.c:663 src/cryptsetup_reencrypt.c:667 +#: src/cryptsetup_reencrypt.c:681 src/cryptsetup_reencrypt.c:685 msgid "Failed to read requirements from backup header." msgstr "Не вдалося прочитати вимоги із резервного заголовка." -#: src/cryptsetup_reencrypt.c:705 +#: src/cryptsetup_reencrypt.c:723 #, c-format msgid "%s header backup of device %s created." msgstr "Створено резервну копію заголовка %s пристрою %s." -#: src/cryptsetup_reencrypt.c:768 +#: src/cryptsetup_reencrypt.c:786 msgid "Creation of LUKS backup headers failed." msgstr "Спроба створення заголовків резервних копій LUKS зазнала невдачі." -#: src/cryptsetup_reencrypt.c:901 +#: src/cryptsetup_reencrypt.c:919 #, c-format msgid "Cannot restore %s header on device %s." msgstr "Не вдалося відновити заголовок %s на пристрої %s." -#: src/cryptsetup_reencrypt.c:903 +#: src/cryptsetup_reencrypt.c:921 #, c-format msgid "%s header on device %s restored." msgstr "Відновлено заголовок %s на пристрої %s." -#: src/cryptsetup_reencrypt.c:1107 src/cryptsetup_reencrypt.c:1113 +#: src/cryptsetup_reencrypt.c:1125 src/cryptsetup_reencrypt.c:1131 msgid "Cannot open temporary LUKS device." msgstr "Неможливо відкрити тимчасовий пристрій LUKS." -#: src/cryptsetup_reencrypt.c:1118 src/cryptsetup_reencrypt.c:1123 +#: src/cryptsetup_reencrypt.c:1136 src/cryptsetup_reencrypt.c:1141 msgid "Cannot get device size." msgstr "Не вдалося отримати дані щодо розміру пристрою." -#: src/cryptsetup_reencrypt.c:1158 +#: src/cryptsetup_reencrypt.c:1176 msgid "IO error during reencryption." msgstr "Помилка введення-виведення під час повторного шифрування." -#: src/cryptsetup_reencrypt.c:1189 +#: src/cryptsetup_reencrypt.c:1207 msgid "Provided UUID is invalid." msgstr "Наданий UUID є некоректним." -#: src/cryptsetup_reencrypt.c:1423 +#: src/cryptsetup_reencrypt.c:1441 msgid "Cannot open reencryption log file." msgstr "Не вдалося відкрити файл журналу повторного шифрування." -#: 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 "Розшифровування не виконується. Наданий UUID можна використовувати лише для відновлення призупиненого процесу розшифровування." -#: src/cryptsetup_reencrypt.c:1504 +#: src/cryptsetup_reencrypt.c:1522 #, c-format msgid "Changed pbkdf parameters in keyslot %i." msgstr "Змінено параметри pbkdf у слоті ключа %i." -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "Reencryption block size" msgstr "Розмір блоку повторного шифрування" -#: src/cryptsetup_reencrypt.c:1616 +#: src/cryptsetup_reencrypt.c:1636 msgid "MiB" msgstr "МіБ" -#: src/cryptsetup_reencrypt.c:1620 +#: src/cryptsetup_reencrypt.c:1640 msgid "Do not change key, no data area reencryption" msgstr "Не змінювати ключ, не виконувати повторного шифрування області даних" -#: src/cryptsetup_reencrypt.c:1622 +#: src/cryptsetup_reencrypt.c:1642 msgid "Read new volume (master) key from file" msgstr "Прочитати новий ключ тому (основний ключ) з файла" -#: src/cryptsetup_reencrypt.c:1623 +#: src/cryptsetup_reencrypt.c:1643 msgid "PBKDF2 iteration time for LUKS (in ms)" msgstr "Тривалість ітерації PBKDF2 для LUKS (у мс)" -#: src/cryptsetup_reencrypt.c:1629 +#: src/cryptsetup_reencrypt.c:1649 msgid "Use direct-io when accessing devices" msgstr "Використовувати безпосереднє введення-виведення під час доступу до пристроїв" -#: src/cryptsetup_reencrypt.c:1630 +#: src/cryptsetup_reencrypt.c:1650 msgid "Use fsync after each block" msgstr "Використовувати fsync після кожного блоку" -#: src/cryptsetup_reencrypt.c:1631 +#: src/cryptsetup_reencrypt.c:1651 msgid "Update log file after every block" msgstr "Оновлювати файл журналу після кожного блоку" -#: src/cryptsetup_reencrypt.c:1632 +#: src/cryptsetup_reencrypt.c:1652 msgid "Use only this slot (others will be disabled)" msgstr "Використовувати лише цей слот (інші буде вимкнено)" -#: src/cryptsetup_reencrypt.c:1637 +#: src/cryptsetup_reencrypt.c:1657 msgid "Create new header on not encrypted device" msgstr "Створити новий заголовок на незашифрованому пристрої" -#: src/cryptsetup_reencrypt.c:1638 +#: src/cryptsetup_reencrypt.c:1658 msgid "Permanently decrypt device (remove encryption)" msgstr "Остаточно розшифрувати пристрій (скасувати шифрування)" -#: src/cryptsetup_reencrypt.c:1639 +#: src/cryptsetup_reencrypt.c:1659 msgid "The UUID used to resume decryption" msgstr "UUID, що використовується для відновлення розшифровування" -#: src/cryptsetup_reencrypt.c:1640 +#: src/cryptsetup_reencrypt.c:1660 msgid "Type of LUKS metadata: luks1, luks2" msgstr "Тип метаданих LUKS (luks1 або luks2)" -#: src/cryptsetup_reencrypt.c:1659 +#: src/cryptsetup_reencrypt.c:1679 msgid "[OPTION...] " msgstr "[ПАРАМЕТР...] <пристрій>" -#: src/cryptsetup_reencrypt.c:1667 +#: src/cryptsetup_reencrypt.c:1687 #, c-format msgid "Reencryption will change: %s%s%s%s%s%s." msgstr "Повторне шифрування призведе до зміни: %s%s%s%s%s%s." -#: src/cryptsetup_reencrypt.c:1668 +#: src/cryptsetup_reencrypt.c:1688 msgid "volume key" msgstr "ключ тому" -#: src/cryptsetup_reencrypt.c:1670 +#: src/cryptsetup_reencrypt.c:1690 msgid "set hash to " msgstr "встановити хеш у значення " -#: src/cryptsetup_reencrypt.c:1671 +#: src/cryptsetup_reencrypt.c:1691 msgid ", set cipher to " msgstr ", встановити шифрування " -#: src/cryptsetup_reencrypt.c:1675 +#: src/cryptsetup_reencrypt.c:1695 msgid "Argument required." msgstr "Слід вказати аргумент." -#: 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 "Розмір блоку повторного шифрування повинен належати діапазону від 1 МіБ до 64 МІБ." -#: src/cryptsetup_reencrypt.c:1730 +#: src/cryptsetup_reencrypt.c:1750 msgid "Maximum device reduce size is 64 MiB." msgstr "Максимальний розмір зменшення розміру пристрою дорівнює 64 МіБ." -#: src/cryptsetup_reencrypt.c:1737 +#: src/cryptsetup_reencrypt.c:1757 msgid "Option --new must be used together with --reduce-device-size or --header." msgstr "Параметр --new слід використовувати разом з --reduce-device-size або --header." -#: src/cryptsetup_reencrypt.c:1741 +#: src/cryptsetup_reencrypt.c:1761 msgid "Option --keep-key can be used only with --hash, --iter-time or --pbkdf-force-iterations." msgstr "Параметр --keep-key можна використовувати лише разом з параметром --hash --iter-time або --pbkdf-force-iterations." -#: src/cryptsetup_reencrypt.c:1745 +#: src/cryptsetup_reencrypt.c:1765 msgid "Option --new cannot be used together with --decrypt." msgstr "Параметр --new не можна використовувати разом з --decrypt." -#: src/cryptsetup_reencrypt.c:1749 +#: src/cryptsetup_reencrypt.c:1769 msgid "Option --decrypt is incompatible with specified parameters." msgstr "Параметр --decrypt є несумісним із вказаними параметрами." -#: src/cryptsetup_reencrypt.c:1753 +#: src/cryptsetup_reencrypt.c:1773 msgid "Option --uuid is allowed only together with --decrypt." msgstr "Параметр --uuid можна використовувати лише разом із --decrypt." -#: src/cryptsetup_reencrypt.c:1757 +#: src/cryptsetup_reencrypt.c:1777 msgid "Invalid luks type. Use one of these: 'luks', 'luks1' or 'luks2'." msgstr "Некоректний тип luks. Скористайтеся одним з таких типів: luks, luks1 або luks2." @@ -3706,32 +3758,32 @@ msgid "Command failed with code %i (%s).\n" msgstr "Спроба виконання команди завершилася повідомленням про помилку з кодом %i (%s).\n" -#: src/utils_tools.c:283 +#: src/utils_tools.c:284 #, c-format msgid "Key slot %i created." msgstr "Створено слот ключа %i." -#: src/utils_tools.c:285 +#: src/utils_tools.c:286 #, c-format msgid "Key slot %i unlocked." msgstr "Слот ключа %i розблоковано." -#: src/utils_tools.c:287 +#: src/utils_tools.c:288 #, c-format msgid "Key slot %i removed." msgstr "Слот ключа %i вилучено." -#: src/utils_tools.c:296 +#: src/utils_tools.c:297 #, c-format msgid "Token %i created." msgstr "Створено ключ %i." -#: src/utils_tools.c:298 +#: src/utils_tools.c:299 #, c-format msgid "Token %i removed." msgstr "Ключ %i вилучено." -#: src/utils_tools.c:464 +#: src/utils_tools.c:465 msgid "" "\n" "Wipe interrupted." @@ -3739,55 +3791,55 @@ "\n" "Витирання перервано." -#: src/utils_tools.c:475 +#: src/utils_tools.c:476 #, c-format msgid "WARNING: Device %s already contains a '%s' partition signature.\n" msgstr "Попередження: пристрій %s вже містить підпис розділу «%s».\n" -#: src/utils_tools.c:483 +#: src/utils_tools.c:484 #, c-format msgid "WARNING: Device %s already contains a '%s' superblock signature.\n" msgstr "Попередження: пристрій %s вже містить підпис суперблоку «%s».\n" -#: src/utils_tools.c:504 src/utils_tools.c:568 +#: src/utils_tools.c:505 src/utils_tools.c:569 msgid "Failed to initialize device signature probes." msgstr "Не вдалося ініціалізувати зондування підписів пристроїв." -#: src/utils_tools.c:548 +#: src/utils_tools.c:549 #, c-format msgid "Failed to stat device %s." msgstr "Не вдалося зібрати статистичні дані щодо пристрою %s." -#: 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 "Пристрій %s використовується сторонньою програмою. Продовження дій з форматування неможливе." -#: src/utils_tools.c:563 +#: src/utils_tools.c:564 #, c-format msgid "Failed to open file %s in read/write mode." msgstr "Не вдалося відкрити файл %s у режимі читання-запису." -#: src/utils_tools.c:577 +#: src/utils_tools.c:578 #, c-format msgid "Existing '%s' partition signature (offset: % bytes) on device %s will be wiped." msgstr "Наявний підпис розділу «%s» (зміщення: % байтів) на пристрої %s буде витерто." -#: src/utils_tools.c:580 +#: src/utils_tools.c:581 #, c-format msgid "Existing '%s' superblock signature (offset: % bytes) on device %s will be wiped." msgstr "Наявний підпис суперблоку «%s» (зміщення: % байтів) на пристрої %s буде витерто." -#: src/utils_tools.c:583 +#: src/utils_tools.c:584 msgid "Failed to wipe device signature." msgstr "Не вдалося витерти підпис пристрою." -#: src/utils_tools.c:590 +#: src/utils_tools.c:591 #, c-format msgid "Failed to probe device %s for a signature." msgstr "Не вдалося виконати зондування пристрою %s з метою виявлення підпису." -#: src/utils_tools.c:629 +#: src/utils_tools.c:622 msgid "" "\n" "Reencryption interrupted." @@ -3795,7 +3847,7 @@ "\n" "Повторне шифрування перервано." -#: src/utils_password.c:43 src/utils_password.c:75 +#: src/utils_password.c:43 src/utils_password.c:76 #, c-format msgid "Cannot check password quality: %s" msgstr "Не вдалося перевірити якість пароля: %s" @@ -3814,46 +3866,46 @@ msgid "Password quality check failed: Bad passphrase (%s)" msgstr "Помилка під час спроби оцінити якість пароля: некоректний пароль (%s)" -#: src/utils_password.c:193 src/utils_password.c:208 +#: src/utils_password.c:228 src/utils_password.c:242 msgid "Error reading passphrase from terminal." msgstr "Помилка під час читання пароля з термінала." -#: src/utils_password.c:206 +#: src/utils_password.c:240 msgid "Verify passphrase: " msgstr "Перевірка пароля: " -#: src/utils_password.c:213 +#: src/utils_password.c:247 msgid "Passphrases do not match." msgstr "Паролі не збігаються." -#: src/utils_password.c:250 +#: src/utils_password.c:284 msgid "Cannot use offset with terminal input." msgstr "Не можна використовувати відступ у даних, що надходять з термінала." -#: src/utils_password.c:253 +#: src/utils_password.c:287 #, c-format msgid "Enter passphrase: " msgstr "Введіть пароль: " -#: src/utils_password.c:256 +#: src/utils_password.c:290 #, c-format msgid "Enter passphrase for %s: " msgstr "Введіть пароль до %s: " -#: src/utils_password.c:287 +#: src/utils_password.c:321 msgid "No key available with this passphrase." msgstr "Для цього пароля немає відповідного ключа." -#: 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 #, c-format msgid "Cannot open keyfile %s for write." msgstr "Не вдалося відкрити файл ключа %s для запису." -#: src/utils_password.c:335 +#: src/utils_password.c:372 #, c-format msgid "Cannot write to keyfile %s." msgstr "Не вдалося виконати запису до файла ключа %s." @@ -3896,5 +3948,14 @@ msgid "Failed to write JSON file." msgstr "Не вдалося записати файл JSON." +#~ msgid "WARNING: Locking directory %s/%s is missing!\n" +#~ msgstr "ПОПЕРЕДЖЕННЯ: не вистачає блокування каталогу %s/%s!\n" + +#~ msgid "Invalid size parameters for verity device." +#~ msgstr "Некоректні параметри розміру для пристрою перевірки." + +#~ msgid "Integrity algorithm must be specified if integrity key is used." +#~ msgstr "Якщо використано ключ цілісності, має бути вказано алгоритм забезпечення цілісності." + #~ msgid "Wrong key size." #~ msgstr "Помилковий розмір ключа." diff -Nru cryptsetup-2.3.4/README cryptsetup-2.3.6/README --- cryptsetup-2.3.4/README 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/README 2021-05-28 04:57:08.000000000 -0500 @@ -15,6 +15,7 @@ E-MAIL: dm-crypt@saout.de URL: https://www.saout.de/mailman/listinfo/dm-crypt + ARCHIVE: https://lore.kernel.org/dm-crypt/ DOWNLOAD: diff -Nru cryptsetup-2.3.4/README.md cryptsetup-2.3.6/README.md --- cryptsetup-2.3.4/README.md 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/README.md 2021-05-28 04:57:08.000000000 -0500 @@ -44,19 +44,13 @@ -------- All release tarballs and release notes are hosted on [kernel.org](https://www.kernel.org/pub/linux/utils/cryptsetup/). -**The latest stable cryptsetup version is 2.3.2** - * [cryptsetup-2.3.2.tar.xz](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/cryptsetup-2.3.2.tar.xz) - * Signature [cryptsetup-2.3.2.tar.sign](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/cryptsetup-2.3.2.tar.sign) +**The latest stable cryptsetup version is 2.3.5** + * [cryptsetup-2.3.5.tar.xz](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/cryptsetup-2.3.5.tar.xz) + * Signature [cryptsetup-2.3.5.tar.sign](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/cryptsetup-2.3.5.tar.sign) _(You need to decompress file first to check signature.)_ - * [Cryptsetup 2.3.2 Release Notes](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/v2.3.2-ReleaseNotes). + * [Cryptsetup 2.3.5 Release Notes](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/v2.3.5-ReleaseNotes). Previous versions - * [Version 2.3.1](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/cryptsetup-2.3.1.tar.xz) - - [Signature](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/cryptsetup-2.3.1.tar.sign) - - [Release Notes](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.3/v2.3.1-ReleaseNotes). - * [Version 2.2.2](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.2/cryptsetup-2.2.2.tar.xz) - - [Signature](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.2/cryptsetup-2.2.2.tar.sign) - - [Release Notes](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.2/v2.2.2-ReleaseNotes). * [Version 2.0.6](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.0/cryptsetup-2.0.6.tar.xz) - [Signature](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.0/cryptsetup-2.0.6.tar.sign) - [Release Notes](https://www.kernel.org/pub/linux/utils/cryptsetup/v2.0/v2.0.6-ReleaseNotes). @@ -82,5 +76,5 @@ If you want to subscribe just send an empty mail to [dm-crypt-subscribe@saout.de](mailto:dm-crypt-subscribe@saout.de). -You can also browse [list archive](https://www.saout.de/pipermail/dm-crypt/) or read it through -[web interface](https://marc.info/?l=dm-crypt). +You can also browse [list archive](https://www.saout.de/pipermail/dm-crypt/) or read and search it through +[web interface on lore.kernel.org](https://lore.kernel.org/dm-crypt/) or alternatively on [marc.info](https://marc.info/?l=dm-crypt). diff -Nru cryptsetup-2.3.4/src/cryptsetup.c cryptsetup-2.3.6/src/cryptsetup.c --- cryptsetup-2.3.4/src/cryptsetup.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/cryptsetup.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -24,22 +24,43 @@ #include "cryptsetup.h" #include -static const char *opt_cipher = NULL; -static const char *opt_keyslot_cipher = NULL; -static const char *opt_hash = NULL; -static int opt_verify_passphrase = 0; +static char *opt_cipher = NULL; +static char *opt_keyslot_cipher = NULL; +static char *opt_hash = NULL; +static char *opt_json_file = NULL; +static char *opt_key_file = NULL; +static char *opt_keyfile_stdin = NULL; +static char *opt_keyfiles[MAX_KEYFILES]; +static char *opt_master_key_file = NULL; +static char *opt_header_backup_file = NULL; +static char *opt_uuid = NULL; +static char *opt_header_device = NULL; +static char *opt_type = NULL; +static char *opt_pbkdf = NULL; +static char *opt_priority = NULL; /* normal */ +static char *opt_integrity = NULL; /* none */ +static char *opt_key_description = NULL; +static char *opt_label = NULL; +static char *opt_subsystem = NULL; +static char *opt_active_name = NULL; +static char *opt_resilience_mode = NULL; /* default value "checksum" */ +static char *opt_resilience_hash = NULL; /* default value "sha256" */ + +/* helper strings converted to uint64_t later */ +static char *opt_reduce_size_str = NULL; +static char *opt_hotzone_size_str = NULL; +static char *opt_device_size_str = NULL; +static char *opt_luks2_metadata_size_str = NULL; +static char *opt_luks2_keyslots_size_str = NULL; -static const char *opt_json_file = NULL; -static const char *opt_key_file = NULL; -static const char *opt_keyfile_stdin = NULL; -static int opt_keyfiles_count = 0; -static const char *opt_keyfiles[MAX_KEYFILES]; +static uint64_t opt_reduce_size = 0; +static uint64_t opt_hotzone_size = 0; +static uint64_t opt_device_size = 0; +static uint64_t opt_luks2_metadata_size = 0; +static uint64_t opt_luks2_keyslots_size = 0; -static const char *opt_master_key_file = NULL; -static const char *opt_header_backup_file = NULL; -static const char *opt_uuid = NULL; -static const char *opt_header_device = NULL; -static const char *opt_type = "luks"; +static int opt_keyfiles_count = 0; +static int opt_verify_passphrase = 0; static int opt_key_size = 0; static int opt_keyslot_key_size = 0; static long opt_keyfile_size = 0; @@ -76,57 +97,68 @@ static int opt_deferred_remove = 0; static int opt_serialize_memory_hard_pbkdf = 0; //FIXME: check uint32 overflow for long type -static const char *opt_pbkdf = NULL; static long opt_pbkdf_memory = DEFAULT_LUKS2_MEMORY_KB; static long opt_pbkdf_parallel = DEFAULT_LUKS2_PARALLEL_THREADS; static long opt_pbkdf_iterations = 0; static int opt_iteration_time = 0; static int opt_disable_locks = 0; static int opt_disable_keyring = 0; -static const char *opt_priority = NULL; /* normal */ -static const char *opt_integrity = NULL; /* none */ static int opt_integrity_nojournal = 0; static int opt_integrity_no_wipe = 0; static int opt_integrity_legacy_padding = 0; -static const char *opt_key_description = NULL; static int opt_sector_size = 0; static int opt_iv_large_sectors = 0; static int opt_persistent = 0; -static const char *opt_label = NULL; -static const char *opt_subsystem = NULL; static int opt_unbound = 0; static int opt_refresh = 0; /* LUKS2 reencryption parameters */ -static const char *opt_active_name = NULL; -static const char *opt_resilience_mode = "checksum"; // TODO: default resilience -static const char *opt_resilience_hash = "sha256"; // TODO: default checksum hash static int opt_encrypt = 0; static int opt_reencrypt_init_only = 0; static int opt_reencrypt_resume_only = 0; static int opt_decrypt = 0; -static const char *opt_reduce_size_str = NULL; -static uint64_t opt_reduce_size = 0; - -static const char *opt_hotzone_size_str = NULL; -static uint64_t opt_hotzone_size = 0; - -static const char *opt_device_size_str = NULL; -static uint64_t opt_device_size = 0; - /* do not set from command line, use helpers above */ static int64_t opt_data_shift; - -static const char *opt_luks2_metadata_size_str = NULL; -static uint64_t opt_luks2_metadata_size = 0; -static const char *opt_luks2_keyslots_size_str = NULL; -static uint64_t opt_luks2_keyslots_size = 0; +static const char *device_type = "luks"; +static const char *set_pbkdf = NULL; static const char **action_argv; static int action_argc; static const char *null_action_argv[] = {NULL, NULL}; +void tools_cleanup(void) +{ + FREE_AND_NULL(opt_cipher); + FREE_AND_NULL(opt_keyslot_cipher); + FREE_AND_NULL(opt_hash); + FREE_AND_NULL(opt_json_file); + FREE_AND_NULL(opt_key_file); + FREE_AND_NULL(opt_keyfile_stdin); + FREE_AND_NULL(opt_master_key_file); + FREE_AND_NULL(opt_header_backup_file); + FREE_AND_NULL(opt_uuid); + FREE_AND_NULL(opt_header_device); + FREE_AND_NULL(opt_type); + FREE_AND_NULL(opt_pbkdf); + FREE_AND_NULL(opt_priority); + FREE_AND_NULL(opt_integrity); + FREE_AND_NULL(opt_key_description); + FREE_AND_NULL(opt_label); + FREE_AND_NULL(opt_subsystem); + FREE_AND_NULL(opt_active_name); + FREE_AND_NULL(opt_resilience_mode); + FREE_AND_NULL(opt_resilience_hash); + FREE_AND_NULL(opt_reduce_size_str); + FREE_AND_NULL(opt_hotzone_size_str); + FREE_AND_NULL(opt_device_size_str); + FREE_AND_NULL(opt_luks2_metadata_size_str); + FREE_AND_NULL(opt_luks2_keyslots_size_str); + + while (opt_keyfiles_count) + free(opt_keyfiles[--opt_keyfiles_count]); +} + static const char *uuid_or_device_header(const char **data_device) { if (data_device) @@ -440,7 +472,7 @@ unsigned long long tmp_pim_ull = 0; r = tools_get_key(_("Enter VeraCrypt PIM: "), - CONST_CAST(char**)&tmp_pim_nptr, + &tmp_pim_nptr, &tmp_pim_size, 0, 0, opt_keyfile_stdin, opt_timeout, _verify_passphrase(0), 0, cd); if (r < 0) @@ -457,7 +489,7 @@ log_err(_("Invalid PIM value: outside of range.")); r = -ERANGE; } - crypt_safe_free(CONST_CAST(char*)tmp_pim_nptr); + crypt_safe_free(tmp_pim_nptr); if (r < 0) continue; @@ -500,7 +532,7 @@ { struct crypt_device *cd = NULL; struct crypt_params_tcrypt params = { - .keyfiles = opt_keyfiles, + .keyfiles = CONST_CAST(const char **)opt_keyfiles, .keyfiles_count = opt_keyfiles_count, .flags = CRYPT_TCRYPT_LEGACY_MODES | (opt_veracrypt ? CRYPT_TCRYPT_VERA_MODES : 0), @@ -512,7 +544,8 @@ activated_name = opt_test_passphrase ? NULL : action_argv[1]; - if ((r = crypt_init(&cd, action_argv[0]))) + r = crypt_init_data_device(&cd, opt_header_device ?: action_argv[0], action_argv[0]); + if (r < 0) goto out; r = tcrypt_load(cd, ¶ms); @@ -618,15 +651,15 @@ { struct crypt_device *cd = NULL; struct crypt_params_tcrypt params = { - .keyfiles = opt_keyfiles, + .keyfiles = CONST_CAST(const char **)opt_keyfiles, .keyfiles_count = opt_keyfiles_count, .flags = CRYPT_TCRYPT_LEGACY_MODES | (opt_veracrypt ? CRYPT_TCRYPT_VERA_MODES : 0), .veracrypt_pim = (opt_veracrypt_pim > 0) ? opt_veracrypt_pim : 0, }; int r; - - if ((r = crypt_init(&cd, action_argv[0]))) + r = crypt_init_data_device(&cd, opt_header_device ?: action_argv[0], action_argv[0]); + if (r < 0) goto out; r = tcrypt_load(cd, ¶ms); @@ -715,7 +748,9 @@ r = crypt_activate_by_token(cd, NULL, opt_token, NULL, CRYPT_ACTIVATE_KEYRING_KEY); tools_keyslot_msg(r, UNLOCKED); - if (r < 0 && opt_token_only) + if (r >= 0) + goto resize; + else if (opt_token_only) goto out; r = tools_get_key(NULL, &password, &passwordLen, @@ -731,7 +766,7 @@ tools_keyslot_msg(r, UNLOCKED); crypt_safe_free(password); } - +resize: if (opt_device_size) opt_size = opt_device_size / SECTOR_SIZE; @@ -961,10 +996,10 @@ int i, r; log_std(_("# Tests are approximate using memory only (no storage IO).\n")); - if (opt_pbkdf || opt_hash) { - if (!opt_pbkdf && opt_hash) - opt_pbkdf = CRYPT_KDF_PBKDF2; - r = action_benchmark_kdf(opt_pbkdf, opt_hash, key_size); + if (set_pbkdf || opt_hash) { + if (!set_pbkdf && opt_hash) + set_pbkdf = CRYPT_KDF_PBKDF2; + r = action_benchmark_kdf(set_pbkdf, opt_hash, key_size); } else if (opt_cipher) { r = crypt_parse_name_and_mode(opt_cipher, cipher, NULL, cipher_mode); if (r < 0) { @@ -1005,8 +1040,10 @@ /* TRANSLATORS: The string is header of a table and must be exactly (right side) aligned. */ log_std(_("# Algorithm | Key | Encryption | Decryption\n")); - snprintf(cipher, MAX_CIPHER_LEN, "%s-%s", - bciphers[i].cipher, bciphers[i].mode); + if (snprintf(cipher, MAX_CIPHER_LEN, "%s-%s", + bciphers[i].cipher, bciphers[i].mode) < 0) + r = -EINVAL; + if (!r) log_std("%15s %9zub %10.1f MiB/s %10.1f MiB/s\n", cipher, bciphers[i].key_size*8, enc_mbr, dec_mbr); @@ -1036,7 +1073,7 @@ if (!pbkdf_default) return -EINVAL; - pbkdf.type = opt_pbkdf ?: pbkdf_default->type; + pbkdf.type = set_pbkdf ?: pbkdf_default->type; pbkdf.hash = opt_hash ?: pbkdf_default->hash; pbkdf.time_ms = (uint32_t)opt_iteration_time ?: pbkdf_default->time_ms; if (strcmp(pbkdf.type, CRYPT_KDF_PBKDF2)) { @@ -1063,11 +1100,17 @@ if (!cipher) return -EINVAL; + if (crypt_is_cipher_null(cipher)) { + log_dbg("Keyslot %d uses cipher_null. Replacing with default encryption in new keyslot.", keyslot); + cipher = DEFAULT_LUKS2_KEYSLOT_CIPHER; + key_size = DEFAULT_LUKS2_KEYSLOT_KEYBITS / 8; + } + if (crypt_keyslot_set_encryption(cd, cipher, key_size)) return -EINVAL; /* if requested any of those just reinitialize context pbkdf */ - if (opt_pbkdf || opt_hash || opt_pbkdf_iterations || opt_iteration_time) + if (set_pbkdf || opt_hash || opt_pbkdf_iterations || opt_iteration_time) return set_pbkdf_params(cd, CRYPT_LUKS2); if (crypt_keyslot_get_pbkdf(cd, keyslot, &pbkdf)) @@ -1139,7 +1182,7 @@ goto out; crypt_set_log_callback(cd, quiet_log, NULL); - r = crypt_load(cd, luksType(opt_type), NULL); + r = crypt_load(cd, luksType(device_type), NULL); crypt_set_log_callback(cd, tool_log, NULL); if (r == 0) { log_verbose(_("No known problems detected for LUKS header.")); @@ -1153,7 +1196,7 @@ r = yesDialog(_("Really try to repair LUKS device header?"), _("Operation aborted.\n")) ? 0 : -EINVAL; if (r == 0) - r = crypt_repair(cd, luksType(opt_type), NULL); + r = crypt_repair(cd, luksType(device_type), NULL); skip_repair: if (!r && crypt_get_type(cd) && !strcmp(crypt_get_type(cd), CRYPT_LUKS2)) r = _do_luks2_reencrypt_recovery(cd); @@ -1202,6 +1245,21 @@ return !str ? 0 : strcmp(str, expected); } +static int get_adjusted_key_size(const char *cipher_mode, uint32_t default_size_bits, int integrity_keysize) +{ + uint32_t keysize_bits = opt_key_size; + +#ifdef ENABLE_LUKS_ADJUST_XTS_KEYSIZE + if (!opt_key_size && !strncmp(cipher_mode, "xts-", 4)) { + if (default_size_bits == 128) + keysize_bits = 256; + else if (default_size_bits == 256) + keysize_bits = 512; + } +#endif + return (keysize_bits ?: default_size_bits) / 8 + integrity_keysize; +} + static int _luksFormat(struct crypt_device **r_cd, char **r_password, size_t *r_passwordLen) { int r = -EINVAL, keysize, integrity_keysize = 0, fd, created = 0; @@ -1225,7 +1283,7 @@ }; void *params; - type = luksType(opt_type); + type = luksType(device_type); if (!type) type = crypt_get_default_type(); @@ -1254,8 +1312,8 @@ /* Create header file (must contain at least one sector)? */ if (opt_header_device && stat(opt_header_device, &st) < 0 && errno == ENOENT) { if (!opt_batch_mode && - !yesDialog("Header file does not exist, do you want to create it?", - _("Operation aborted.\n"))) + !yesDialog(_("Header file does not exist, do you want to create it?"), + _("Operation aborted.\n"))) return -EPERM; log_dbg("Creating header file."); @@ -1293,7 +1351,7 @@ } /* Never call pwquality if using null cipher */ - if (tools_is_cipher_null(cipher)) + if (crypt_is_cipher_null(cipher)) opt_force_password = 1; if ((r = crypt_init(&cd, header_device))) { @@ -1334,15 +1392,7 @@ goto out; } -#ifdef ENABLE_LUKS_ADJUST_XTS_KEYSIZE - if (!opt_key_size && !strncmp(cipher_mode, "xts-", 4)) { - if (DEFAULT_LUKS1_KEYBITS == 128) - opt_key_size = 256; - else if (DEFAULT_LUKS1_KEYBITS == 256) - opt_key_size = 512; - } -#endif - keysize = (opt_key_size ?: DEFAULT_LUKS1_KEYBITS) / 8 + integrity_keysize; + keysize = get_adjusted_key_size(cipher_mode, DEFAULT_LUKS1_KEYBITS, integrity_keysize); if (opt_random) crypt_set_rng_type(cd, CRYPT_RNG_RANDOM); @@ -1441,7 +1491,7 @@ if ((r = crypt_init_data_device(&cd, header_device, data_device))) goto out; - if ((r = crypt_load(cd, luksType(opt_type), NULL))) { + if ((r = crypt_load(cd, luksType(device_type), NULL))) { log_err(_("Device %s is not a valid LUKS device."), header_device); goto out; @@ -1567,7 +1617,7 @@ crypt_set_confirm_callback(cd, yesDialog, NULL); - if ((r = crypt_load(cd, luksType(opt_type), NULL))) { + if ((r = crypt_load(cd, luksType(device_type), NULL))) { log_err(_("Device %s is not a valid LUKS device."), uuid_or_device_header(NULL)); goto out; @@ -1624,7 +1674,7 @@ crypt_set_confirm_callback(cd, yesDialog, NULL); - if ((r = crypt_load(cd, luksType(opt_type), NULL))) { + if ((r = crypt_load(cd, luksType(device_type), NULL))) { log_err(_("Device %s is not a valid LUKS device."), uuid_or_device_header(NULL)); goto out; @@ -1691,7 +1741,7 @@ goto out; /* Never call pwquality if using null cipher */ - if (tools_is_cipher_null(crypt_get_cipher(cd))) + if (crypt_is_cipher_null(crypt_get_cipher(cd))) opt_force_password = 1; keysize = opt_key_size / 8; @@ -1747,7 +1797,7 @@ crypt_set_confirm_callback(cd, yesDialog, NULL); - if ((r = crypt_load(cd, luksType(opt_type), NULL))) { + if ((r = crypt_load(cd, luksType(device_type), NULL))) { log_err(_("Device %s is not a valid LUKS device."), uuid_or_device_header(NULL)); goto out; @@ -1758,7 +1808,7 @@ goto out; /* Never call pwquality if using null cipher */ - if (tools_is_cipher_null(crypt_get_cipher(cd))) + if (crypt_is_cipher_null(crypt_get_cipher(cd))) opt_force_password = 1; keysize = crypt_get_volume_key_size(cd); @@ -1850,7 +1900,7 @@ if ((r = crypt_init(&cd, uuid_or_device_header(NULL)))) goto out; - if ((r = crypt_load(cd, luksType(opt_type), NULL))) { + if ((r = crypt_load(cd, luksType(device_type), NULL))) { log_err(_("Device %s is not a valid LUKS device."), uuid_or_device_header(NULL)); goto out; @@ -1861,7 +1911,7 @@ goto out; /* Never call pwquality if using null cipher */ - if (tools_is_cipher_null(crypt_get_cipher(cd))) + if (crypt_is_cipher_null(crypt_get_cipher(cd))) opt_force_password = 1; r = set_pbkdf_params(cd, crypt_get_type(cd)); @@ -1968,7 +2018,7 @@ goto out; crypt_set_log_callback(cd, quiet_log, NULL); - r = crypt_load(cd, luksType(opt_type), NULL); + r = crypt_load(cd, luksType(device_type), NULL); out: crypt_free(cd); return r; @@ -1985,7 +2035,7 @@ crypt_set_confirm_callback(cd, yesDialog, _("Operation aborted.\n")); - if ((r = crypt_load(cd, luksType(opt_type), NULL))) + if ((r = crypt_load(cd, luksType(device_type), NULL))) goto out; if (opt_uuid) @@ -2144,7 +2194,7 @@ if ((r = crypt_init(&cd, uuid_or_device_header(NULL)))) goto out; - if ((r = crypt_load(cd, luksType(opt_type), NULL))) { + if ((r = crypt_load(cd, luksType(device_type), NULL))) { log_err(_("Device %s is not a valid LUKS device."), uuid_or_device_header(NULL)); goto out; @@ -2167,8 +2217,11 @@ int r; r = crypt_init_by_name_and_header(&cd, action_argv[0], uuid_or_device(opt_header_device)); - if (!r) + if (!r) { r = crypt_suspend(cd, action_argv[0]); + if (r == -ENODEV) + log_err(_("%s is not active %s device name."), action_argv[0], "LUKS"); + } crypt_free(cd); return r; @@ -2180,12 +2233,25 @@ char *password = NULL; size_t passwordLen; int r, tries; + const char *type, *req_type = luksType(device_type); + + if (req_type && strcmp(req_type, CRYPT_LUKS1) && strcmp(req_type, CRYPT_LUKS2)) + return -EINVAL; if ((r = crypt_init_by_name_and_header(&cd, action_argv[0], uuid_or_device(opt_header_device)))) + return r; + + r = -EINVAL; + type = crypt_get_type(cd); + if (!type || (strcmp(type, CRYPT_LUKS1) && strcmp(type, CRYPT_LUKS2))) { + log_err(_("%s is not active LUKS device name or header is missing."), action_argv[0]); goto out; + } - if ((r = crypt_load(cd, luksType(opt_type), NULL))) + if (req_type && strcmp(req_type, crypt_get_type(cd))) { + log_err(_("%s is not active %s device name."), action_argv[0], req_type); goto out; + } tries = (tools_is_stdin(opt_key_file) && isatty(STDIN_FILENO)) ? opt_tries : 1; do { @@ -2289,38 +2355,38 @@ static int action_open(void) { - if (opt_refresh && !opt_type) + if (opt_refresh && !device_type) /* read device type from active mapping */ - opt_type = _get_device_type(); + device_type = _get_device_type(); - if (!opt_type) + if (!device_type) return -EINVAL; - if (!strcmp(opt_type, "luks") || - !strcmp(opt_type, "luks1") || - !strcmp(opt_type, "luks2")) { + if (!strcmp(device_type, "luks") || + !strcmp(device_type, "luks1") || + !strcmp(device_type, "luks2")) { if (action_argc < 2 && (!opt_test_passphrase && !opt_refresh)) goto args; return action_open_luks(); - } else if (!strcmp(opt_type, "plain")) { + } else if (!strcmp(device_type, "plain")) { if (action_argc < 2 && !opt_refresh) goto args; return action_open_plain(); - } else if (!strcmp(opt_type, "loopaes")) { + } else if (!strcmp(device_type, "loopaes")) { if (action_argc < 2 && !opt_refresh) goto args; return action_open_loopaes(); - } else if (!strcmp(opt_type, "tcrypt")) { + } else if (!strcmp(device_type, "tcrypt")) { if (action_argc < 2 && !opt_test_passphrase) goto args; return action_open_tcrypt(); - } else if (!strcmp(opt_type, "bitlk")) { + } else if (!strcmp(device_type, "bitlk")) { if (action_argc < 2 && !opt_test_passphrase) goto args; return action_open_bitlk(); } - log_err(_("Unrecognized metadata device type %s."), opt_type); + log_err(_("Unrecognized metadata device type %s."), device_type); return -EINVAL; args: log_err(_("Command requires device and mapped name as arguments.")); @@ -2339,7 +2405,7 @@ crypt_set_confirm_callback(cd, yesDialog, NULL); - if ((r = crypt_load(cd, luksType(opt_type), NULL))) { + if ((r = crypt_load(cd, luksType(device_type), NULL))) { log_err(_("Device %s is not a valid LUKS device."), uuid_or_device_header(NULL)); goto out; @@ -2359,8 +2425,10 @@ /* Safety check */ max = crypt_keyslot_max(crypt_get_type(cd)); - if (max <= 0) - return -EINVAL; + if (max <= 0) { + r = -EINVAL; + goto out; + } for (i = 0; i < max; i++) { ki = crypt_keyslot_status(cd, i); @@ -2384,9 +2452,9 @@ const char *to_type, *from_type; int r; - if (!strcmp(opt_type, "luks2")) { + if (!strcmp(device_type, "luks2")) { to_type = CRYPT_LUKS2; - } else if (!strcmp(opt_type, "luks1")) { + } else if (!strcmp(device_type, "luks1")) { to_type = CRYPT_LUKS1; } else { log_err(_("Invalid LUKS type, only luks1 and luks2 are supported.")); @@ -2705,8 +2773,8 @@ char dm_name[PATH_MAX] = {}, *password = NULL; const char *active_name = NULL; struct crypt_params_reencrypt params = { - .resilience = opt_resilience_mode, - .hash = opt_resilience_hash, + .resilience = opt_resilience_mode ?: "checksum", + .hash = opt_resilience_hash ?: "sha256", .max_hotzone_size = opt_hotzone_size / SECTOR_SIZE, .device_size = opt_device_size / SECTOR_SIZE, .flags = CRYPT_REENCRYPT_RESUME_ONLY @@ -2750,8 +2818,8 @@ struct crypt_params_reencrypt params = { .mode = CRYPT_REENCRYPT_ENCRYPT, .direction = opt_data_shift < 0 ? CRYPT_REENCRYPT_BACKWARD : CRYPT_REENCRYPT_FORWARD, - .resilience = opt_resilience_mode, - .hash = opt_resilience_hash, + .resilience = opt_resilience_mode ?: "checksum", + .hash = opt_resilience_hash ?: "sha256", .max_hotzone_size = opt_hotzone_size / SECTOR_SIZE, .device_size = opt_device_size / SECTOR_SIZE, .luks2 = &luks2_params, @@ -2760,7 +2828,7 @@ _set_reencryption_flags(¶ms.flags); - type = luksType(opt_type); + type = luksType(device_type); if (!type) type = crypt_get_default_type(); @@ -2800,7 +2868,8 @@ if (!opt_uuid) { uuid_generate(uuid); uuid_unparse(uuid, uuid_str); - opt_uuid = uuid_str; + if (!(opt_uuid = strdup(uuid_str))) + return -ENOMEM; } /* Check the data device is not LUKS device already */ @@ -2821,7 +2890,10 @@ } if (!opt_header_device) { - snprintf(header_file, sizeof(header_file), "LUKS2-temp-%s.new", opt_uuid); + r = snprintf(header_file, sizeof(header_file), "LUKS2-temp-%s.new", opt_uuid); + if (r < 0 || (size_t)r >= sizeof(header_file)) + return -EINVAL; + fd = open(header_file, O_CREAT|O_EXCL|O_WRONLY, S_IRUSR|S_IWUSR); if (fd == -1) { if (errno == EEXIST) @@ -2839,7 +2911,10 @@ goto err; } - opt_header_device = header_file; + if (!(opt_header_device = strdup(header_file))) { + r = -ENOMEM; + goto err; + } /* * FIXME: just override offset here, but we should support both. * offset and implicit offset via data shift (lvprepend?) @@ -2925,14 +3000,20 @@ struct crypt_params_reencrypt params = { .mode = CRYPT_REENCRYPT_DECRYPT, .direction = opt_data_shift > 0 ? CRYPT_REENCRYPT_FORWARD : CRYPT_REENCRYPT_BACKWARD, - .resilience = opt_data_shift ? "datashift" : opt_resilience_mode, - .hash = opt_resilience_hash, + .resilience = opt_data_shift ? "datashift" : (opt_resilience_mode ?: "checksum"), + .hash = opt_resilience_hash ?: "sha256", .data_shift = imaxabs(opt_data_shift) / SECTOR_SIZE, .device_size = opt_device_size / SECTOR_SIZE, .max_hotzone_size = opt_hotzone_size / SECTOR_SIZE, }; size_t passwordLen; + if (!crypt_get_metadata_device_name(cd) || !crypt_get_device_name(cd) || + !strcmp(crypt_get_metadata_device_name(cd), crypt_get_device_name(cd))) { + log_err(_("LUKS2 decryption is supported with detached header device only.")); + return -ENOTSUP; + } + _set_reencryption_flags(¶ms.flags); r = tools_get_key(NULL, &password, &passwordLen, @@ -3097,7 +3178,8 @@ if (opt_key_slot == CRYPT_ANY_SLOT) { for (i = 0; (size_t)i < kp_size; i++) { - snprintf(msg, sizeof(msg), _("Enter passphrase for key slot %d: "), i); + if (snprintf(msg, sizeof(msg), _("Enter passphrase for key slot %d: "), i) < 0) + return -EINVAL; r = init_passphrase(kp, kp_size, cd, msg, i); if (r == -ENOENT) r = 0; @@ -3105,7 +3187,8 @@ break; } } else { - snprintf(msg, sizeof(msg), _("Enter passphrase for key slot %u: "), opt_key_slot); + if (snprintf(msg, sizeof(msg), _("Enter passphrase for key slot %u: "), opt_key_slot) < 0) + return -EINVAL; r = init_passphrase(kp, kp_size, cd, msg, opt_key_slot); } @@ -3138,8 +3221,8 @@ struct crypt_params_reencrypt params = { .mode = CRYPT_REENCRYPT_REENCRYPT, .direction = opt_data_shift < 0 ? CRYPT_REENCRYPT_BACKWARD : CRYPT_REENCRYPT_FORWARD, - .resilience = opt_data_shift ? "datashift" : opt_resilience_mode, - .hash = opt_resilience_hash, + .resilience = opt_data_shift ? "datashift" : (opt_resilience_mode ?: "checksum"), + .hash = opt_resilience_hash ?: "sha256", .data_shift = imaxabs(opt_data_shift) / SECTOR_SIZE, .max_hotzone_size = opt_hotzone_size / SECTOR_SIZE, .device_size = opt_device_size / SECTOR_SIZE, @@ -3148,6 +3231,11 @@ _set_reencryption_flags(¶ms.flags); + if (!opt_cipher && crypt_is_cipher_null(crypt_get_cipher(cd))) { + opt_cipher = strdup(DEFAULT_CIPHER(LUKS1)); + log_std(_("Switching data encryption cipher to %s.\n"), opt_cipher); + } + if (!opt_cipher) { strncpy(cipher, crypt_get_cipher(cd), MAX_CIPHER_LEN - 1); strncpy(mode, crypt_get_cipher_mode(cd), MAX_CIPHER_LEN - 1); @@ -3164,10 +3252,8 @@ if (r) return r; - if (opt_key_size) - key_size = opt_key_size / 8; - else if (opt_cipher) - key_size = DEFAULT_LUKS1_KEYBITS / 8; + if (opt_key_size || opt_cipher) + key_size = get_adjusted_key_size(mode, DEFAULT_LUKS1_KEYBITS, 0); else key_size = crypt_get_volume_key_size(cd); @@ -3450,10 +3536,12 @@ #if defined(ENABLE_LUKS_ADJUST_XTS_KEYSIZE) && DEFAULT_LUKS1_KEYBITS != 512 log_std(_("\tLUKS: Default keysize with XTS mode (two internal keys) will be doubled.\n")); #endif + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_SUCCESS); } else if (key->shortName == 'V') { log_std("%s %s\n", PACKAGE_NAME, PACKAGE_VERSION); + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_SUCCESS); } else @@ -3494,7 +3582,6 @@ int main(int argc, const char **argv) { - static char *popt_tmp; static struct poptOption popt_help_options[] = { { NULL, '\0', POPT_ARG_CALLBACK, help, 0, NULL, NULL }, { "help", '?', POPT_ARG_NONE, NULL, 0, N_("Show this help message"), NULL }, @@ -3510,19 +3597,19 @@ { "cipher", 'c', POPT_ARG_STRING, &opt_cipher, 0, N_("The cipher used to encrypt the disk (see /proc/crypto)"), NULL }, { "hash", 'h', POPT_ARG_STRING, &opt_hash, 0, N_("The hash used to create the encryption key from the passphrase"), NULL }, { "verify-passphrase", 'y', POPT_ARG_NONE, &opt_verify_passphrase, 0, N_("Verifies the passphrase by asking for it twice"), NULL }, - { "key-file", 'd', POPT_ARG_STRING, &opt_key_file, 6, N_("Read the key from a file"), NULL }, + { "key-file", 'd', POPT_ARG_STRING, NULL, 6, N_("Read the key from a file"), NULL }, { "master-key-file", '\0', POPT_ARG_STRING, &opt_master_key_file, 0, N_("Read the volume (master) key from file."), NULL }, { "dump-master-key", '\0', POPT_ARG_NONE, &opt_dump_master_key, 0, N_("Dump volume (master) key instead of keyslots info"), NULL }, { "key-size", 's', POPT_ARG_INT, &opt_key_size, 0, N_("The size of the encryption key"), N_("BITS") }, { "keyfile-size", 'l', POPT_ARG_LONG, &opt_keyfile_size, 0, N_("Limits the read from keyfile"), N_("bytes") }, - { "keyfile-offset", '\0', POPT_ARG_STRING, &popt_tmp, 4, N_("Number of bytes to skip in keyfile"), N_("bytes") }, + { "keyfile-offset", '\0', POPT_ARG_STRING, NULL, 4, N_("Number of bytes to skip in keyfile"), N_("bytes") }, { "new-keyfile-size", '\0', POPT_ARG_LONG, &opt_new_keyfile_size, 0, N_("Limits the read from newly added keyfile"), N_("bytes") }, - { "new-keyfile-offset",'\0', POPT_ARG_STRING, &popt_tmp, 5, N_("Number of bytes to skip in newly added keyfile"), N_("bytes") }, + { "new-keyfile-offset",'\0', POPT_ARG_STRING, NULL, 5, N_("Number of bytes to skip in newly added keyfile"), N_("bytes") }, { "key-slot", 'S', POPT_ARG_INT, &opt_key_slot, 0, N_("Slot number for new key (default is first free)"), NULL }, - { "size", 'b', POPT_ARG_STRING, &popt_tmp, 1, N_("The size of the device"), N_("SECTORS") }, + { "size", 'b', POPT_ARG_STRING, NULL, 1, N_("The size of the device"), N_("SECTORS") }, { "device-size", '\0', POPT_ARG_STRING, &opt_device_size_str, 0, N_("Use only specified device size (ignore rest of device). DANGEROUS!"), N_("bytes") }, - { "offset", 'o', POPT_ARG_STRING, &popt_tmp, 2, N_("The start offset in the backend device"), N_("SECTORS") }, - { "skip", 'p', POPT_ARG_STRING, &popt_tmp, 3, N_("How many sectors of the encrypted data to skip at the beginning"), N_("SECTORS") }, + { "offset", 'o', POPT_ARG_STRING, NULL, 2, N_("The start offset in the backend device"), N_("SECTORS") }, + { "skip", 'p', POPT_ARG_STRING, NULL, 3, N_("How many sectors of the encrypted data to skip at the beginning"), N_("SECTORS") }, { "readonly", 'r', POPT_ARG_NONE, &opt_readonly, 0, N_("Create a readonly mapping"), NULL }, { "batch-mode", 'q', POPT_ARG_NONE, &opt_batch_mode, 0, N_("Do not ask for confirmation"), NULL }, { "timeout", 't', POPT_ARG_INT, &opt_timeout, 0, N_("Timeout for interactive passphrase prompt (in seconds)"), N_("secs") }, @@ -3606,25 +3693,29 @@ while((r = poptGetNextOpt(popt_context)) > 0) { unsigned long long ull_value; - char *endp; + char *endp, *str = poptGetOptArg(popt_context); if (r == 6) { - const char *kf = poptGetOptArg(popt_context); - if (tools_is_stdin(kf)) - opt_keyfile_stdin = kf; - else if (opt_keyfiles_count < MAX_KEYFILES) - opt_keyfiles[opt_keyfiles_count++] = kf; + free(opt_key_file); + opt_key_file = str; + if (tools_is_stdin(str)) { + free(opt_keyfile_stdin); + opt_keyfile_stdin = strdup(str); + } else if (opt_keyfiles_count < MAX_KEYFILES) + opt_keyfiles[opt_keyfiles_count++] = strdup(str); total_keyfiles++; continue; } errno = 0; - ull_value = strtoull(popt_tmp, &endp, 0); - if (*endp || !*popt_tmp || !isdigit(*popt_tmp) || + ull_value = strtoull(str, &endp, 0); + if (*endp || !*str || !isdigit(*str) || (errno == ERANGE && ull_value == ULLONG_MAX) || (errno != 0 && ull_value == 0)) r = POPT_ERROR_BADNUMBER; + free(str); + switch(r) { case 1: opt_size = ull_value; @@ -3675,26 +3766,26 @@ action_argv[1] = tmp; } aname = "open"; - opt_type = "plain"; + device_type = "plain"; } else if (!strcmp(aname, "plainOpen")) { aname = "open"; - opt_type = "plain"; + device_type = "plain"; } else if (!strcmp(aname, "luksOpen")) { aname = "open"; - opt_type = "luks"; + device_type = "luks"; } else if (!strcmp(aname, "loopaesOpen")) { aname = "open"; - opt_type = "loopaes"; + device_type = "loopaes"; } else if (!strcmp(aname, "tcryptOpen")) { aname = "open"; - opt_type = "tcrypt"; + device_type = "tcrypt"; } else if (!strcmp(aname, "bitlkOpen")) { aname = "open"; - opt_type = "bitlk"; + device_type = "bitlk"; } else if (!strcmp(aname, "tcryptDump")) { - opt_type = "tcrypt"; + device_type = "tcrypt"; } else if (!strcmp(aname, "bitlkDump")) { - opt_type = "bitlk"; + device_type = "bitlk"; } else if (!strcmp(aname, "remove") || !strcmp(aname, "plainClose") || !strcmp(aname, "luksClose") || @@ -3704,18 +3795,19 @@ aname = "close"; } else if (!strcmp(aname, "luksErase")) { aname = "erase"; - opt_type = "luks"; + device_type = "luks"; } else if (!strcmp(aname, "luksConfig")) { aname = "config"; - opt_type = "luks2"; + device_type = "luks2"; } else if (!strcmp(aname, "refresh")) { aname = "open"; opt_refresh = 1; - } + } else if (opt_type) + device_type = opt_type; /* ignore user supplied type and query device type instead */ if (opt_refresh) - opt_type = NULL; + device_type = NULL; for(action = action_types; action->type; action++) if (strcmp(action->type, aname) == 0) @@ -3740,7 +3832,7 @@ _("Option --deferred is allowed only for close command."), poptGetInvocationName(popt_context)); - if (opt_shared && (strcmp(aname, "open") || strcmp_or_null(opt_type, "plain"))) + if (opt_shared && (strcmp(aname, "open") || strcmp_or_null(device_type, "plain"))) usage(popt_context, EXIT_FAILURE, _("Option --shared is allowed only for open of plain device."), poptGetInvocationName(popt_context)); @@ -3792,8 +3884,8 @@ _("Options --label and --subsystem are allowed only for luksFormat and config LUKS2 operations."), poptGetInvocationName(popt_context)); - if (opt_test_passphrase && (strcmp(aname, "open") || !opt_type || - (strncmp(opt_type, "luks", 4) && strcmp(opt_type, "tcrypt") && strcmp(opt_type, "bitlk")))) + if (opt_test_passphrase && (strcmp(aname, "open") || !device_type || + (strncmp(device_type, "luks", 4) && strcmp(device_type, "tcrypt") && strcmp(device_type, "bitlk")))) usage(popt_context, EXIT_FAILURE, _("Option --test-passphrase is allowed only for open of LUKS, TCRYPT and BITLK devices."), poptGetInvocationName(popt_context)); @@ -3815,7 +3907,7 @@ if (opt_key_file) log_err(_("Option --key-file takes precedence over specified key file argument.")); else - opt_key_file = action_argv[1]; + opt_key_file = strdup(action_argv[1]); } if (opt_keyfile_size < 0 || opt_new_keyfile_size < 0 || opt_key_size < 0) @@ -3823,7 +3915,7 @@ _("Negative number for option not permitted."), poptGetInvocationName(popt_context)); - if (total_keyfiles > 1 && (strcmp_or_null(opt_type, "tcrypt"))) + if (total_keyfiles > 1 && (strcmp_or_null(device_type, "tcrypt"))) usage(popt_context, EXIT_FAILURE, _("Only one --key-file argument is allowed."), poptGetInvocationName(popt_context)); @@ -3861,20 +3953,20 @@ poptGetInvocationName(popt_context)); if (opt_skip && (strcmp(aname, "open") || - (strcmp_or_null(opt_type, "plain") && strcmp(opt_type, "loopaes")))) + (strcmp_or_null(device_type, "plain") && strcmp(device_type, "loopaes")))) usage(popt_context, EXIT_FAILURE, _("Option --skip is supported only for open of plain and loopaes devices."), poptGetInvocationName(popt_context)); if (opt_offset && ((strcmp(aname, "reencrypt") && strcmp(aname, "open") && strcmp(aname, "luksFormat")) || - (!strcmp(aname, "open") && strcmp_or_null(opt_type, "plain") && strcmp(opt_type, "loopaes")) || - (!strcmp(aname, "luksFormat") && opt_type && strncmp(opt_type, "luks", 4)))) + (!strcmp(aname, "open") && strcmp_or_null(device_type, "plain") && strcmp(device_type, "loopaes")) || + (!strcmp(aname, "luksFormat") && device_type && strncmp(device_type, "luks", 4)))) usage(popt_context, EXIT_FAILURE, _("Option --offset is supported only for open of plain and loopaes devices, luksFormat and device reencryption."), poptGetInvocationName(popt_context)); if ((opt_tcrypt_hidden || opt_tcrypt_system || opt_tcrypt_backup) && strcmp(aname, "tcryptDump") && - (strcmp(aname, "open") || !opt_type || strcmp(opt_type, "tcrypt"))) + (strcmp(aname, "open") || !device_type || strcmp(device_type, "tcrypt"))) usage(popt_context, EXIT_FAILURE, _("Option --tcrypt-hidden, --tcrypt-system or --tcrypt-backup is supported only for TCRYPT device."), poptGetInvocationName(popt_context)); @@ -3884,7 +3976,7 @@ _("Option --tcrypt-hidden cannot be combined with --allow-discards."), poptGetInvocationName(popt_context)); - if (opt_veracrypt && (!opt_type || strcmp(opt_type, "tcrypt"))) + if (opt_veracrypt && (!device_type || strcmp(device_type, "tcrypt"))) usage(popt_context, EXIT_FAILURE, _("Option --veracrypt is supported only for TCRYPT device type."), poptGetInvocationName(popt_context)); @@ -3923,7 +4015,7 @@ _("Keyslot specification is required."), poptGetInvocationName(popt_context)); - if (opt_pbkdf && crypt_parse_pbkdf(opt_pbkdf, &opt_pbkdf)) + if (opt_pbkdf && crypt_parse_pbkdf(opt_pbkdf, &set_pbkdf)) usage(popt_context, EXIT_FAILURE, _("Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id."), poptGetInvocationName(popt_context)); @@ -3934,7 +4026,7 @@ poptGetInvocationName(popt_context)); if (opt_sector_size && strcmp(aname, "reencrypt") && strcmp(aname, "luksFormat") && - (strcmp(aname, "open") || strcmp_or_null(opt_type, "plain"))) + (strcmp(aname, "open") || strcmp_or_null(device_type, "plain"))) usage(popt_context, EXIT_FAILURE, _("Sector size option is not supported for this command."), poptGetInvocationName(popt_context)); @@ -3980,6 +4072,7 @@ if (opt_disable_locks && crypt_metadata_locking(NULL, 0)) { log_std(_("Cannot disable metadata locking.")); + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_FAILURE); } @@ -4037,6 +4130,7 @@ poptGetInvocationName(popt_context)); r = run_action(action); + tools_cleanup(); poptFreeContext(popt_context); return r; } diff -Nru cryptsetup-2.3.4/src/cryptsetup.h cryptsetup-2.3.6/src/cryptsetup.h --- cryptsetup-2.3.4/src/cryptsetup.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/cryptsetup.h 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -24,6 +24,7 @@ #ifndef CRYPTSETUP_H #define CRYPTSETUP_H +#include #include #include #include @@ -97,7 +98,6 @@ void tools_passphrase_msg(int r); int tools_is_stdin(const char *key_file); int tools_string_to_size(struct crypt_device *cd, const char *s, uint64_t *size); -int tools_is_cipher_null(const char *cipher); void tools_clear_line(void); @@ -116,6 +116,11 @@ int tools_lookup_crypt_device(struct crypt_device *cd, const char *type, const char *data_device_path, char *name, size_t name_length); +/* each utility is required to implement it */ +void tools_cleanup(void); + +#define FREE_AND_NULL(x) do { free(x); x = NULL; } while (0) + /* Log */ #define log_dbg(x...) clogger(NULL, CRYPT_LOG_DEBUG, __FILE__, __LINE__, x) #define log_std(x...) clogger(NULL, CRYPT_LOG_NORMAL, __FILE__, __LINE__, x) diff -Nru cryptsetup-2.3.4/src/cryptsetup_reencrypt.c cryptsetup-2.3.6/src/cryptsetup_reencrypt.c --- cryptsetup-2.3.4/src/cryptsetup_reencrypt.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/cryptsetup_reencrypt.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * cryptsetup-reencrypt - crypt utility for offline re-encryption * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz All rights reserved. + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -29,16 +29,25 @@ #define NO_UUID "cafecafe-cafe-cafe-cafe-cafecafeeeee" -static const char *opt_cipher = NULL; -static const char *opt_hash = NULL; -static const char *opt_key_file = NULL; -static const char *opt_master_key_file = NULL; -static const char *opt_uuid = NULL; -static const char *opt_type = "luks"; +static char *opt_cipher = NULL; +static char *opt_hash = NULL; +static char *opt_key_file = NULL; +static char *opt_master_key_file = NULL; +static char *opt_uuid = NULL; +static char *opt_type = NULL; +static char *opt_pbkdf = NULL; +static char *opt_header_device = NULL; + +/* helper strings converted to uint64_t later */ +static char *opt_reduce_size_str = NULL; +static char *opt_device_size_str = NULL; + +static uint64_t opt_reduce_size = 0; +static uint64_t opt_device_size = 0; + static long opt_keyfile_size = 0; static long opt_keyfile_offset = 0; static int opt_iteration_time = 0; -static const char *opt_pbkdf = NULL; static long opt_pbkdf_memory = DEFAULT_LUKS2_MEMORY_KB; static long opt_pbkdf_parallel = DEFAULT_LUKS2_PARALLEL_THREADS; static long opt_pbkdf_iterations = 0; @@ -54,16 +63,11 @@ static int opt_new = 0; static int opt_keep_key = 0; static int opt_decrypt = 0; -static const char *opt_header_device = NULL; - -static const char *opt_reduce_size_str = NULL; -static uint64_t opt_reduce_size = 0; - -static const char *opt_device_size_str = NULL; -static uint64_t opt_device_size = 0; static const char **action_argv; +static const char *set_pbkdf = NULL; + #define MAX_SLOT 32 #define MAX_TOKEN 32 struct reenc_ctx { @@ -113,6 +117,20 @@ CHECK_OPEN, } header_magic; +void tools_cleanup(void) +{ + FREE_AND_NULL(opt_cipher); + FREE_AND_NULL(opt_hash); + FREE_AND_NULL(opt_key_file); + FREE_AND_NULL(opt_master_key_file); + FREE_AND_NULL(opt_uuid); + FREE_AND_NULL(opt_type); + FREE_AND_NULL(opt_pbkdf); + FREE_AND_NULL(opt_header_device); + FREE_AND_NULL(opt_reduce_size_str); + FREE_AND_NULL(opt_device_size_str); +} + static void _quiet_log(int level, const char *msg, void *usrptr) { if (!opt_debug) @@ -482,7 +500,7 @@ if (!pbkdf_default) return -EINVAL; - pbkdf.type = opt_pbkdf ?: pbkdf_default->type; + pbkdf.type = set_pbkdf ?: pbkdf_default->type; pbkdf.hash = opt_hash ?: pbkdf_default->hash; pbkdf.time_ms = (uint32_t)opt_iteration_time ?: pbkdf_default->time_ms; if (strcmp(pbkdf.type, CRYPT_KDF_PBKDF2)) { @@ -1590,10 +1608,12 @@ if (key->shortName == '?') { log_std("%s %s\n", PACKAGE_REENC, PACKAGE_VERSION); poptPrintHelp(popt_context, stdout, 0); + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_SUCCESS); } else if (key->shortName == 'V') { log_std("%s %s\n", PACKAGE_REENC, PACKAGE_VERSION); + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_SUCCESS); } else @@ -1688,7 +1708,7 @@ poptGetInvocationName(popt_context)); } - if (opt_pbkdf && crypt_parse_pbkdf(opt_pbkdf, &opt_pbkdf)) + if (opt_pbkdf && crypt_parse_pbkdf(opt_pbkdf, &set_pbkdf)) usage(popt_context, EXIT_FAILURE, _("Password-based key derivation function (PBKDF) can be only pbkdf2 or argon2i/argon2id."), poptGetInvocationName(popt_context)); @@ -1764,8 +1784,7 @@ } r = run_reencrypt(action_argv[0]); - + tools_cleanup(); poptFreeContext(popt_context); - return translate_errno(r); } diff -Nru cryptsetup-2.3.4/src/integritysetup.c cryptsetup-2.3.6/src/integritysetup.c --- cryptsetup-2.3.4/src/integritysetup.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/integritysetup.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * integritysetup - setup integrity protected volumes for dm-integrity * - * Copyright (C) 2017-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2017-2020 Milan Broz + * Copyright (C) 2017-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2017-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -25,10 +25,20 @@ #define PACKAGE_INTEGRITY "integritysetup" #define DEFAULT_ALG_NAME "crc32c" -#define MAX_KEY_SIZE 4096 -static const char *opt_journal_size_str = NULL; +static char *opt_data_device = NULL; +static char *opt_integrity = NULL; /* DEFAULT_ALG_NAME */ +static char *opt_integrity_key_file = NULL; +static char *opt_journal_integrity = NULL; /* none */ +static char *opt_journal_integrity_key_file = NULL; +static char *opt_journal_crypt = NULL; /* none */ +static char *opt_journal_crypt_key_file = NULL; + +/* helper strings converted to uint64_t later */ +static char *opt_journal_size_str = NULL; + static uint64_t opt_journal_size = 0; + static int opt_interleave_sectors = 0; static int opt_journal_watermark = 0; static int opt_bitmap_sectors_per_bit = 0; @@ -37,41 +47,42 @@ static int opt_tag_size = 0; static int opt_sector_size = 0; static int opt_buffer_sectors = 0; - static int opt_no_wipe = 0; - -static const char *opt_data_device = NULL; - -static const char *opt_integrity = DEFAULT_ALG_NAME; -static const char *opt_integrity_key_file = NULL; static int opt_integrity_key_size = 0; - -static const char *opt_journal_integrity = NULL; /* none */ -static const char *opt_journal_integrity_key_file = NULL; static int opt_journal_integrity_key_size = 0; - -static const char *opt_journal_crypt = NULL; /* none */ -static const char *opt_journal_crypt_key_file = NULL; static int opt_journal_crypt_key_size = 0; - static int opt_integrity_nojournal = 0; static int opt_integrity_recovery = 0; static int opt_integrity_bitmap = 0; static int opt_integrity_legacy_padding = 0; - +static int opt_integrity_legacy_hmac = 0; +static int opt_integrity_legacy_recalculate = 0; static int opt_integrity_recalculate = 0; static int opt_allow_discards = 0; +static const char *integrity_alg = DEFAULT_ALG_NAME; static const char **action_argv; static int action_argc; +void tools_cleanup(void) +{ + FREE_AND_NULL(opt_data_device); + FREE_AND_NULL(opt_integrity); + FREE_AND_NULL(opt_integrity_key_file); + FREE_AND_NULL(opt_journal_integrity); + FREE_AND_NULL(opt_journal_integrity_key_file); + FREE_AND_NULL(opt_journal_crypt); + FREE_AND_NULL(opt_journal_crypt_key_file); + FREE_AND_NULL(opt_journal_size_str); +} + // FIXME: move this to tools and handle EINTR static int _read_mk(const char *file, char **key, int keysize) { int fd; - if (keysize <= 0 || keysize > MAX_KEY_SIZE) { - log_err(_("Invalid key size.")); + if (keysize <= 0 || keysize > (DEFAULT_INTEGRITY_KEYFILE_SIZE_MAXKB * 1024)) { + log_err(_("Invalid key size. Maximum is %u bytes."), DEFAULT_INTEGRITY_KEYFILE_SIZE_MAXKB * 1024); return -EINVAL; } @@ -189,14 +200,12 @@ int r; size_t signatures; - if (opt_integrity) { - r = crypt_parse_hash_integrity_mode(opt_integrity, integrity); - if (r < 0) { - log_err(_("No known integrity specification pattern detected.")); - return r; - } - params.integrity = integrity; + r = crypt_parse_hash_integrity_mode(integrity_alg, integrity); + if (r < 0) { + log_err(_("No known integrity specification pattern detected.")); + return r; } + params.integrity = integrity; if (opt_journal_integrity) { r = crypt_parse_hash_integrity_mode(opt_journal_integrity, journal_integrity); @@ -246,6 +255,9 @@ if (opt_integrity_legacy_padding) crypt_set_compatibility(cd, CRYPT_COMPAT_LEGACY_INTEGRITY_PADDING); + if (opt_integrity_legacy_hmac) + crypt_set_compatibility(cd, CRYPT_COMPAT_LEGACY_INTEGRITY_HMAC); + r = crypt_format(cd, CRYPT_INTEGRITY, NULL, NULL, NULL, NULL, 0, ¶ms); if (r < 0) /* FIXME: call wipe signatures again */ goto out; @@ -278,14 +290,12 @@ char *integrity_key = NULL; int r; - if (opt_integrity) { - r = crypt_parse_hash_integrity_mode(opt_integrity, integrity); - if (r < 0) { - log_err(_("No known integrity specification pattern detected.")); - return r; - } - params.integrity = integrity; + r = crypt_parse_hash_integrity_mode(integrity_alg, integrity); + if (r < 0) { + log_err(_("No known integrity specification pattern detected.")); + return r; } + params.integrity = integrity; if (opt_journal_integrity) { r = crypt_parse_hash_integrity_mode(opt_journal_integrity, journal_integrity); @@ -313,7 +323,7 @@ if (opt_integrity_bitmap) activate_flags |= CRYPT_ACTIVATE_NO_JOURNAL_BITMAP; - if (opt_integrity_recalculate) + if (opt_integrity_recalculate || opt_integrity_legacy_recalculate) activate_flags |= CRYPT_ACTIVATE_RECALCULATE; if (opt_allow_discards) activate_flags |= CRYPT_ACTIVATE_ALLOW_DISCARDS; @@ -329,6 +339,9 @@ if (r) goto out; + if (opt_integrity_legacy_recalculate) + crypt_set_compatibility(cd, CRYPT_COMPAT_LEGACY_INTEGRITY_RECALC); + r = crypt_activate_by_volume_key(cd, action_argv[1], integrity_key, opt_integrity_key_size, activate_flags); out: @@ -505,11 +518,15 @@ crypt_get_dir()); log_std(_("\nDefault compiled-in dm-integrity parameters:\n" - "\tChecksum algorithm: %s\n"), DEFAULT_ALG_NAME); + "\tChecksum algorithm: %s\n" + "\tMaximum keyfile size: %dkB\n"), + DEFAULT_ALG_NAME, DEFAULT_INTEGRITY_KEYFILE_SIZE_MAXKB); + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_SUCCESS); } else if (key->shortName == 'V') { log_std("%s %s\n", PACKAGE_INTEGRITY, PACKAGE_VERSION); + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_SUCCESS); } else @@ -576,6 +593,9 @@ { "integrity-recalculate", '\0', POPT_ARG_NONE, &opt_integrity_recalculate, 0, N_("Recalculate initial tags automatically."), NULL }, { "integrity-legacy-padding", '\0', POPT_ARG_NONE, &opt_integrity_legacy_padding, 0, N_("Use inefficient legacy padding (old kernels)"), NULL }, + { "integrity-legacy-hmac", '\0', POPT_ARG_NONE, &opt_integrity_legacy_hmac, 0, N_("Do not protect superblock with HMAC (old kernels)"), NULL }, + { "integrity-legacy-recalculate",'\0',POPT_ARG_NONE, &opt_integrity_legacy_recalculate, 0, N_("Allow recalculating of volumes with HMAC keys (old kernels)"), NULL }, + { "allow-discards", '\0', POPT_ARG_NONE, &opt_allow_discards, 0, N_("Allow discards (aka TRIM) requests for device"), NULL }, POPT_TABLEEND }; @@ -629,6 +649,9 @@ aname = "close"; } + if (opt_integrity) + integrity_alg = opt_integrity; + for (action = action_types; action->type; action++) if (strcmp(action->type, aname) == 0) break; @@ -679,9 +702,6 @@ (!opt_integrity_key_file && opt_integrity_key_size)) usage(popt_context, EXIT_FAILURE, _("Both key file and key size options must be specified."), poptGetInvocationName(popt_context)); - if (!opt_integrity && opt_integrity_key_file) - usage(popt_context, EXIT_FAILURE, _("Integrity algorithm must be specified if integrity key is used."), - poptGetInvocationName(popt_context)); if ((opt_journal_integrity_key_file && !opt_journal_integrity_key_size) || (!opt_journal_integrity_key_file && opt_journal_integrity_key_size)) @@ -718,6 +738,7 @@ } r = run_action(action); + tools_cleanup(); poptFreeContext(popt_context); return r; } diff -Nru cryptsetup-2.3.4/src/utils_blockdev.c cryptsetup-2.3.6/src/utils_blockdev.c --- cryptsetup-2.3.4/src/utils_blockdev.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/utils_blockdev.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Linux block devices helpers * - * Copyright (C) 2018-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2018-2020 Ondrej Kozina + * Copyright (C) 2018-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2018-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/src/utils_luks2.c cryptsetup-2.3.6/src/utils_luks2.c --- cryptsetup-2.3.4/src/utils_luks2.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/utils_luks2.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,9 +1,9 @@ /* * Helper utilities for LUKS2 features * - * Copyright (C) 2018-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2018-2020 Milan Broz - * Copyright (C) 2018-2020 Ondrej Kozina + * Copyright (C) 2018-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2018-2021 Milan Broz + * Copyright (C) 2018-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/src/utils_password.c cryptsetup-2.3.6/src/utils_password.c --- cryptsetup-2.3.4/src/utils_password.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/utils_password.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * Password quality check wrapper * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -62,51 +62,86 @@ #elif defined ENABLE_PASSWDQC #include -static int tools_check_pwquality(const char *password) +static int tools_check_passwdqc(const char *password) { passwdqc_params_t params; - char *parse_reason; + char *parse_reason = NULL; const char *check_reason; const char *config = PASSWDQC_CONFIG_FILE; + int r = -EINVAL; passwdqc_params_reset(¶ms); if (*config && passwdqc_params_load(¶ms, &parse_reason, config)) { log_err(_("Cannot check password quality: %s"), (parse_reason ? parse_reason : "Out of memory")); - free(parse_reason); - return -EINVAL; + goto out; } check_reason = passwdqc_check(¶ms.qc, password, NULL, NULL); if (check_reason) { log_err(_("Password quality check failed: Bad passphrase (%s)"), check_reason); - return -EPERM; - } - - return 0; + r = -EPERM; + } else + r = 0; +out: +#if HAVE_PASSWDQC_PARAMS_FREE + passwdqc_params_free(¶ms); +#endif + free(parse_reason); + return r; } -#else /* !(ENABLE_PWQUALITY || ENABLE_PASSWDQC) */ -static int tools_check_pwquality(const char *password) +#endif /* ENABLE_PWQUALITY || ENABLE_PASSWDQC */ + +/* coverity[ +tainted_string_sanitize_content : arg-0 ] */ +static int tools_check_password(const char *password) { +#if defined ENABLE_PWQUALITY + return tools_check_pwquality(password); +#elif defined ENABLE_PASSWDQC + return tools_check_passwdqc(password); +#else return 0; +#endif } -#endif /* ENABLE_PWQUALITY || ENABLE_PASSWDQC */ /* Password reading helpers */ + +static ssize_t read_tty_eol(int fd, char *pass, size_t maxlen) +{ + bool eol = false; + size_t read_size = 0; + ssize_t r; + + do { + r = read(fd, pass, maxlen - read_size); + if ((r == -1 && errno != EINTR) || quit) + return -1; + if (r >= 0) { + if (!r || pass[r-1] == '\n') + eol = true; + read_size += (size_t)r; + pass = pass + r; + } + } while (!eol && read_size != maxlen); + + return (ssize_t)read_size; +} + +/* The pass buffer is zeroed and has trailing \0 already " */ static int untimed_read(int fd, char *pass, size_t maxlen) { ssize_t i; - i = read(fd, pass, maxlen); + i = read_tty_eol(fd, pass, maxlen); if (i > 0) { - pass[i-1] = '\0'; + if (pass[i-1] == '\n') + pass[i-1] = '\0'; i = 0; - } else if (i == 0) { /* EOF */ - *pass = 0; + } else if (i == 0) /* empty input */ i = -1; - } + return i; } @@ -193,10 +228,9 @@ log_err(_("Error reading passphrase from terminal.")); goto out_err; } - pass[key_size_max] = '\0'; if (verify) { - pass_verify = crypt_safe_alloc(key_size_max); + pass_verify = crypt_safe_alloc(key_size_max + 1); if (!pass_verify) { log_err(_("Out of memory while reading passphrase.")); r = -ENOMEM; @@ -276,7 +310,7 @@ /* Check pwquality for password (not keyfile) */ if (pwquality && !opt_force_password && !key_file && !r) - r = tools_check_pwquality(*key); + r = tools_check_password(*key); return r; } @@ -293,7 +327,7 @@ { int fd; - if (!keysize || !key) + if (keysize <= 0 || !key) return -EINVAL; *key = crypt_safe_alloc(keysize); @@ -323,6 +357,9 @@ { int fd, r = -EINVAL; + if (keysize <= 0 || !key) + return -EINVAL; + fd = open(file, O_CREAT|O_EXCL|O_WRONLY, S_IRUSR); if (fd < 0) { log_err(_("Cannot open keyfile %s for write."), file); diff -Nru cryptsetup-2.3.4/src/utils_tools.c cryptsetup-2.3.6/src/utils_tools.c --- cryptsetup-2.3.4/src/utils_tools.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/utils_tools.c 2021-05-28 04:57:08.000000000 -0500 @@ -3,8 +3,8 @@ * * Copyright (C) 2004 Jana Saout * Copyright (C) 2004-2007 Clemens Fruhwirth - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -238,6 +238,7 @@ poptPrintUsage(popt_context, stderr, 0); if (error) log_err("%s: %s", more, error); + tools_cleanup(); poptFreeContext(popt_context); exit(exitcode); } @@ -596,14 +597,6 @@ return r; } -int tools_is_cipher_null(const char *cipher) -{ - if (!cipher) - return 0; - - return !strcmp(cipher, "cipher_null") ? 1 : 0; -} - /* * Keyfile - is standard input treated as a binary file (no EOL handling). */ diff -Nru cryptsetup-2.3.4/src/veritysetup.c cryptsetup-2.3.6/src/veritysetup.c --- cryptsetup-2.3.4/src/veritysetup.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/src/veritysetup.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * veritysetup - setup cryptographic volumes for dm-verity * - * Copyright (C) 2012-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2012-2020 Milan Broz + * Copyright (C) 2012-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2012-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -23,29 +23,38 @@ #define PACKAGE_VERITY "veritysetup" -static int use_superblock = 1; - -static const char *fec_device = NULL; -static int fec_roots = DEFAULT_VERITY_FEC_ROOTS; -static const char *hash_algorithm = NULL; -static int hash_type = 1; -static int data_block_size = DEFAULT_VERITY_DATA_BLOCK; -static int hash_block_size = DEFAULT_VERITY_HASH_BLOCK; +static char *opt_fec_device = NULL; +static char *opt_hash_algorithm = NULL; +static char *opt_salt = NULL; +static char *opt_uuid = NULL; +static char *opt_root_hash_signature = NULL; + +static int opt_use_superblock = 1; +static int opt_fec_roots = DEFAULT_VERITY_FEC_ROOTS; +static int opt_hash_type = 1; +static int opt_data_block_size = DEFAULT_VERITY_DATA_BLOCK; +static int opt_hash_block_size = DEFAULT_VERITY_HASH_BLOCK; static uint64_t data_blocks = 0; -static const char *salt_string = NULL; static uint64_t hash_offset = 0; static uint64_t fec_offset = 0; -static const char *opt_uuid = NULL; static int opt_restart_on_corruption = 0; static int opt_panic_on_corruption = 0; static int opt_ignore_corruption = 0; static int opt_ignore_zero_blocks = 0; static int opt_check_at_most_once = 0; -static const char *opt_root_hash_signature = NULL; static const char **action_argv; static int action_argc; +void tools_cleanup(void) +{ + FREE_AND_NULL(opt_fec_device); + FREE_AND_NULL(opt_hash_algorithm); + FREE_AND_NULL(opt_salt); + FREE_AND_NULL(opt_uuid); + FREE_AND_NULL(opt_root_hash_signature); +} + static int _prepare_format(struct crypt_params_verity *params, const char *data_device, uint32_t flags) @@ -53,16 +62,16 @@ char *salt = NULL; int len; - params->hash_name = hash_algorithm ?: DEFAULT_VERITY_HASH; + params->hash_name = opt_hash_algorithm ?: DEFAULT_VERITY_HASH; params->data_device = data_device; - params->fec_device = fec_device; - params->fec_roots = fec_roots; + params->fec_device = opt_fec_device; + params->fec_roots = opt_fec_roots; - if (salt_string && !strcmp(salt_string, "-")) { + if (opt_salt && !strcmp(opt_salt, "-")) { params->salt_size = 0; params->salt = NULL; - } else if (salt_string) { - len = crypt_hex_to_bytes(salt_string, &salt, 0); + } else if (opt_salt) { + len = crypt_hex_to_bytes(opt_salt, &salt, 0); if (len < 0) { log_err(_("Invalid salt string specified.")); return -EINVAL; @@ -74,12 +83,12 @@ params->salt = NULL; } - params->data_block_size = data_block_size; - params->hash_block_size = hash_block_size; + params->data_block_size = opt_data_block_size; + params->hash_block_size = opt_hash_block_size; params->data_size = data_blocks; params->hash_area_offset = hash_offset; params->fec_area_offset = fec_offset; - params->hash_type = hash_type; + params->hash_type = opt_hash_type; params->flags = flags; return 0; @@ -102,13 +111,13 @@ close(r); } /* Try to create FEC image if doesn't exist */ - if (fec_device) { - r = open(fec_device, O_WRONLY | O_EXCL | O_CREAT, S_IRUSR | S_IWUSR); + if (opt_fec_device) { + r = open(opt_fec_device, O_WRONLY | O_EXCL | O_CREAT, S_IRUSR | S_IWUSR); if (r < 0 && errno != EEXIST) { - log_err(_("Cannot create FEC image %s for writing."), fec_device); + log_err(_("Cannot create FEC image %s for writing."), opt_fec_device); return -EINVAL; } else if (r >= 0) { - log_dbg("Created FEC image %s.", fec_device); + log_dbg("Created FEC image %s.", opt_fec_device); close(r); } } @@ -116,7 +125,7 @@ if ((r = crypt_init(&cd, action_argv[1]))) goto out; - if (!use_superblock) + if (!opt_use_superblock) flags |= CRYPT_VERITY_NO_HEADER; r = _prepare_format(¶ms, action_argv[0], flags); @@ -161,12 +170,12 @@ if (opt_check_at_most_once) activate_flags |= CRYPT_ACTIVATE_CHECK_AT_MOST_ONCE; - if (use_superblock) { + if (opt_use_superblock) { params.flags = flags; params.hash_area_offset = hash_offset; params.fec_area_offset = fec_offset; - params.fec_device = fec_device; - params.fec_roots = fec_roots; + params.fec_device = opt_fec_device; + params.fec_roots = opt_fec_roots; r = crypt_load(cd, CRYPT_VERITY, ¶ms); } else { r = _prepare_format(¶ms, data_device, flags | CRYPT_VERITY_NO_HEADER); @@ -329,7 +338,7 @@ if (vp.fec_device) { log_std(" FEC device: %s\n", vp.fec_device); - if ((backing_file = crypt_loop_backing_file(vp.fec_device))) { + if ((backing_file = crypt_loop_backing_file(opt_fec_device))) { log_std(" FEC loop: %s\n", backing_file); free(backing_file); } @@ -431,10 +440,12 @@ DEFAULT_VERITY_HASH, DEFAULT_VERITY_DATA_BLOCK, DEFAULT_VERITY_HASH_BLOCK, DEFAULT_VERITY_SALT_SIZE, 1); + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_SUCCESS); } else if (key->shortName == 'V') { log_std("%s %s\n", PACKAGE_VERITY, PACKAGE_VERSION); + tools_cleanup(); poptFreeContext(popt_context); exit(EXIT_SUCCESS); } else @@ -455,7 +466,6 @@ int main(int argc, const char **argv) { - static char *popt_tmp; static const char *null_action_argv[] = {NULL}; static struct poptOption popt_help_options[] = { { NULL, '\0', POPT_ARG_CALLBACK, help, 0, NULL, NULL }, @@ -468,17 +478,17 @@ { NULL, '\0', POPT_ARG_INCLUDE_TABLE, popt_help_options, 0, N_("Help options:"), NULL }, { "verbose", 'v', POPT_ARG_NONE, &opt_verbose, 0, N_("Shows more detailed error messages"), NULL }, { "debug", '\0', POPT_ARG_NONE, &opt_debug, 0, N_("Show debug messages"), NULL }, - { "no-superblock", 0, POPT_ARG_VAL, &use_superblock, 0, N_("Do not use verity superblock"), NULL }, - { "format", 0, POPT_ARG_INT, &hash_type, 0, N_("Format type (1 - normal, 0 - original Chrome OS)"), N_("number") }, - { "data-block-size", 0, POPT_ARG_INT, &data_block_size, 0, N_("Block size on the data device"), N_("bytes") }, - { "hash-block-size", 0, POPT_ARG_INT, &hash_block_size, 0, N_("Block size on the hash device"), N_("bytes") }, - { "fec-roots", 0, POPT_ARG_INT, &fec_roots, 0, N_("FEC parity bytes"), N_("bytes") }, - { "data-blocks", 0, POPT_ARG_STRING, &popt_tmp, 1, N_("The number of blocks in the data file"), N_("blocks") }, - { "fec-device", 0, POPT_ARG_STRING, &fec_device, 0, N_("Path to device with error correction data"), N_("path") }, - { "hash-offset", 0, POPT_ARG_STRING, &popt_tmp, 2, N_("Starting offset on the hash device"), N_("bytes") }, - { "fec-offset", 0, POPT_ARG_STRING, &popt_tmp, 3, N_("Starting offset on the FEC device"), N_("bytes") }, - { "hash", 'h', POPT_ARG_STRING, &hash_algorithm, 0, N_("Hash algorithm"), N_("string") }, - { "salt", 's', POPT_ARG_STRING, &salt_string, 0, N_("Salt"), N_("hex string") }, + { "no-superblock", 0, POPT_ARG_VAL, &opt_use_superblock, 0, N_("Do not use verity superblock"), NULL }, + { "format", 0, POPT_ARG_INT, &opt_hash_type, 0, N_("Format type (1 - normal, 0 - original Chrome OS)"), N_("number") }, + { "data-block-size", 0, POPT_ARG_INT, &opt_data_block_size, 0, N_("Block size on the data device"), N_("bytes") }, + { "hash-block-size", 0, POPT_ARG_INT, &opt_hash_block_size, 0, N_("Block size on the hash device"), N_("bytes") }, + { "fec-roots", 0, POPT_ARG_INT, &opt_fec_roots, 0, N_("FEC parity bytes"), N_("bytes") }, + { "data-blocks", 0, POPT_ARG_STRING, NULL, 1, N_("The number of blocks in the data file"), N_("blocks") }, + { "fec-device", 0, POPT_ARG_STRING, &opt_fec_device, 0, N_("Path to device with error correction data"), N_("path") }, + { "hash-offset", 0, POPT_ARG_STRING, NULL, 2, N_("Starting offset on the hash device"), N_("bytes") }, + { "fec-offset", 0, POPT_ARG_STRING, NULL, 3, N_("Starting offset on the FEC device"), N_("bytes") }, + { "hash", 'h', POPT_ARG_STRING, &opt_hash_algorithm, 0, N_("Hash algorithm"), N_("string") }, + { "salt", 's', POPT_ARG_STRING, &opt_salt, 0, N_("Salt"), N_("hex string") }, { "uuid", '\0', POPT_ARG_STRING, &opt_uuid, 0, N_("UUID for device to use"), NULL }, { "root-hash-signature",'\0', POPT_ARG_STRING, &opt_root_hash_signature, 0, N_("Path to root hash signature file"), NULL }, { "restart-on-corruption", 0,POPT_ARG_NONE,&opt_restart_on_corruption, 0, N_("Restart kernel if corruption is detected"), NULL }, @@ -506,15 +516,17 @@ while((r = poptGetNextOpt(popt_context)) > 0) { unsigned long long ull_value; - char *endp; + char *endp, *str = poptGetOptArg(popt_context); errno = 0; - ull_value = strtoull(popt_tmp, &endp, 10); - if (*endp || !*popt_tmp || !isdigit(*popt_tmp) || + ull_value = strtoull(str, &endp, 10); + if (*endp || !*str || !isdigit(*str) || (errno == ERANGE && ull_value == ULLONG_MAX) || (errno != 0 && ull_value == 0)) r = POPT_ERROR_BADNUMBER; + free(str); + switch(r) { case 1: data_blocks = ull_value; @@ -577,7 +589,7 @@ poptGetInvocationName(popt_context)); } - if (data_block_size < 0 || hash_block_size < 0 || hash_type < 0) { + if (opt_data_block_size < 0 || opt_hash_block_size < 0 || opt_hash_type < 0) { usage(popt_context, EXIT_FAILURE, _("Negative number for option not permitted."), poptGetInvocationName(popt_context)); @@ -610,6 +622,7 @@ } r = run_action(action); + tools_cleanup(); poptFreeContext(popt_context); return r; } diff -Nru cryptsetup-2.3.4/tests/api-test-2.c cryptsetup-2.3.6/tests/api-test-2.c --- cryptsetup-2.3.4/tests/api-test-2.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/api-test-2.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,9 +1,9 @@ /* * cryptsetup library LUKS2 API check functions * - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz - * Copyright (C) 2016-2020 Ondrej Kozina + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz + * Copyright (C) 2016-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -212,9 +212,9 @@ if (r_payload_offset) { if (metadata_device) - *r_payload_offset = DIV_ROUND_UP_MODULO(default_header_size * 512, (alignpayload_sec ?: 1) * sector_size); - else *r_payload_offset = alignpayload_sec * sector_size; + else + *r_payload_offset = DIV_ROUND_UP_MODULO(default_header_size * 512, (alignpayload_sec ?: 1) * sector_size); *r_payload_offset /= sector_size; } @@ -493,7 +493,7 @@ OK_(crypt_activate_by_passphrase(cd, NULL, CRYPT_ANY_SLOT, KEY1, strlen(KEY1), 0)); OK_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, KEY1, strlen(KEY1), 0)); FAIL_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, KEY1, strlen(KEY1), 0), "already open"); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); FAIL_(crypt_deactivate(cd, CDEVICE_1), "no such device"); @@ -525,7 +525,7 @@ OK_(crypt_volume_key_verify(cd, key, key_size)); OK_(crypt_activate_by_volume_key(cd, NULL, key, key_size, 0)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); key[1] = ~key[1]; @@ -541,6 +541,13 @@ char key[128]; size_t key_size; int suspend_status; + uint64_t r_payload_offset; + const struct crypt_pbkdf_type fast_pbkdf = { + .type = "pbkdf2", + .hash = "sha256", + .iterations = 1000, + .flags = CRYPT_PBKDF_NO_BENCHMARK + }; OK_(crypt_init(&cd, DEVICE_1)); OK_(crypt_load(cd, CRYPT_LUKS2, NULL)); @@ -602,11 +609,31 @@ FAIL_(crypt_resume_by_volume_key(cd, CDEVICE_1, key, key_size), "wrong key"); OK_(crypt_volume_key_get(cd, CRYPT_ANY_SLOT, key, &key_size, KEY1, strlen(KEY1))); OK_(crypt_resume_by_volume_key(cd, CDEVICE_1, key, key_size)); + OK_(crypt_deactivate(cd, CDEVICE_1)); + CRYPT_FREE(cd); + + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); + OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1)); + /* Resume device with cipher_null */ + OK_(crypt_init(&cd, DMDIR L_DEVICE_OK)); + OK_(crypt_set_pbkdf_type(cd, &fast_pbkdf)); + OK_(crypt_format(cd, CRYPT_LUKS2, "cipher_null", "ecb", NULL, key, key_size, NULL)); + EQ_(0, crypt_keyslot_add_by_volume_key(cd, 0, key, key_size, PASSPHRASE, strlen(PASSPHRASE))); + OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); + OK_(crypt_suspend(cd, CDEVICE_1)); + OK_(crypt_resume_by_volume_key(cd, CDEVICE_1, key, key_size)); + OK_(crypt_get_active_device(cd, CDEVICE_1, &cad)); + EQ_(0, cad.flags & CRYPT_ACTIVATE_SUSPENDED); + OK_(crypt_suspend(cd, CDEVICE_1)); + OK_(crypt_resume_by_passphrase(cd, CDEVICE_1, 0, PASSPHRASE, strlen(PASSPHRASE))); + OK_(crypt_get_active_device(cd, CDEVICE_1, &cad)); + EQ_(0, cad.flags & CRYPT_ACTIVATE_SUSPENDED); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); _remove_keyfiles(); + _cleanup_dmdevices(); } static void AddDeviceLuks2(void) @@ -645,7 +672,7 @@ crypt_decode_key(key3, mk_hex2, key_size); // init test devices - OK_(get_luks2_offsets(1, 0, 0, &r_header_size, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, &r_header_size, &r_payload_offset)); OK_(create_dmdevice_over_loop(H_DEVICE, r_header_size)); OK_(create_dmdevice_over_loop(H_DEVICE_WRONG, r_header_size - 1)); @@ -700,7 +727,7 @@ * test limit values for backing device size */ params.data_alignment = OFFSET_4M; - OK_(get_luks2_offsets(1, params.data_alignment, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, params.data_alignment, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_0S, r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_1S, r_payload_offset + 1)); OK_(create_dmdevice_over_loop(L_DEVICE_WRONG, r_payload_offset - 1)); @@ -721,7 +748,7 @@ OK_(crypt_format(cd, CRYPT_LUKS2, cipher, cipher_mode, NULL, key, key_size, ¶ms)); EQ_(crypt_get_data_offset(cd), r_payload_offset); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(t_device_size(DMDIR CDEVICE_1, &r_size_1)); EQ_(r_size_1, SECTOR_SIZE); OK_(crypt_deactivate(cd, CDEVICE_1)); @@ -761,11 +788,11 @@ CRYPT_FREE(cd); OK_(crypt_init_by_name_and_header(&cd, CDEVICE_1, DMDIR H_DEVICE)); FAIL_(crypt_format(cd, CRYPT_LUKS2, cipher, cipher_mode, NULL, key, key_size, ¶ms), "Context is already formatted"); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); CRYPT_FREE(cd); // check active status without header OK_(crypt_init_by_name_and_header(&cd, CDEVICE_1, NULL)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); NULL_(crypt_get_type(cd)); OK_(strcmp(cipher, crypt_get_cipher(cd))); OK_(strcmp(cipher_mode, crypt_get_cipher_mode(cd))); @@ -788,7 +815,7 @@ CRYPT_FREE(cd); // there we've got uuid mismatch OK_(crypt_init_by_name_and_header(&cd, CDEVICE_1, DMDIR H_DEVICE)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); NULL_(crypt_get_type(cd)); FAIL_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0), "Device is active"); FAIL_(crypt_activate_by_volume_key(cd, CDEVICE_2, key, key_size, 0), "Device is active"); @@ -804,14 +831,14 @@ // even with no keyslots defined it can be activated by volume key OK_(crypt_volume_key_verify(cd, key, key_size)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_2, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_2)); // now with keyslot EQ_(7, crypt_keyslot_add_by_volume_key(cd, 7, key, key_size, passphrase, strlen(passphrase))); EQ_(CRYPT_SLOT_ACTIVE_LAST, crypt_keyslot_status(cd, 7)); EQ_(7, crypt_activate_by_passphrase(cd, CDEVICE_2, CRYPT_ANY_SLOT, passphrase, strlen(passphrase), 0)); - EQ_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_2)); crypt_set_iteration_time(cd, 1); @@ -969,7 +996,7 @@ crypt_decode_key(key, mk_hex, key_size); // init test devices - OK_(get_luks2_offsets(1, 0, 0, &r_header_size, NULL)); + OK_(get_luks2_offsets(0, 0, 0, &r_header_size, NULL)); OK_(create_dmdevice_over_loop(H_DEVICE, r_header_size)); OK_(create_dmdevice_over_loop(H_DEVICE_WRONG, r_header_wrong_size)); /* 7 MiBs only */ //default metadata sizes @@ -1083,7 +1110,7 @@ FAIL_(crypt_activate_by_volume_key(cd, CDEVICE_2, NULL, 0, 0), "not yet formatted"); OK_(crypt_format(cd, CRYPT_LUKS2, "aes", "cbc-essiv:sha256", NULL, NULL, 16, NULL)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_2, NULL, 0, 0)); - EQ_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); CRYPT_FREE(cd); OK_(crypt_init_by_name(&cd, CDEVICE_2)); @@ -1160,7 +1187,7 @@ crypt_decode_key(key, mk_hex, key_size); - OK_(get_luks2_offsets(1, params.data_alignment, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, params.data_alignment, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 5000)); // do not restore header over plain device @@ -1169,7 +1196,7 @@ OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); FAIL_(crypt_header_restore(cd, CRYPT_PLAIN, NO_REQS_LUKS2_HEADER), "Cannot restore header to PLAIN type device"); FAIL_(crypt_header_restore(cd, CRYPT_LUKS2, NO_REQS_LUKS2_HEADER), "Cannot restore header over PLAIN type device"); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1265,7 +1292,7 @@ // hardcoded values for existing image IMAGE1 img_size = 8192; // prepare test env - OK_(get_luks2_offsets(1, 0, 0, &r_header_size, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, &r_header_size, &r_payload_offset)); // external header device OK_(create_dmdevice_over_loop(H_DEVICE, r_header_size)); // prepared header on a device too small to contain header and payload @@ -1290,7 +1317,7 @@ OK_(crypt_load(cd, CRYPT_LUKS2, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(!crypt_get_metadata_device_name(cd)); EQ_(strcmp(DMDIR H_DEVICE, crypt_get_metadata_device_name(cd)), 0); OK_(crypt_deactivate(cd, CDEVICE_1)); @@ -1394,7 +1421,7 @@ crypt_decode_key(key, mk_hex, key_size); - OK_(get_luks2_offsets(0, params.data_alignment, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(1, params.data_alignment, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1)); // create LUKS device and backup the header @@ -1412,7 +1439,7 @@ OK_(crypt_header_restore(cd, CRYPT_LUKS2, BACKUP_FILE)); OK_(crypt_load(cd, CRYPT_LUKS2, NULL)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1421,7 +1448,7 @@ OK_(crypt_load(cd, CRYPT_LUKS2, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 0, passphrase, strlen(passphrase), 0), 0); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1429,7 +1456,7 @@ OK_(crypt_load(cd, CRYPT_LUKS2, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 7, passphrase, strlen(passphrase), 0), 7); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1441,7 +1468,7 @@ OK_(crypt_load(cd, CRYPT_LUKS2, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 0, passphrase, strlen(passphrase), 0), 0); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1449,7 +1476,7 @@ OK_(crypt_load(cd, CRYPT_LUKS2, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 7, passphrase, strlen(passphrase), 0), 7); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1488,8 +1515,8 @@ crypt_decode_key(key, mk_hex, key_size); // prepare env - OK_(get_luks2_offsets(1, params.data_alignment, 0, NULL, &r_payload_offset)); - OK_(get_luks2_offsets(1, 0, 0, &r_header_size, NULL)); + OK_(get_luks2_offsets(0, params.data_alignment, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, &r_header_size, NULL)); OK_(create_dmdevice_over_loop(H_DEVICE, r_header_size)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1000)); OK_(create_dmdevice_over_loop(L_DEVICE_0S, 1000)); @@ -1513,7 +1540,7 @@ FAIL_(crypt_resize(cd, CDEVICE_1, 1001), "Device too small"); if (!t_device_size(DMDIR CDEVICE_1, &r_size)) EQ_(1000, r_size >> SECTOR_SHIFT); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1533,7 +1560,7 @@ FAIL_(crypt_resize(cd, CDEVICE_1, 1001), "Device too small"); if (!t_device_size(DMDIR CDEVICE_1, &r_size)) EQ_(1000, r_size >> SECTOR_SHIFT); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1644,7 +1671,7 @@ kid = add_key("user", KEY_DESC_TEST0, PASSPHRASE, strlen(PASSPHRASE), KEY_SPEC_THREAD_KEYRING); NOTFAIL_(kid, "Test or kernel keyring are broken."); - OK_(get_luks2_offsets(1, 0, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_1S, r_payload_offset + 1)); // prepare the device @@ -1803,6 +1830,7 @@ "\"key_description\":" y ", \"some_field\":\"some_value\"}" + int ks; const char *dummy; const char *cipher = "aes"; const char *cipher_mode = "xts-plain64"; @@ -1835,7 +1863,7 @@ FAIL_(crypt_token_register(&th_reserved), "luks2- is reserved prefix"); - OK_(get_luks2_offsets(1, 0, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_1S, r_payload_offset + 1)); // basic token API tests @@ -1947,6 +1975,13 @@ EQ_(crypt_token_is_assigned(cd, -1, -1), -EINVAL); EQ_(crypt_token_is_assigned(cd, 32, 32), -EINVAL); + // test crypt_keyslot_change_by_passphrase does not erase token references + EQ_(crypt_keyslot_change_by_passphrase(cd, 1, 5, PASSPHRASE1, strlen(PASSPHRASE1), PASSPHRASE1, strlen(PASSPHRASE1)), 5); + OK_(crypt_token_is_assigned(cd, 10, 5)); + ks = crypt_keyslot_change_by_passphrase(cd, 5, CRYPT_ANY_SLOT, PASSPHRASE1, strlen(PASSPHRASE1), PASSPHRASE1, strlen(PASSPHRASE1)); + NOTFAIL_(ks, "Failed to change keyslot passphrase."); + OK_(crypt_token_is_assigned(cd, 10, ks)); + CRYPT_FREE(cd); _cleanup_dmdevices(); @@ -2104,7 +2139,7 @@ CRYPT_FREE(cd); // should be enough for both luks1 and luks2 devices with all vk lengths - OK_(get_luks2_offsets(1, 0, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_1S, r_payload_offset + 1)); // do not allow conversion for legacy luks1 device (non-aligned keyslot offset) @@ -2506,7 +2541,7 @@ .size = 0 }; struct crypt_params_luks1 luks1 = { - .hash = "whirlpool", // test non-standard hash + .hash = "sha512", // test non-standard hash .data_alignment = 2048, }; @@ -2516,7 +2551,7 @@ if (_fips_mode) return; - OK_(get_luks2_offsets(1, 0, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1)); NULL_(crypt_get_pbkdf_type_params(NULL)); @@ -2761,7 +2796,7 @@ pbkdf.iterations = 1000; } - OK_(get_luks2_offsets(1, 0, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1)); /* test crypt_keyslot_add_by_key */ @@ -2876,6 +2911,12 @@ const char *mk_hex2 = "bb21158c733229347bd4e681891e213d94c685be6a5b84818afe7a78a6de7a1e"; size_t key_size_ret, key_size = strlen(mk_hex) / 2, keyslot_key_size = 16; uint64_t r_payload_offset; + const struct crypt_pbkdf_type fast_pbkdf = { + .type = "pbkdf2", + .hash = "sha256", + .iterations = 1000, + .flags = CRYPT_PBKDF_NO_BENCHMARK + }; crypt_decode_key(key, mk_hex, key_size); crypt_decode_key(key2, mk_hex2, key_size); @@ -2883,13 +2924,13 @@ OK_(prepare_keyfile(KEYFILE1, PASSPHRASE, strlen(PASSPHRASE))); OK_(prepare_keyfile(KEYFILE2, PASSPHRASE1, strlen(PASSPHRASE1))); - OK_(get_luks2_offsets(1, 0, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1)); EQ_(key_size, 2 * keyslot_key_size); /* test crypt_keyslot_add_by_key */ OK_(crypt_init(&cd, DMDIR L_DEVICE_OK)); - crypt_set_iteration_time(cd, 1); + OK_(crypt_set_pbkdf_type(cd, &fast_pbkdf)); OK_(crypt_format(cd, CRYPT_LUKS2, cipher, cipher_mode, NULL, key, key_size, NULL)); NULL_(crypt_keyslot_get_encryption(cd, 0, &key_size_ret)); OK_(strcmp(crypt_keyslot_get_encryption(cd, CRYPT_ANY_SLOT, &key_size_ret), cipher_spec)); @@ -2948,7 +2989,7 @@ OK_(strcmp(crypt_keyslot_get_encryption(cd, 7, &key_size_ret), cipher_keyslot)); EQ_(key_size_ret, keyslot_key_size); - crypt_set_iteration_time(cd, 1); + OK_(crypt_set_pbkdf_type(cd, &fast_pbkdf)); EQ_(8, crypt_keyslot_change_by_passphrase(cd, 1, 8, PASSPHRASE1, strlen(PASSPHRASE1), PASSPHRASE, strlen(PASSPHRASE))); OK_(strcmp(crypt_keyslot_get_encryption(cd, 8, &key_size_ret), cipher_spec)); EQ_(key_size_ret, key_size); @@ -2977,7 +3018,7 @@ /* LUKS1 compatible calls */ OK_(crypt_init(&cd, DMDIR L_DEVICE_OK)); - crypt_set_iteration_time(cd, 1); + OK_(crypt_set_pbkdf_type(cd, &fast_pbkdf)); OK_(crypt_format(cd, CRYPT_LUKS1, cipher, cipher_mode, NULL, key, key_size, NULL)); NULL_(crypt_keyslot_get_encryption(cd, 0, &key_size_ret)); OK_(strcmp(crypt_keyslot_get_encryption(cd, CRYPT_ANY_SLOT, &key_size_ret), cipher_spec)); @@ -2987,6 +3028,18 @@ EQ_(key_size_ret, key_size); CRYPT_FREE(cd); + /* LUKS2 cipher null checks */ + OK_(crypt_init(&cd, DMDIR L_DEVICE_OK)); + OK_(crypt_set_pbkdf_type(cd, &fast_pbkdf)); + OK_(crypt_format(cd, CRYPT_LUKS2, "cipher_null", "ecb", NULL, key, key_size, NULL)); + FAIL_(crypt_keyslot_set_encryption(cd, "null", 32), "cipher null is not allowed"); + FAIL_(crypt_keyslot_set_encryption(cd, "cipher_null", 32), "cipher null is not allowed"); + FAIL_(crypt_keyslot_set_encryption(cd, "cipher_null-ecb", 32), "cipher null is not allowed"); + EQ_(0, crypt_keyslot_add_by_volume_key(cd, 0, key, key_size, PASSPHRASE, strlen(PASSPHRASE))); + NOTNULL_(crypt_keyslot_get_encryption(cd, 0, &key_size_ret)); + NULL_(strstr(crypt_keyslot_get_encryption(cd, 0, &key_size_ret), "null")); + CRYPT_FREE(cd); + _cleanup_dmdevices(); _remove_keyfiles(); } @@ -3011,7 +3064,7 @@ kid1 = add_key("user", KEY_DESC_TEST1, PASSPHRASE1, strlen(PASSPHRASE1), KEY_SPEC_THREAD_KEYRING); NOTFAIL_(kid1, "Test or kernel keyring are broken."); - OK_(get_luks2_offsets(1, 0, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1)); // prepare the device @@ -3029,7 +3082,7 @@ OK_(crypt_load(cd, CRYPT_LUKS2, NULL)); EQ_(crypt_activate_by_keyring(cd, NULL, KEY_DESC_TEST0, 0, 0), 0); EQ_(crypt_activate_by_keyring(cd, CDEVICE_1, KEY_DESC_TEST0, 0, 0), 0); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); FAIL_(crypt_activate_by_keyring(cd, CDEVICE_1, KEY_DESC_TEST0, 0, 0), "already open"); OK_(crypt_deactivate(cd, CDEVICE_1)); EQ_(crypt_status(cd, CDEVICE_1), CRYPT_INACTIVE); @@ -3037,7 +3090,7 @@ EQ_(crypt_activate_by_keyring(cd, NULL, KEY_DESC_TEST1, 2, 0), 2); FAIL_(crypt_activate_by_keyring(cd, CDEVICE_1, KEY_DESC_TEST1, 1, 0), "Keyslot not assigned to volume"); EQ_(crypt_activate_by_keyring(cd, CDEVICE_1, KEY_DESC_TEST1, 2, 0), 2); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); EQ_(crypt_activate_by_keyring(cd, CDEVICE_1, KEY_DESC_TEST1, CRYPT_ANY_SLOT, 0), 2); OK_(crypt_deactivate(cd, CDEVICE_1)); @@ -3296,7 +3349,7 @@ OK_(crypt_activate_by_token(cd, NULL, 1, NULL, CRYPT_ACTIVATE_KEYRING_KEY)); } #endif - OK_(get_luks2_offsets(1, 8192, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 8192, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 2)); //OK_(_system("dd if=" NO_REQS_LUKS2_HEADER " of=" NO_REQS_LUKS2_HEADER " bs=4096 2>/dev/null", 1)); OK_(_system("dd if=" NO_REQS_LUKS2_HEADER " of=" DMDIR L_DEVICE_OK " bs=1M count=4 oflag=direct 2>/dev/null", 1)); @@ -3367,7 +3420,7 @@ /* crypt_resize (restricted) */ FAIL_((r = crypt_resize(cd, CDEVICE_1, 1)), "Unmet requirements detected"); EQ_(r, -ETXTBSY); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); /* crypt_get_active_device (unrestricted) */ OK_(crypt_get_active_device(cd, CDEVICE_1, &cad)); @@ -3415,7 +3468,7 @@ EQ_(crypt_keyslot_add_by_volume_key(cd, 7, NULL, key_size, passphrase, strlen(passphrase)), 7); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_2, 7, passphrase, strlen(passphrase) ,0), 7); - EQ_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); CRYPT_FREE(cd); OK_(crypt_init_by_name_and_header(&cd, CDEVICE_2, NULL)); @@ -3477,7 +3530,7 @@ crypt_decode_key(key, mk_hex, key_size); crypt_decode_key(key1, mk_hex2, key_size); - OK_(get_luks2_offsets(1, 0, 0, NULL, &r_payload_offset)); + OK_(get_luks2_offsets(0, 0, 0, NULL, &r_payload_offset)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1000)); OK_(create_dmdevice_over_loop(L_DEVICE_WRONG, r_payload_offset + 5000)); OK_(create_dmdevice_over_loop(L_DEVICE_1S, r_payload_offset + 1)); @@ -3693,7 +3746,7 @@ pbkdf.iterations = 1000; } - OK_(get_luks2_offsets(0, 0, 0, &r_header_size, NULL)); + OK_(get_luks2_offsets(1, 0, 0, &r_header_size, NULL)); OK_(create_dmdevice_over_loop(H_DEVICE, r_header_size)); OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_header_size + 16)); diff -Nru cryptsetup-2.3.4/tests/api-test.c cryptsetup-2.3.6/tests/api-test.c --- cryptsetup-2.3.4/tests/api-test.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/api-test.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,9 +1,9 @@ /* * cryptsetup library API check functions * - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz - * Copyright (C) 2016-2020 Ondrej Kozina + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz + * Copyright (C) 2016-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -357,7 +357,7 @@ OK_(crypt_format(cd, CRYPT_PLAIN, cipher, cipher_mode, NULL, NULL, key_size, NULL)); FAIL_(crypt_activate_by_volume_key(cd, NULL, key, key_size, 0), "cannot verify key with plain"); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -379,7 +379,7 @@ OK_(crypt_init(&cd, DEVICE_1)); OK_(crypt_format(cd, CRYPT_PLAIN, cipher, cipher_mode, NULL, NULL, key_size, ¶ms)); OK_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, passphrase, strlen(passphrase), 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); snprintf(path, sizeof(path), "%s/%s", crypt_get_dir(), CDEVICE_1); if (t_device_size(path, &r_size) >= 0) EQ_(r_size>>SECTOR_SHIFT, 1); @@ -428,7 +428,7 @@ crypt_init(&cd, DEVICE_1); OK_(crypt_format(cd, CRYPT_PLAIN, cipher, cipher_mode, NULL, NULL, key_size, ¶ms)); OK_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, passphrase, strlen(passphrase), 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); if (!t_device_size(path, &r_size)) EQ_((r_size >> SECTOR_SHIFT),params.size); OK_(crypt_deactivate(cd,CDEVICE_1)); @@ -447,7 +447,7 @@ OK_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, passphrase, strlen(passphrase), 0)); // device status check - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); snprintf(path, sizeof(path), "%s/%s", crypt_get_dir(), CDEVICE_1); fd = open(path, O_RDONLY); EQ_(crypt_status(cd, CDEVICE_1), CRYPT_BUSY); @@ -492,7 +492,7 @@ OK_(strcmp(crypt_get_type(cd),CRYPT_PLAIN)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); // crypt_resize() OK_(crypt_resize(cd,CDEVICE_1,size>>SECTOR_SHIFT)); // same size @@ -531,7 +531,7 @@ FAIL_(crypt_resize(cd,CDEVICE_1,params.size + 11), "new device size overlaps backing device"); // with respect to offset if (!t_device_size(path,&r_size)) EQ_(r_size>>SECTOR_SHIFT, params.size + 10); - EQ_(crypt_status(cd,CDEVICE_1),CRYPT_ACTIVE); + GE_(crypt_status(cd,CDEVICE_1),CRYPT_ACTIVE); fd = open(path, O_RDONLY); NOTFAIL_(fd, "Bad loop device."); close(fd); @@ -555,9 +555,9 @@ // suspend/resume tests FAIL_(crypt_suspend(cd,CDEVICE_1),"cannot suspend plain device"); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); FAIL_(crypt_resume_by_passphrase(cd,CDEVICE_1,CRYPT_ANY_SLOT,passphrase, strlen(passphrase)),"cannot resume plain device"); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); // retrieve volume key check memset(key2, 0, key_size); @@ -579,7 +579,7 @@ OK_(prepare_keyfile(KEYFILE2, KEY2, strlen(KEY2))); FAIL_(crypt_activate_by_keyfile(cd, NULL, CRYPT_ANY_SLOT, KEYFILE1, 0, 0), "cannot verify key with plain"); EQ_(0, crypt_activate_by_keyfile(cd, CDEVICE_1, CRYPT_ANY_SLOT, KEYFILE1, 0, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); FAIL_(crypt_activate_by_keyfile_offset(cd, NULL, CRYPT_ANY_SLOT, KEYFILE1, 0, strlen(KEY1) + 1, 0), "cannot seek"); FAIL_(crypt_activate_by_keyfile_device_offset(cd, NULL, CRYPT_ANY_SLOT, KEYFILE1, 0, strlen(KEY1) + 1, 0), "cannot seek"); @@ -631,7 +631,7 @@ EQ_(new_messages, 0); OK_(crypt_format(cd, CRYPT_PLAIN, cipher, cipher_mode, NULL, NULL, key_size, ¶ms)); OK_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, passphrase, strlen(passphrase), 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); EQ_(new_messages, 0); FAIL_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, passphrase, strlen(passphrase), 0), "already exists"); EQ_(new_messages, 1); @@ -651,7 +651,7 @@ OK_(crypt_activate_by_passphrase(cd, NULL, CRYPT_ANY_SLOT, KEY1, strlen(KEY1), 0)); OK_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, KEY1, strlen(KEY1), 0)); FAIL_(crypt_activate_by_passphrase(cd, CDEVICE_1, CRYPT_ANY_SLOT, KEY1, strlen(KEY1), 0), "already open"); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); FAIL_(crypt_deactivate(cd, CDEVICE_1), "no such device"); @@ -666,7 +666,7 @@ OK_(crypt_volume_key_verify(cd, key, key_size)); OK_(crypt_activate_by_volume_key(cd, NULL, key, key_size, 0)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); key[1] = ~key[1]; @@ -682,6 +682,13 @@ char key[128]; size_t key_size; int suspend_status; + uint64_t r_payload_offset; + const struct crypt_pbkdf_type fast_pbkdf = { + .type = "pbkdf2", + .hash = "sha256", + .iterations = 1000, + .flags = CRYPT_PBKDF_NO_BENCHMARK + }; OK_(crypt_init(&cd, DEVICE_1)); OK_(crypt_load(cd, CRYPT_LUKS1, NULL)); @@ -742,11 +749,31 @@ FAIL_(crypt_resume_by_volume_key(cd, CDEVICE_1, key, key_size), "wrong key"); OK_(crypt_volume_key_get(cd, CRYPT_ANY_SLOT, key, &key_size, KEY1, strlen(KEY1))); OK_(crypt_resume_by_volume_key(cd, CDEVICE_1, key, key_size)); + OK_(crypt_deactivate(cd, CDEVICE_1)); + CRYPT_FREE(cd); + OK_(get_luks_offsets(0, key_size, 1024*2, 0, NULL, &r_payload_offset)); + OK_(create_dmdevice_over_loop(L_DEVICE_OK, r_payload_offset + 1)); + + /* Resume device with cipher_null */ + OK_(crypt_init(&cd, DMDIR L_DEVICE_OK)); + OK_(crypt_set_pbkdf_type(cd, &fast_pbkdf)); + OK_(crypt_format(cd, CRYPT_LUKS1, "cipher_null", "ecb", NULL, key, key_size, NULL)); + EQ_(0, crypt_keyslot_add_by_volume_key(cd, 0, key, key_size, "", 0)); + OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); + OK_(crypt_suspend(cd, CDEVICE_1)); + OK_(crypt_resume_by_volume_key(cd, CDEVICE_1, key, key_size)); + OK_(crypt_get_active_device(cd, CDEVICE_1, &cad)); + EQ_(0, cad.flags & CRYPT_ACTIVATE_SUSPENDED); + OK_(crypt_suspend(cd, CDEVICE_1)); + OK_(crypt_resume_by_passphrase(cd, CDEVICE_1, 0, "", 0)); + OK_(crypt_get_active_device(cd, CDEVICE_1, &cad)); + EQ_(0, cad.flags & CRYPT_ACTIVATE_SUSPENDED); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); _remove_keyfiles(); + _cleanup_dmdevices(); } static void AddDeviceLuks(void) @@ -848,7 +875,7 @@ OK_(crypt_format(cd, CRYPT_LUKS1, cipher, cipher_mode, NULL, key, key_size, ¶ms)); EQ_(crypt_get_data_offset(cd), params.data_alignment); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(t_device_size(DMDIR CDEVICE_1, &r_size_1)); EQ_(r_size_1, SECTOR_SIZE); OK_(crypt_deactivate(cd, CDEVICE_1)); @@ -875,11 +902,11 @@ CRYPT_FREE(cd); OK_(crypt_init_by_name_and_header(&cd, CDEVICE_1, DMDIR H_DEVICE)); FAIL_(crypt_format(cd, CRYPT_LUKS1, cipher, cipher_mode, NULL, key, key_size, ¶ms), "Context is already formatted"); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); CRYPT_FREE(cd); // check active status without header OK_(crypt_init_by_name_and_header(&cd, CDEVICE_1, NULL)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); NULL_(crypt_get_type(cd)); OK_(strcmp(cipher, crypt_get_cipher(cd))); OK_(strcmp(cipher_mode, crypt_get_cipher_mode(cd))); @@ -902,7 +929,7 @@ CRYPT_FREE(cd); // there we've got uuid mismatch OK_(crypt_init_by_name_and_header(&cd, CDEVICE_1, DMDIR H_DEVICE)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); NULL_(crypt_get_type(cd)); FAIL_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0), "Device is active"); FAIL_(crypt_activate_by_volume_key(cd, CDEVICE_2, key, key_size, 0), "Device is active"); @@ -918,14 +945,14 @@ // even with no keyslots defined it can be activated by volume key OK_(crypt_volume_key_verify(cd, key, key_size)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_2, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_2)); // now with keyslot EQ_(7, crypt_keyslot_add_by_volume_key(cd, 7, key, key_size, passphrase, strlen(passphrase))); EQ_(CRYPT_SLOT_ACTIVE_LAST, crypt_keyslot_status(cd, 7)); EQ_(7, crypt_activate_by_passphrase(cd, CDEVICE_2, CRYPT_ANY_SLOT, passphrase, strlen(passphrase), 0)); - EQ_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_2)); crypt_set_iteration_time(cd, 1); @@ -1027,7 +1054,7 @@ FAIL_(crypt_activate_by_volume_key(cd, CDEVICE_2, NULL, 0, 0), "not yet formatted"); OK_(crypt_format(cd, CRYPT_LUKS1, "aes", "cbc-essiv:sha256", NULL, NULL, 16, NULL)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_2, NULL, 0, 0)); - EQ_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); CRYPT_FREE(cd); OK_(crypt_init_by_name(&cd, CDEVICE_2)); @@ -1069,7 +1096,7 @@ FAIL_(crypt_volume_key_verify(cd, "xxx", 3), "cannot verify key with plain"); FAIL_(crypt_activate_by_volume_key(cd, CDEVICE_2, "xxx", 3, 0), "wrong key length"); OK_(crypt_activate_by_volume_key(cd, CDEVICE_2, "volumekeyvolumek", 16, 0)); - EQ_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_2), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_2)); CRYPT_FREE(cd); } @@ -1105,7 +1132,7 @@ OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); FAIL_(crypt_header_restore(cd, CRYPT_PLAIN, VALID_HEADER), "Cannot restore header to PLAIN type device"); FAIL_(crypt_header_restore(cd, CRYPT_LUKS1, VALID_HEADER), "Cannot restore header over PLAIN type device"); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1211,7 +1238,7 @@ OK_(crypt_load(cd, CRYPT_LUKS1, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(!crypt_get_metadata_device_name(cd)); EQ_(strcmp(DMDIR H_DEVICE, crypt_get_metadata_device_name(cd)), 0); OK_(crypt_deactivate(cd, CDEVICE_1)); @@ -1313,7 +1340,7 @@ OK_(crypt_header_restore(cd, CRYPT_LUKS1, BACKUP_FILE)); OK_(crypt_load(cd, CRYPT_LUKS1, NULL)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, key, key_size, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1322,7 +1349,7 @@ OK_(crypt_load(cd, CRYPT_LUKS1, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 0, passphrase, strlen(passphrase), 0), 0); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1330,7 +1357,7 @@ OK_(crypt_load(cd, CRYPT_LUKS1, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 7, passphrase, strlen(passphrase), 0), 7); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1342,7 +1369,7 @@ OK_(crypt_load(cd, CRYPT_LUKS1, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 0, passphrase, strlen(passphrase), 0), 0); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1350,7 +1377,7 @@ OK_(crypt_load(cd, CRYPT_LUKS1, NULL)); OK_(crypt_set_data_device(cd, DMDIR L_DEVICE_OK)); EQ_(crypt_activate_by_passphrase(cd, CDEVICE_1, 7, passphrase, strlen(passphrase), 0), 7); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1395,7 +1422,7 @@ FAIL_(crypt_resize(cd, CDEVICE_1, 1001), "Device too small"); if (!t_device_size(DMDIR CDEVICE_1, &r_size)) EQ_(1000, r_size >> SECTOR_SHIFT); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1415,7 +1442,7 @@ FAIL_(crypt_resize(cd, CDEVICE_1, 1001), "Device too small"); if (!t_device_size(DMDIR CDEVICE_1, &r_size)) EQ_(1000, r_size >> SECTOR_SHIFT); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); OK_(crypt_deactivate(cd, CDEVICE_1)); CRYPT_FREE(cd); @@ -1750,7 +1777,7 @@ CRYPT_FREE(cd); OK_(crypt_init_by_name_and_header(&cd, CDEVICE_1, NULL)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); FAIL_(crypt_volume_key_get(cd, CRYPT_ANY_SLOT, key, &key_size, NULL, 0), "Need crypt_load"); @@ -1837,7 +1864,7 @@ params.tag_size = 4; OK_(crypt_load(cd, CRYPT_INTEGRITY, ¶ms)); OK_(crypt_activate_by_volume_key(cd, CDEVICE_1, NULL, 0, 0)); - EQ_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); + GE_(crypt_status(cd, CDEVICE_1), CRYPT_ACTIVE); CRYPT_FREE(cd); memset(&ip, 0, sizeof(ip)); diff -Nru cryptsetup-2.3.4/tests/api_test.h cryptsetup-2.3.6/tests/api_test.h --- cryptsetup-2.3.4/tests/api_test.h 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/api_test.h 2021-05-28 04:57:08.000000000 -0500 @@ -1,9 +1,9 @@ /* * cryptsetup library API check functions * - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz - * Copyright (C) 2016-2020 Ondrej Kozina + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz + * Copyright (C) 2016-2021 Ondrej Kozina * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -61,6 +61,7 @@ void check_ok_return(int status, int line, const char *func); void check_ko(int status, int line, const char *func); void check_equal(int line, const char *func, int64_t x, int64_t y); +void check_ge_equal(int line, const char *func, int64_t x, int64_t y); void check_null(int line, const char *func, const void *x); void check_notnull(int line, const char *func, const void *x); void xlog(const char *msg, const char *tst, const char *func, int line, const char *txt); @@ -79,6 +80,10 @@ xlog("(equal) ", #x " == " #y, __FUNCTION__, __LINE__, NULL); \ if (_x != _y) check_equal(__LINE__, __FUNCTION__, _x, _y); \ } while(0) +#define GE_(x, y) do { int64_t _x = (x), _y = (y); \ + xlog("(g_equal)", #x " == " #y, __FUNCTION__, __LINE__, NULL); \ + if (_x < _y) check_ge_equal(__LINE__, __FUNCTION__, _x, _y); \ + } while(0) #define NULL_(x) do { xlog("(null) ", #x, __FUNCTION__, __LINE__, NULL); \ check_null(__LINE__, __FUNCTION__, (x)); \ } while(0) diff -Nru cryptsetup-2.3.4/tests/bitlk-compat-test cryptsetup-2.3.6/tests/bitlk-compat-test --- cryptsetup-2.3.4/tests/bitlk-compat-test 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/bitlk-compat-test 2021-05-28 04:57:08.000000000 -0500 @@ -7,6 +7,9 @@ TST_DIR=bitlk-images MAP=bitlktst +CRYPTSETUP_VALGRIND=../.libs/cryptsetup +CRYPTSETUP_LIB_VALGRIND=../.libs + [ -z "$srcdir" ] && srcdir="." function remove_mapping() @@ -59,6 +62,10 @@ # smart card protected VMK GUID dump_sc_vmk=$(echo "$dump" | grep "VMK protected with smart card" -B 1 | head -1 | cut -d: -f2 | tr -d "\t ") [ ! -z "$SC_VMK_GUID" -a "$dump_sc_vmk" = "$SC_VMK_GUID" ] || fail " smart card protected VMK GUID check from dump failed." + elif echo "$file" | grep -q -e "startup-key"; then + # startup key protected VMK GUID + dump_sk_vmk=$(echo "$dump" | grep "VMK protected with startup key" -B 1 | head -1 | cut -d: -f2 | tr -d "\t ") + [ ! -z "$SK_VMK_GUID" -a "$dump_sk_vmk" = "$SK_VMK_GUID" ] || fail " startup key protected VMK GUID check from dump failed." else # password protected VMK GUID dump_pw_vmk=$(echo "$dump" | grep "VMK protected with passphrase" -B 1 | head -1 | cut -d: -f2 | tr -d "\t ") @@ -71,9 +78,23 @@ } +function valgrind_setup() +{ + which valgrind >/dev/null 2>&1 || fail "Cannot find valgrind." + [ ! -f $CRYPTSETUP_VALGRIND ] && fail "Unable to get location of cryptsetup executable." + export LD_LIBRARY_PATH="$CRYPTSETUP_LIB_VALGRIND:$LD_LIBRARY_PATH" +} + +function valgrind_run() +{ + INFOSTRING="$(basename ${BASH_SOURCE[1]})-line-${BASH_LINENO[0]}" ./valg.sh ${CRYPTSETUP_VALGRIND} "$@" +} + export LANG=C [ ! -d $TST_DIR ] && tar xJSf $srcdir/bitlk-images.tar.xz --no-same-owner +[ -n "$VALG" ] && valgrind_setup && CRYPTSETUP=valgrind_run + echo "HEADER CHECK" for file in $(ls $TST_DIR/bitlk-*) ; do echo -n " $file" @@ -117,4 +138,25 @@ [ "$sha256sum" = "$SHA256SUM" ] || fail " SHA256 sum check failed." echo " [OK]" done + + # startup key test -- we need to use BEK file from the archive + if echo "$file" | grep -q -e "startup-key"; then + echo -n " $file" + bek_file=$(echo $SK_VMK_GUID.BEK | tr /a-z/ /A-Z/) + $CRYPTSETUP bitlkOpen -r $file --test-passphrase --key-file $TST_DIR/$bek_file + ret=$? + [ $ret -eq 1 ] && echo " [N/A]" && continue + $CRYPTSETUP bitlkOpen -r $file $MAP --key-file $TST_DIR/$bek_file >/dev/null 2>&1 + ret=$? + [ $ret -eq 0 ] || fail " failed to open $file ($ret)" + $CRYPTSETUP status $MAP >/dev/null || fail + $CRYPTSETUP status /dev/mapper/$MAP >/dev/null || fail + uuid=$(lsblk -n -o UUID /dev/mapper/$MAP) + sha256sum=$(sha256sum /dev/mapper/$MAP | cut -d" " -f1) + $CRYPTSETUP remove $MAP || fail + [ "$uuid" = "$UUID" ] || fail " UUID check failed." + [ "$sha256sum" = "$SHA256SUM" ] || fail " SHA256 sum check failed." + echo " [OK]" + + fi done Binary files /tmp/QnA6uqvM60/cryptsetup-2.3.4/tests/bitlk-images.tar.xz and /tmp/2_mIBI9v45/cryptsetup-2.3.6/tests/bitlk-images.tar.xz differ diff -Nru cryptsetup-2.3.4/tests/compat-test cryptsetup-2.3.6/tests/compat-test --- cryptsetup-2.3.4/tests/compat-test 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/compat-test 2021-05-28 04:57:08.000000000 -0500 @@ -3,6 +3,7 @@ PS4='$LINENO:' [ -z "$CRYPTSETUP_PATH" ] && CRYPTSETUP_PATH=".." CRYPTSETUP=$CRYPTSETUP_PATH/cryptsetup +CRYPTSETUP_RAW=$CRYPTSETUP CRYPTSETUP_VALGRIND=../.libs/cryptsetup CRYPTSETUP_LIB_VALGRIND=../.libs @@ -189,19 +190,28 @@ function valgrind_setup() { + [ -n "$VALG" ] || return which valgrind >/dev/null 2>&1 || fail "Cannot find valgrind." [ ! -f $CRYPTSETUP_VALGRIND ] && fail "Unable to get location of cryptsetup executable." export LD_LIBRARY_PATH="$CRYPTSETUP_LIB_VALGRIND:$LD_LIBRARY_PATH" + CRYPTSETUP=valgrind_run + CRYPTSETUP_RAW="./valg.sh ${CRYPTSETUP_VALGRIND}" } function valgrind_run() { - INFOSTRING="$(basename ${BASH_SOURCE[1]})-line-${BASH_LINENO[0]}" ./valg.sh ${CRYPTSETUP_VALGRIND} "$@" + export INFOSTRING="$(basename ${BASH_SOURCE[1]})-line-${BASH_LINENO[0]}" + $CRYPTSETUP_RAW "$@" } -export LANG=C +function expect_run() +{ + export INFOSTRING="$(basename ${BASH_SOURCE[1]})-line-${BASH_LINENO[0]}" + expect "$@" +} -[ -n "$VALG" ] && valgrind_setup && CRYPTSETUP=valgrind_run +export LANG=C +valgrind_setup # LUKS non-root-tests if [ $(id -u) != 0 ]; then @@ -702,6 +712,12 @@ [ $? -ne 2 ] && fail "luksResume should return EPERM exit code" echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME || fail $CRYPTSETUP -q luksClose $DEV_NAME || fail +echo | $CRYPTSETUP -q luksFormat -c null $FAST_PBKDF_OPT --type luks1 $LOOPDEV || fail +echo | $CRYPTSETUP -q luksOpen $LOOPDEV $DEV_NAME || fail +$CRYPTSETUP luksSuspend $DEV_NAME || fail +$CRYPTSETUP -q status $DEV_NAME | grep -q "(suspended)" || fail +echo | $CRYPTSETUP luksResume $DEV_NAME || fail +$CRYPTSETUP -q luksClose $DEV_NAME || fail prepare "[27] luksOpen with specified key slot number" wipe # first, let's try passphrase option @@ -751,7 +767,7 @@ $CRYPTSETUP luksSuspend $DEV_NAME --header $HEADER_IMG || fail echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME --header $HEADER_IMG || fail $CRYPTSETUP luksSuspend $DEV_NAME || fail -echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME && fail +echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME 2>/dev/null && fail echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME --header $HEADER_IMG || fail $CRYPTSETUP luksClose $DEV_NAME || fail echo $PWD1 | $CRYPTSETUP luksAddKey $FAST_PBKDF_OPT -S 5 _fakedev_ --header $HEADER_IMG $KEY5 || fail @@ -800,11 +816,13 @@ prepare "[32] Interactive password retry from terminal." new EXPECT_DEV=$(losetup $LOOPDEV | sed -e "s/.*(\(.*\))/\1/") +EXPECT_TIMEOUT=10 +[ -n "$VALG" ] && EXPECT_TIMEOUT=60 -expect - >/dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null </dev/null <$KEYE + +expect_run - >/dev/null </dev/null && fail + if [ $HAVE_KEYRING -gt 0 -a -d /proc/sys/kernel/keys ]; then + test_and_prepare_keyring + load_key user $TEST_TOKEN2 $PWD1 "$TEST_KEYRING" || skip "Kernel keyring service is useless on this system, test skipped." + $CRYPTSETUP token add $LOOPDEV --key-description $TEST_TOKEN2 --token-id 1 || fail + $CRYPTSETUP -q resize --size 99 $DEV_NAME <&- || fail + $CRYPTSETUP -q status $DEV_NAME | grep "size:" | grep -q "99 sectors" || fail + #replace kernel key with wrong pass + load_key user $TEST_TOKEN2 $PWD2 "$TEST_KEYRING" || skip "Kernel keyring service is useless on this system, test skipped." + # must fail due to --token-only + echo $PWD1 | $CRYPTSETUP -q resize --token-only --size 100 $DEV_NAME && fail + $CRYPTSETUP -q status $DEV_NAME | grep "size:" | grep -q "100 sectors" && fail + fi fi echo $PWD1 | $CRYPTSETUP -q resize --size 100 $DEV_NAME || fail $CRYPTSETUP -q status $DEV_NAME | grep "size:" | grep -q "100 sectors" || fail @@ -649,6 +662,12 @@ [ $? -ne 2 ] && fail "luksResume should return EPERM exit code" echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME || fail $CRYPTSETUP -q luksClose $DEV_NAME || fail +echo $PWD1 | $CRYPTSETUP -q luksFormat -c null $FAST_PBKDF_OPT --type luks2 $LOOPDEV || fail +echo $PWD1 | $CRYPTSETUP -q luksOpen $LOOPDEV $DEV_NAME || fail +$CRYPTSETUP luksSuspend $DEV_NAME || fail +$CRYPTSETUP -q status $DEV_NAME | grep -q "(suspended)" || fail +echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME || fail +$CRYPTSETUP -q luksClose $DEV_NAME || fail prepare "[27] luksOpen with specified key slot number" wipe # first, let's try passphrase option @@ -705,7 +724,7 @@ $CRYPTSETUP luksSuspend $DEV_NAME --header $HEADER_IMG || fail echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME --header $HEADER_IMG || fail $CRYPTSETUP luksSuspend $DEV_NAME || fail -echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME && fail +echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME 2>/dev/null && fail echo $PWD1 | $CRYPTSETUP luksResume $DEV_NAME --header $HEADER_IMG || fail $CRYPTSETUP luksClose $DEV_NAME || fail echo $PWD1 | $CRYPTSETUP luksAddKey $FAST_PBKDF_OPT -S 5 _fakedev_ --header $HEADER_IMG $KEY5 || fail diff -Nru cryptsetup-2.3.4/tests/crypto-vectors.c cryptsetup-2.3.6/tests/crypto-vectors.c --- cryptsetup-2.3.4/tests/crypto-vectors.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/crypto-vectors.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * cryptsetup crypto backend test vectors * - * Copyright (C) 2018-2020 Milan Broz + * Copyright (C) 2018-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -251,7 +251,7 @@ const char *name; unsigned int length; const char *out; - } out[6]; + } out[8]; }; static struct hash_test_vector hash_test_vectors[] = { @@ -270,6 +270,12 @@ "\xc5\x30\x23\x21\x30\xd4\x07\xf8\x9a\xfe\xe0\x96\x49\x97\xf7\xa7" "\x3e\x83\xbe\x69\x8b\x28\x8f\xeb\xcf\x88\xe3\xe0\x3c\x4f\x07\x57" "\xea\x89\x64\xe5\x9b\x63\xd9\x37\x08\xb1\x38\xcc\x42\xa6\x6e\xb3" }, + { "blake2b-512",64,"\x78\x6a\x02\xf7\x42\x01\x59\x03\xc6\xc6\xfd\x85\x25\x52\xd2\x72" + "\x91\x2f\x47\x40\xe1\x58\x47\x61\x8a\x86\xe2\x17\xf7\x1f\x54\x19" + "\xd2\x5e\x10\x31\xaf\xee\x58\x53\x13\x89\x64\x44\x93\x4e\xb0\x4b" + "\x90\x3a\x68\x5b\x14\x48\xb7\x55\xd5\x6f\x70\x1a\xfe\x9b\xe2\xce" }, + { "blake2s-256",32,"\x69\x21\x7a\x30\x79\x90\x80\x94\xe1\x11\x21\xd0\x42\x35\x4a\x7c" + "\x1f\x55\xb6\x48\x2c\xa1\xa5\x1e\x1b\x25\x0d\xfd\x1e\xd0\xee\xf9" }, }},{ "a", 1, { { "crc32", 4, "\xe8\xb7\xbe\x43" }, @@ -285,6 +291,12 @@ "\xf0\xdf\xf5\x94\x13\x14\x5e\x69\x73\xc4\x50\x01\xd0\x08\x7b\x42" "\xd1\x1b\xc6\x45\x41\x3a\xef\xf6\x3a\x42\x39\x1a\x39\x14\x5a\x59" "\x1a\x92\x20\x0d\x56\x01\x95\xe5\x3b\x47\x85\x84\xfd\xae\x23\x1a" }, + { "blake2b-512",64,"\x33\x3f\xcb\x4e\xe1\xaa\x7c\x11\x53\x55\xec\x66\xce\xac\x91\x7c" + "\x8b\xfd\x81\x5b\xf7\x58\x7d\x32\x5a\xec\x18\x64\xed\xd2\x4e\x34" + "\xd5\xab\xe2\xc6\xb1\xb5\xee\x3f\xac\xe6\x2f\xed\x78\xdb\xef\x80" + "\x2f\x2a\x85\xcb\x91\xd4\x55\xa8\xf5\x24\x9d\x33\x08\x53\xcb\x3c" }, + { "blake2s-256",32,"\x4a\x0d\x12\x98\x73\x40\x30\x37\xc2\xcd\x9b\x90\x48\x20\x36\x87" + "\xf6\x23\x3f\xb6\x73\x89\x56\xe0\x34\x9b\xd4\x32\x0f\xec\x3e\x90" }, }},{ "abc", 3, { { "crc32", 4, "\x35\x24\x41\xc2" }, @@ -300,6 +312,12 @@ "\xf3\x04\x3e\x3a\x73\x1b\xce\x72\x1a\xe1\xb3\x03\xd9\x7e\x6d\x4c" "\x71\x81\xee\xbd\xb6\xc5\x7e\x27\x7d\x0e\x34\x95\x71\x14\xcb\xd6" "\xc7\x97\xfc\x9d\x95\xd8\xb5\x82\xd2\x25\x29\x20\x76\xd4\xee\xf5" }, + { "blake2b-512",64,"\xba\x80\xa5\x3f\x98\x1c\x4d\x0d\x6a\x27\x97\xb6\x9f\x12\xf6\xe9" + "\x4c\x21\x2f\x14\x68\x5a\xc4\xb7\x4b\x12\xbb\x6f\xdb\xff\xa2\xd1" + "\x7d\x87\xc5\x39\x2a\xab\x79\x2d\xc2\x52\xd5\xde\x45\x33\xcc\x95" + "\x18\xd3\x8a\xa8\xdb\xf1\x92\x5a\xb9\x23\x86\xed\xd4\x00\x99\x23" }, + { "blake2s-256",32,"\x50\x8c\x5e\x8c\x32\x7c\x14\xe2\xe1\xa7\x2b\xa3\x4e\xeb\x45\x2f" + "\x37\x45\x8b\x20\x9e\xd6\x3a\x29\x4d\x99\x9b\x4c\x86\x67\x59\x82" }, }},{ "abcdefghijklmnopqrstuvwxyz", 26, { { "crc32", 4, "\x4c\x27\x50\xbd" }, @@ -315,6 +333,12 @@ "\x8d\x38\x63\x1e\xad\x42\x38\xf5\x44\x2e\xe1\x3b\x80\x54\xe4\x1b" "\x08\xbf\x2a\x92\x51\xc3\x0b\x6a\x0b\x8a\xae\x86\x17\x7a\xb4\xa6" "\xf6\x8f\x67\x3e\x72\x07\x86\x5d\x5d\x98\x19\xa3\xdb\xa4\xeb\x3b" }, + { "blake2b-512",64,"\xc6\x8e\xde\x14\x3e\x41\x6e\xb7\xb4\xaa\xae\x0d\x8e\x48\xe5\x5d" + "\xd5\x29\xea\xfe\xd1\x0b\x1d\xf1\xa6\x14\x16\x95\x3a\x2b\x0a\x56" + "\x66\xc7\x61\xe7\xd4\x12\xe6\x70\x9e\x31\xff\xe2\x21\xb7\xa7\xa7" + "\x39\x08\xcb\x95\xa4\xd1\x20\xb8\xb0\x90\xa8\x7d\x1f\xbe\xdb\x4c" }, + { "blake2s-256",32,"\xbd\xf8\x8e\xb1\xf8\x6a\x0c\xdf\x0e\x84\x0b\xa8\x8f\xa1\x18\x50" + "\x83\x69\xdf\x18\x6c\x73\x55\xb4\xb1\x6c\xf7\x9f\xa2\x71\x0a\x12" }, }},{ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", 62, { { "crc32", 4, "\x1f\xc2\xe6\xd2" }, @@ -330,6 +354,12 @@ "\x1d\xd7\xc2\x8c\xde\xc0\x66\xcc\x6a\xf4\x2e\x40\xf8\x2f\x3a\x1e" "\x08\xeb\xa2\x66\x29\x12\x9d\x8f\xb7\xcb\x57\x21\x1b\x92\x81\xa6" "\x55\x17\xcc\x87\x9d\x7b\x96\x21\x42\xc6\x5f\x5a\x7a\xf0\x14\x67" }, + { "blake2b-512",64,"\x99\x96\x48\x02\xe5\xc2\x5e\x70\x37\x22\x90\x5d\x3f\xb8\x00\x46" + "\xb6\xbc\xa6\x98\xca\x9e\x2c\xc7\xe4\x9b\x4f\xe1\xfa\x08\x7c\x2e" + "\xdf\x03\x12\xdf\xbb\x27\x5c\xf2\x50\xa1\xe5\x42\xfd\x5d\xc2\xed" + "\xd3\x13\xf9\xc4\x91\x12\x7c\x2e\x8c\x0c\x9b\x24\x16\x8e\x2d\x50" }, + { "blake2s-256",32,"\xc7\x54\x39\xea\x17\xe1\xde\x6f\xa4\x51\x0c\x33\x5d\xc3\xd3\xf3" + "\x43\xe6\xf9\xe1\xce\x27\x73\xe2\x5b\x41\x74\xf1\xdf\x8b\x11\x9b" }, }},{ "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", 56, { { "crc32", 4, "\x17\x1a\x3f\x5f" }, @@ -345,6 +375,12 @@ "\x02\x7f\x61\x36\x6a\x14\x07\x26\x2d\xc2\xa6\xa3\x45\xd9\xe2\x40" "\xc0\x17\xc1\x83\x3d\xb1\xe6\xdb\x6a\x46\xbd\x44\x4b\x0c\x69\x52" "\x0c\x85\x6e\x7c\x6e\x9c\x36\x6d\x15\x0a\x7d\xa3\xae\xb1\x60\xd1" }, + { "blake2b-512",64,"\x72\x85\xff\x3e\x8b\xd7\x68\xd6\x9b\xe6\x2b\x3b\xf1\x87\x65\xa3" + "\x25\x91\x7f\xa9\x74\x4a\xc2\xf5\x82\xa2\x08\x50\xbc\x2b\x11\x41" + "\xed\x1b\x3e\x45\x28\x59\x5a\xcc\x90\x77\x2b\xdf\x2d\x37\xdc\x8a" + "\x47\x13\x0b\x44\xf3\x3a\x02\xe8\x73\x0e\x5a\xd8\xe1\x66\xe8\x88" }, + { "blake2s-256",32,"\x6f\x4d\xf5\x11\x6a\x6f\x33\x2e\xda\xb1\xd9\xe1\x0e\xe8\x7d\xf6" + "\x55\x7b\xea\xb6\x25\x9d\x76\x63\xf3\xbc\xd5\x72\x2c\x13\xf1\x89" }, }},{ "message digest", 14, { { "crc32", 4, "\x20\x15\x9d\x7f" }, @@ -360,6 +396,12 @@ "\x83\x8d\x00\x03\x22\x30\xf5\x3c\xe1\xf5\x70\x0c\x0f\xfb\x4d\x3b" "\x84\x21\x55\x76\x59\xef\x55\xc1\x06\xb4\xb5\x2a\xc5\xa4\xaa\xa6" "\x92\xed\x92\x00\x52\x83\x8f\x33\x62\xe8\x6d\xbd\x37\xa8\x90\x3e" }, + { "blake2b-512",64,"\x3c\x26\xce\x48\x7b\x1c\x0f\x06\x23\x63\xaf\xa3\xc6\x75\xeb\xdb" + "\xf5\xf4\xef\x9b\xdc\x02\x2c\xfb\xef\x91\xe3\x11\x1c\xdc\x28\x38" + "\x40\xd8\x33\x1f\xc3\x0a\x8a\x09\x06\xcf\xf4\xbc\xdb\xcd\x23\x0c" + "\x61\xaa\xec\x60\xfd\xfa\xd4\x57\xed\x96\xb7\x09\xa3\x82\x35\x9a" }, + { "blake2s-256",32,"\xfa\x10\xab\x77\x5a\xcf\x89\xb7\xd3\xc8\xa6\xe8\x23\xd5\x86\xf6" + "\xb6\x7b\xdb\xac\x4c\xe2\x07\xfe\x14\x5b\x7d\x3a\xc2\x5c\xd2\x8c" }, }}}; /* diff -Nru cryptsetup-2.3.4/tests/cryptsetup-valg-supps cryptsetup-2.3.6/tests/cryptsetup-valg-supps --- cryptsetup-2.3.4/tests/cryptsetup-valg-supps 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/cryptsetup-valg-supps 2021-05-28 04:57:08.000000000 -0500 @@ -12,25 +12,3 @@ fun:init_crypto ... } -# following leaks/errors are addressed to libpopt... -{ - popt_read_error - Memcheck:Addr4 - obj:/lib*/libpopt.so* - fun:poptGetNextOpt - fun:main -} -{ - popt_leak_poptGetNextOpt_00 - Memcheck:Leak - fun:realloc - fun:poptGetNextOpt - fun:main -} -{ - popt_leak_poptGetNextOpt_01 - Memcheck:Leak - fun:malloc - fun:poptGetNextOpt - fun:main -} diff -Nru cryptsetup-2.3.4/tests/device-test cryptsetup-2.3.6/tests/device-test --- cryptsetup-2.3.4/tests/device-test 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/device-test 2021-05-28 04:57:08.000000000 -0500 @@ -17,7 +17,7 @@ umount -f $MNT_DIR 2>/dev/null rmdir $MNT_DIR 2>/dev/null fi - sleep 2 + rmmod scsi_debug 2>/dev/null } fail() @@ -36,6 +36,16 @@ exit 77 } +add_device() { + modprobe scsi_debug $@ delay=0 + [ $? -ne 0 ] && skip "This kernel seems to not support proper scsi_debug module." + + sleep 1 + SCSI_DEV=$(grep -l -e scsi_debug /sys/block/*/device/model | cut -f4 -d /) + + [ -b "/dev/$SCSI_DEV" ] || fail "Cannot find $SCSI_DEV." +} + function dm_crypt_features() { modprobe dm-crypt || fail "dm-crypt failed to load" @@ -297,4 +307,22 @@ echo fi +echo "[4] Disappeared device test:" +KEY="00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001" +for F in LUKS1 LUKS2 BITLK TCRYPT; do + echo -n "$F" + add_device dev_size_mb=1 sector_size=512 num_tgts=1 lbpu=1 + # Fake CRYPT UUID to force code to parse type-specific path + dmsetup create $DEV_NAME --uuid CRYPT-$F-$DEV_NAME --table "0 1024 crypt aes-xts-plain64 $KEY 16 /dev/$SCSI_DEV 16" + $CRYPTSETUP status $DEV_NAME >/dev/null 2>&1 || fail + echo 1 > /sys/block/$SCSI_DEV/device/delete + udevadm settle >/dev/null 2>&1 + $CRYPTSETUP status $DEV_NAME >/dev/null 2>&1 || fail + dmsetup remove $DEV_NAME --retry || fail + rmmod scsi_debug + echo -n "[OK] " +done +echo + cleanup +exit 0 diff -Nru cryptsetup-2.3.4/tests/differ.c cryptsetup-2.3.6/tests/differ.c --- cryptsetup-2.3.4/tests/differ.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/differ.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * cryptsetup file differ check (rewritten Clemens' fileDiffer in Python) * - * Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff -Nru cryptsetup-2.3.4/tests/integrity-compat-test cryptsetup-2.3.6/tests/integrity-compat-test --- cryptsetup-2.3.4/tests/integrity-compat-test 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/integrity-compat-test 2021-05-28 04:57:08.000000000 -0500 @@ -14,6 +14,7 @@ DEV=test123.img DEV2=test124.img KEY_FILE=key.img +KEY_FILE2=key2.img dmremove() { # device udevadm settle >/dev/null 2>&1 @@ -25,7 +26,7 @@ [ -b /dev/mapper/$DEV_NAME_BIG ] && dmremove $DEV_NAME_BIG [ -n "$DEV_LOOP" ] && losetup -d "$DEV_LOOP" DEV_LOOP="" - rm -f $DEV $DEV2 $KEY_FILE >/dev/null 2>&1 + rm -f $DEV $DEV2 $KEY_FILE $KEY_FILE2 >/dev/null 2>&1 } fail() @@ -60,11 +61,15 @@ [ $VER_MIN -gt 2 ] && { DM_INTEGRITY_BITMAP=1 } + [ $VER_MIN -gt 6 ] && { + DM_INTEGRITY_HMAC_FIX=1 + } } add_device() { cleanup - dd if=/dev/urandom of=$KEY_FILE bs=1 count=512 >/dev/null 2>&1 + dd if=/dev/urandom of=$KEY_FILE bs=4096 count=1 >/dev/null 2>&1 + dd if=/dev/urandom of=$KEY_FILE2 bs=1 count=32 >/dev/null 2>&1 dd if=/dev/zero of=$DEV bs=1M count=32 >/dev/null 2>&1 dd if=/dev/zero of=$DEV2 bs=1M count=32 >/dev/null 2>&1 sync @@ -156,10 +161,12 @@ fi echo -n "[INTEGRITY:$2:$4:$5]" + [ -n "$8" ] && echo -n "[KEYFILE:$8]" echo -n "[FORMAT]" $INTSETUP format --integrity-legacy-padding -q --integrity $1 $TAG_PARAMS --sector-size $5 $KEY_PARAMS $DEV >/dev/null 2>&1 if [ $? -ne 0 ] ; then - if ! grep -q $1 /proc/crypto ; then + ALG=$(echo $1 | sed -e 's/hmac-//') + if ! grep -q $ALG /proc/crypto ; then echo "[N/A]" return fi @@ -170,6 +177,11 @@ dump_check "sector_size" $5 echo -n "[ACTIVATE]" $INTSETUP open $DEV $DEV_NAME --integrity $1 $KEY_PARAMS || fail "Cannot activate device." + if [ -n "$8" ]; then + KEY_HEX=$(xxd -c 4096 -l $8 -p $7) + [ -z "$KEY_HEX" ] && fail "Cannot decode key." + dmsetup table --showkeys $DEV_NAME | grep -q $KEY_HEX || fail "Key mismatch." + fi status_check "tag size" $4 status_check "integrity" $2 status_check "sector size" "$5 bytes" @@ -233,7 +245,7 @@ int_journal() # 1 alg, 2 tagsize, 3 sector_size, 4 watermark, 5 commit_time, 6 journal_integrity, 7 key-file, 8 key-size, 9 journal_integrity_out { - echo -n "[INTEGRITY JOURNAL:$6:${4}%:${5}ms]" + echo -n "[INTEGRITY JOURNAL:$6:${4}%:${5}ms:$8]" echo -n "[FORMAT]" ARGS="--integrity $1 --journal-watermark $4 --journal-commit-time $5 --journal-integrity $6 --journal-integrity-key-file $7 --journal-integrity-key-size $8" $INTSETUP format -q --tag-size $2 --sector-size $3 $ARGS $DEV || fail "Cannot format device." @@ -243,7 +255,7 @@ $INTSETUP open $DEV $DEV_NAME $ARGS || fail "Cannot activate device." echo -n "[KEYED HASH]" - KEY_HEX=$(xxd -c 256 -l $8 -p $7) + KEY_HEX=$(xxd -c 4096 -l $8 -p $7) [ -z "$KEY_HEX" ] && fail "Cannot decode key." dmsetup table --showkeys $DEV_NAME | grep -q $KEY_HEX || fail "Key mismatch." @@ -294,7 +306,7 @@ status_check "mode" "read/write" kernel_param_check 7 "J" - $INTSETUP close $DEV_NAME fail "Cannot deactivate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." echo -n "[DIRECT WRITES]" $INTSETUP open $DEV $DEV_NAME --integrity $1 $KEY_PARAMS --integrity-no-journal || fail "Cannot activate device without journal." @@ -302,14 +314,14 @@ status_check "journal" "not active" kernel_param_check 7 "D" - $INTSETUP close $DEV_NAME fail "Cannot deactivate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." echo -n "[RECOVERY MODE]" $INTSETUP open $DEV $DEV_NAME --integrity $1 $KEY_PARAMS --integrity-recovery-mode || fail "Cannot activate device in recovery mode." status_check "mode" "read/write recovery" kernel_param_check 7 "R" - $INTSETUP close $DEV_NAME fail "Cannot deactivate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." echo "[OK]" } @@ -334,6 +346,7 @@ intformat hmac-sha256 hmac\(sha256\) 0 32 512 8e5fe4119558e117bfc40e3b0f13ade3abe497b52604d4c7cca0cfd6c7f4cf11 $KEY_FILE 32 intformat sha256 sha256 0 32 4096 33f7dfa5163ca9f740383fb8b0919574e38a7b20a94a4170fde4238196b7c4b4 intformat hmac-sha256 hmac\(sha256\) 0 32 4096 33f7dfa5163ca9f740383fb8b0919574e38a7b20a94a4170fde4238196b7c4b4 $KEY_FILE 32 +intformat hmac-sha256 hmac\(sha256\) 0 32 4096 33f7dfa5163ca9f740383fb8b0919574e38a7b20a94a4170fde4238196b7c4b4 $KEY_FILE 4096 echo "Error detection tests:" int_error_detection J crc32c 0 4 512 @@ -355,6 +368,7 @@ int_journal crc32 4 512 66 1000 hmac-sha256 $KEY_FILE 32 hmac\(sha256\) int_journal sha256 32 4096 34 5000 hmac-sha1 $KEY_FILE 16 hmac\(sha1\) int_journal sha1 20 512 75 9999 hmac-sha256 $KEY_FILE 32 hmac\(sha256\) +int_journal sha1 20 512 75 9999 hmac-sha256 $KEY_FILE 4096 hmac\(sha256\) echo "Journal encryption tests:" int_journal_crypt cbc-aes cbc\(aes\) $KEY_FILE 32 @@ -377,7 +391,7 @@ $INTSETUP open $DEV $DEV_NAME --integrity-recalculate || fail "Cannot activate device." dd if=/dev/mapper/$DEV_NAME of=/dev/null bs=1M 2>/dev/null || fail "Cannot recalculate tags in-kernel" int_check_sum_only 08f63eb27fb9ce2ce903b0a56429c68ce5e209253ba42154841ef045a53839d7 - $INTSETUP close $DEV_NAME fail "Cannot deactivate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." echo "[OK]" else echo "[N/A]" @@ -390,7 +404,7 @@ $INTSETUP open $DEV --data-device $DEV2 $DEV_NAME || fail "Cannot activate device." int_check_sum_only 83ee47245398adee79bd9c0a8bc57b821e92aba10f5f9ade8a5d1fae4d8c4302 $INTSETUP status $DEV_NAME | grep -q 'metadata device:' || fail - $INTSETUP close $DEV_NAME fail "Cannot deactivate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." echo "[OK]" else echo "[N/A]" @@ -403,7 +417,7 @@ $INTSETUP open $DEV --integrity-bitmap-mode --bitmap-sectors-per-bit 65536 --bitmap-flush-time 5000 $DEV_NAME || fail "Cannot activate device." $INTSETUP status $DEV_NAME | grep -q 'bitmap 512-byte sectors per bit: 65536' || fail $INTSETUP status $DEV_NAME | grep -q 'bitmap flush interval: 5000 ms' || fail - $INTSETUP close $DEV_NAME fail "Cannot deactivate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." echo "[OK]" echo "Bitmap error detection tests:" int_error_detection B crc32c 0 4 512 @@ -434,6 +448,37 @@ echo "[OK]" else echo "[N/A]" +fi + +echo -n "Fixed HMAC and legacy flags:" +if [ -n "$DM_INTEGRITY_HMAC_FIX" ] ; then + add_device + # only data HMAC + ARGS="--integrity hmac-sha256 --integrity-key-file $KEY_FILE --integrity-key-size 32" + $INTSETUP format -q $DEV --integrity-legacy-hmac --no-wipe --tag-size 32 $ARGS || fail "Cannot format device." + $INTSETUP open $DEV $DEV_NAME --integrity-recalculate $ARGS >/dev/null 2>&1 && fail "Cannot activate device." + $INTSETUP open $DEV $DEV_NAME --integrity-legacy-recalculate $ARGS || fail "Cannot activate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." + # New version - must fail (no journal HMAC) + $INTSETUP format -q $DEV --no-wipe --tag-size 32 $ARGS || fail "Cannot format device." + $INTSETUP open $DEV $DEV_NAME --integrity-recalculate $ARGS >/dev/null 2>&1 && fail "Cannot activate device." + $INTSETUP open $DEV $DEV_NAME --integrity-legacy-recalculate $ARGS || fail "Cannot activate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." + + # data and journal HMAC + ARGS="$ARGS --journal-integrity hmac-sha256 --journal-integrity-key-file $KEY_FILE2 --journal-integrity-key-size 32" + $INTSETUP format -q $DEV --integrity-legacy-hmac --no-wipe --tag-size 32 $ARGS || fail "Cannot format device." + $INTSETUP open $DEV $DEV_NAME --integrity-recalculate $ARGS >/dev/null 2>&1 && fail "Cannot activate device." + $INTSETUP open $DEV $DEV_NAME --integrity-legacy-recalculate $ARGS || fail "Cannot activate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." + # New fixed version + $INTSETUP format -q $DEV --no-wipe --tag-size 32 $ARGS || fail "Cannot format device." + $INTSETUP dump $DEV | grep "flags" | grep -q "fix_hmac" || fail "Flag for HMAC not set." + $INTSETUP open $DEV $DEV_NAME --integrity-recalculate $ARGS || fail "Cannot activate device." + $INTSETUP close $DEV_NAME || fail "Cannot deactivate device." + echo "[OK]" +else + echo "[N/A]" fi cleanup diff -Nru cryptsetup-2.3.4/tests/loopaes-test cryptsetup-2.3.6/tests/loopaes-test --- cryptsetup-2.3.4/tests/loopaes-test 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/loopaes-test 2021-05-28 04:57:08.000000000 -0500 @@ -91,10 +91,7 @@ function check_sum() # $key $keysize $offset [stdin|keyfile] { - # Fill device with zeroes and reopen it - dd if=/dev/zero of=/dev/mapper/$DEV_NAME bs=1k $LOOP_DD_PARAM >/dev/null 2>&1 - sync - dmremove $DEV_NAME + $CRYPTSETUP close $DEV_NAME || fail EXPSUM=$(get_expsum $3) if [ "$4" == "stdin" ] ; then @@ -163,8 +160,9 @@ 2>/dev/null [ $? -ne 0 ] && echo "[SKIPPED]" && continue check_exists + # Fill device with zeroes and reopen it + dd if=/dev/zero of=/dev/mapper/$DEV_NAME $LOOP_DD_PARAM >/dev/null 2>&1 check_sum $key $key_size $offset keyfile - $CRYPTSETUP loopaesClose $DEV_NAME || fail check_sum $key $key_size $offset stdin $CRYPTSETUP loopaesClose $DEV_NAME || fail check_sum_losetup $key AES$key_size $offset diff -Nru cryptsetup-2.3.4/tests/luks2-reencryption-test cryptsetup-2.3.6/tests/luks2-reencryption-test --- cryptsetup-2.3.4/tests/luks2-reencryption-test 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/luks2-reencryption-test 2021-05-28 04:57:08.000000000 -0500 @@ -275,7 +275,7 @@ DEV=/dev/mapper/$OVRDEV } -function get_error_offsets() # $1 devsize, $2 minimal offset, $3 sector_size [512 if ommited], $4 max offset +function get_error_offsets() # $1 devsize, $2 minimal offset, $3 sector_size [512 if omitted], $4 max offset { local _devsize=$(($1*1024*2)) local _sector_size=${3:-512} @@ -296,7 +296,7 @@ test -z "$4" || _hdr="--header $4" error_writes $OVRDEV $OLD_DEV $ERROFFSET $ERRLENGTH - echo $PWD1 | $CRYPTSETUP reencrypt $DEV $_hdr --hotzone-size 1M --resilience $2 --sector-size $1 -q $FAST_PBKDF_ARGON 2>/dev/null && fail + echo $PWD1 | $CRYPTSETUP reencrypt $DEV $_hdr --hotzone-size 1M --resilience $2 --sector-size $1 -q $FAST_PBKDF_ARGON >/dev/null 2>&1 && fail fix_writes $OVRDEV $OLD_DEV echo $PWD1 | $CRYPTSETUP -q repair $DEV $_hdr || fail @@ -317,7 +317,7 @@ echo $PWD1 | $CRYPTSETUP open $DEV $_hdr $DEV_NAME || fail error_writes $OVRDEV $OLD_DEV $ERROFFSET $ERRLENGTH - echo $PWD1 | $CRYPTSETUP reencrypt --active-name $DEV_NAME $_hdr --hotzone-size 1M --resilience $2 --sector-size $1 -q $FAST_PBKDF_ARGON 2>/dev/null && fail + echo $PWD1 | $CRYPTSETUP reencrypt --active-name $DEV_NAME $_hdr --hotzone-size 1M --resilience $2 --sector-size $1 -q $FAST_PBKDF_ARGON >/dev/null 2>&1 && fail $CRYPTSETUP status $DEV_NAME $_hdr | grep -q "reencryption: in-progress" || fail $CRYPTSETUP close $DEV_NAME || fail fix_writes $OVRDEV $OLD_DEV @@ -653,6 +653,20 @@ fi } +function setup_luks2_env() { + echo $PWD1 | $CRYPTSETUP luksFormat --type luks2 -c aes-xts-plain64 $FAST_PBKDF_ARGON $DEV || fail + echo $PWD1 | $CRYPTSETUP open $DEV $DEV_NAME || fail + HAVE_KEYRING=$($CRYPTSETUP status $DEV_NAME | grep "key location: keyring") + if [ -n "$HAVE_KEYRING" ]; then + HAVE_KEYRING=1 + else + HAVE_KEYRING=0 + fi + DEF_XTS_KEY=$($CRYPTSETUP status $DEV_NAME | grep "keysize:" | sed 's/\( keysize: \)\([0-9]\+\)\(.*\)/\2/') + [ -n "$DEF_XTS_KEY" ] || fail "Failed to parse xts mode key size." + $CRYPTSETUP close $DEV_NAME || fail +} + function valgrind_setup() { which valgrind >/dev/null 2>&1 || fail "Cannot find valgrind." @@ -704,9 +718,11 @@ # 60 MiBs of zeroes HASH8=cf5ac69ca412f9b3b1a8b8de27d368c5c05ed4b1b6aa40e6c38d9cbf23711342 +prepare dev_size_mb=32 +setup_luks2_env + echo "[1] Reencryption" echo -n "[512 sector]" -prepare dev_size_mb=32 echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -s 128 -c aes-cbc-essiv:sha256 --offset 8192 $FAST_PBKDF_ARGON $DEV || fail wipe $PWD1 check_hash $PWD1 $HASH1 @@ -722,6 +738,8 @@ echo $PWD1 | $CRYPTSETUP reencrypt $DEV -q -c aes-xts-plain64 --init-only $FAST_PBKDF_ARGON || fail echo $PWD1 | $CRYPTSETUP open $DEV $DEV_NAME || fail echo $PWD1 | $CRYPTSETUP reencrypt --active-name /dev/mapper/$DEV_NAME --resilience none -q || fail +XTS_KEY=$($CRYPTSETUP status $DEV_NAME | grep "keysize:" | sed 's/\( keysize: \)\([0-9]\+\)\(.*\)/\2/') +[ "$XTS_KEY" -eq "$DEF_XTS_KEY" ] || fail "xts mode has wrong key size after reencryption ($XTS_KEY != expected $DEF_XTS_KEY)" echo $PWD1 | $CRYPTSETUP close $DEV_NAME || fail echo -n "[OK][4096 sector]" prepare sector_size=4096 dev_size_mb=32 @@ -924,6 +942,17 @@ dmsetup remove --retry $DEV_NAME2 $CRYPTSETUP status $DEV_NAME >/dev/null 2>&1 && fail +# check tool can block some funny user ideas +preparebig 64 +echo $PWD1 | $CRYPTSETUP luksFormat --type luks2 -c serpent-xts-plain -q $FAST_PBKDF_ARGON $DEV || fail +echo $PWD1 | $CRYPTSETUP reencrypt --decrypt $DEV -q 2>/dev/null && fail +echo $PWD1 | $CRYPTSETUP reencrypt --decrypt $DEV --header $DEV -q 2>/dev/null && fail +open_crypt $PWD1 +echo $PWD1 | $CRYPTSETUP reencrypt --decrypt --active-name $DEV_NAME -q 2>/dev/null && fail +echo $PWD1 | $CRYPTSETUP reencrypt --decrypt --active-name $DEV_NAME --header $DEV -q 2>/dev/null && fail +$CRYPTSETUP status $DEV_NAME | grep -q "reencryption: in-progress" && fail +$CRYPTSETUP close $DEV_NAME + if ! dm_delay_features; then echo "dm-delay target is missing, skipping recovery tests." remove_mapping @@ -1384,5 +1413,136 @@ echo $PWD1 | $CRYPTSETUP luksAddKey -q $FAST_PBKDF_ARGON --master-key-file $VKEY1 -s 128 $DEV || fail check_hash $PWD1 $HASH1 +echo "[24] Reencryption with initial cipher_null" +# aka custom encryption +prepare dev_size_mb=32 +echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -s 128 -c cipher_null-ecb --offset 8192 $FAST_PBKDF_ARGON $DEV || fail +wipe $PWD1 +check_hash $PWD1 $HASH1 +echo $PWD1 | $CRYPTSETUP reencrypt $DEV -c aes-xts-plain64 -q $FAST_PBKDF_ARGON || fail +check_hash $PWD1 $HASH1 + +# online +echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -s 128 -c cipher_null-ecb --offset 8192 $FAST_PBKDF_ARGON $DEV || fail +wipe $PWD1 +echo $PWD1 | $CRYPTSETUP open $DEV $DEV_NAME +echo $PWD1 | $CRYPTSETUP reencrypt $DEV -c aes-xts-plain64 -q $FAST_PBKDF_ARGON || fail +check_hash_dev /dev/mapper/$DEV_NAME $HASH1 +if [ $HAVE_KEYRING -gt 0 ]; then + $CRYPTSETUP status $DEV_NAME | grep -q "key location: keyring" || fail +fi +$CRYPTSETUP close $DEV_NAME + +# simulate LUKS2 device with cipher_null in both keyslot and segment (it can be created only by up conversion from LUKS1) +echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks1 -s 128 -c cipher_null-ecb --offset 8192 $FAST_PBKDF2 $DEV || fail +$CRYPTSETUP convert -q --type luks2 $DEV || fail +wipe $PWD1 +echo $PWD1 | $CRYPTSETUP reencrypt $DEV -q $FAST_PBKDF_ARGON >/dev/null || fail +check_hash $PWD1 $HASH1 +# both keyslot and segment cipher must not be null after reencryption with default params +$CRYPTSETUP luksDump $DEV | grep -q "cipher_null" && fail + +# multistep reencryption with initial cipher_null +preparebig 64 +echo $PWD1 | $CRYPTSETUP luksFormat --type luks2 $DEV -c null --offset 16384 -q $FAST_PBKDF_ARGON || fail +echo $PWD1 | $CRYPTSETUP open $DEV $DEV_NAME +wipe_dev /dev/mapper/$DEV_NAME +echo $PWD1 | $CRYPTSETUP reencrypt $DEV --hotzone-size 1M --resilience none -q $FAST_PBKDF_ARGON >/dev/null || fail +$CRYPTSETUP close $DEV_NAME +check_hash $PWD1 $HASH5 + +echo $PWD1 | $CRYPTSETUP luksFormat --type luks2 $DEV -c null --offset 16384 -q $FAST_PBKDF_ARGON || fail +wipe $PWD1 +echo $PWD1 | $CRYPTSETUP reencrypt $DEV --hotzone-size 1M --resilience none -q $FAST_PBKDF_ARGON >/dev/null || fail +check_hash $PWD1 $HASH5 + +echo "[25] Reencryption recovery with cipher_null" +# (check opt-io size optimization in reencryption code does not affect recovery) +# device with opt-io size 32k +prepare_linear_dev 32 opt_blks=64 $OPT_XFERLEN_EXP +OFFSET=8192 + +echo "sector size 512->512" + +get_error_offsets 32 $OFFSET +echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -c null --sector-size 512 --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail +wipe $PWD1 +check_hash $PWD1 $HASH1 + +echo "ERR writes to sectors [$ERROFFSET,$(($ERROFFSET+$ERRLENGTH-1))]" +reencrypt_recover 512 checksum $HASH1 +echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -c null --sector-size 512 --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail +wipe $PWD1 +reencrypt_recover 512 journal $HASH1 + +if [ -n "$DM_SECTOR_SIZE" ]; then + echo "sector size 512->4096" + + get_error_offsets 32 $OFFSET 4096 + echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -c null --sector-size 512 --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail + wipe $PWD1 + check_hash $PWD1 $HASH1 + + echo "ERR writes to sectors [$ERROFFSET,$(($ERROFFSET+$ERRLENGTH-1))]" + reencrypt_recover 4096 checksum $HASH1 + echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -c null --sector-size 512 --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail + wipe $PWD1 + check_hash $PWD1 $HASH1 + reencrypt_recover 4096 journal $HASH1 + + echo "sector size 4096->4096" + + get_error_offsets 32 $OFFSET 4096 + echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -c null --sector-size 4096 --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail + wipe $PWD1 + check_hash $PWD1 $HASH1 + + echo "ERR writes to sectors [$ERROFFSET,$(($ERROFFSET+$ERRLENGTH-1))]" + reencrypt_recover 4096 checksum $HASH1 + reencrypt_recover 4096 journal $HASH1 +fi + +echo "[26] Reencryption recovery with cipher_null (online i/o error)" + +echo "sector size 512->512" + +get_error_offsets 32 $OFFSET +echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 --sector-size 512 -c null --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail +wipe $PWD1 +check_hash $PWD1 $HASH1 + +echo "ERR writes to sectors [$ERROFFSET,$(($ERROFFSET+$ERRLENGTH-1))]" +reencrypt_recover_online 512 checksum $HASH1 +echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 --sector-size 512 -c null --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail +wipe $PWD1 +reencrypt_recover_online 512 journal $HASH1 + +if [ -n "$DM_SECTOR_SIZE" ]; then + echo "sector size 512->4096" + + get_error_offsets 32 $OFFSET 4096 + echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -c null --sector-size 512 --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail + wipe $PWD1 + check_hash $PWD1 $HASH1 + + echo "ERR writes to sectors [$ERROFFSET,$(($ERROFFSET+$ERRLENGTH-1))]" + reencrypt_recover_online 4096 checksum $HASH1 + echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -c null --sector-size 512 --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail + wipe $PWD1 + check_hash $PWD1 $HASH1 + reencrypt_recover_online 4096 journal $HASH1 + + echo "sector size 4096->4096" + + get_error_offsets 32 $OFFSET 4096 + echo $PWD1 | $CRYPTSETUP -q luksFormat --type luks2 -c null --sector-size 4096 --offset $OFFSET $FAST_PBKDF_ARGON $DEV || fail + wipe $PWD1 + check_hash $PWD1 $HASH1 + + echo "ERR writes to sectors [$ERROFFSET,$(($ERROFFSET+$ERRLENGTH-1))]" + reencrypt_recover_online 4096 checksum $HASH1 + reencrypt_recover_online 4096 journal $HASH1 +fi + remove_mapping exit 0 diff -Nru cryptsetup-2.3.4/tests/Makefile.am cryptsetup-2.3.6/tests/Makefile.am --- cryptsetup-2.3.4/tests/Makefile.am 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/Makefile.am 2021-05-28 04:57:08.000000000 -0500 @@ -76,6 +76,8 @@ clean-local: -rm -rf tcrypt-images luks1-images luks2-images bitlk-images conversion_imgs luks2_valid_hdr.img blkid-luks2-pv-img blkid-luks2-pv-img.bcp +LDADD = $(LTLIBINTL) + differ_SOURCES = differ.c differ_CFLAGS = $(AM_CFLAGS) -Wall -O2 @@ -112,6 +114,7 @@ @xz -k -d compatimage.img.xz valgrind-check: api-test api-test-2 differ + @VALG=1 ./compat-test @VALG=1 ./compat-test2 @VALG=1 ./luks2-validation-test @VALG=1 ./verity-compat-test @@ -119,6 +122,7 @@ @INFOSTRING="api-test-000" ./valg-api.sh ./api-test @INFOSTRING="api-test-002" ./valg-api.sh ./api-test-2 @VALG=1 ./luks2-reencryption-test - @VALG=1 ./compat-test + @VALG=1 ./bitlk-compat-test + @grep -l "ERROR SUMMARY: [^0] errors" valglog* || echo "No leaks detected." .PHONY: valgrind-check diff -Nru cryptsetup-2.3.4/tests/reencryption-compat-test cryptsetup-2.3.6/tests/reencryption-compat-test --- cryptsetup-2.3.4/tests/reencryption-compat-test 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/reencryption-compat-test 2021-05-28 04:57:08.000000000 -0500 @@ -352,7 +352,7 @@ check_hash $PWD1 $HASH1 $CRYPTSETUP --type luks1 luksDump $LOOPDEV1 > /dev/null || fail -echo "[9] Test log I/Os on various underlaying block devices" +echo "[9] Test log I/Os on various underlying block devices" prepare 8192 echo $PWD2 | $CRYPTSETUP -q luksFormat --type luks1 $FAST_PBKDF $LOOPDEV1 || fail add_scsi_device sector_size=512 dev_size_mb=32 diff -Nru cryptsetup-2.3.4/tests/reencryption-compat-test2 cryptsetup-2.3.6/tests/reencryption-compat-test2 --- cryptsetup-2.3.4/tests/reencryption-compat-test2 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/reencryption-compat-test2 2021-05-28 04:57:08.000000000 -0500 @@ -370,7 +370,7 @@ check_slot 21 || fail "Only keyslot 21 expected to be enabled" $CRYPTSETUP luksDump $IMG | grep -q "luks2" > /dev/null || fail -echo "[9] Test log I/Os on various underlaying block devices" +echo "[9] Test log I/Os on various underlying block devices" echo $PWD2 | $CRYPTSETUP -q luksFormat --type luks2 $FAST_PBKDF_ARGON $IMG --offset 8192 || fail add_scsi_device sector_size=512 dev_size_mb=32 test_logging "[512 sector]" || fail diff -Nru cryptsetup-2.3.4/tests/test_utils.c cryptsetup-2.3.6/tests/test_utils.c --- cryptsetup-2.3.4/tests/test_utils.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/test_utils.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,8 +1,8 @@ /* * cryptsetup library API test utilities * - * Copyright (C) 2009-2020 Red Hat, Inc. All rights reserved. - * Copyright (C) 2009-2020 Milan Broz + * Copyright (C) 2009-2021 Red Hat, Inc. All rights reserved. + * Copyright (C) 2009-2021 Milan Broz * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -94,6 +94,14 @@ _cleanup(); exit(-1); } + +void check_ge_equal(int line, const char *func, int64_t x, int64_t y) +{ + printf("FAIL line %d [%s]: expected greater or equal values differs: %" + PRIi64 " < %" PRIi64 "\n", line, func, x, y); + _cleanup(); + exit(-1); +} void check_null(int line, const char *func, const void *x) { diff -Nru cryptsetup-2.3.4/tests/unit-utils-io.c cryptsetup-2.3.6/tests/unit-utils-io.c --- cryptsetup-2.3.4/tests/unit-utils-io.c 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/unit-utils-io.c 2021-05-28 04:57:08.000000000 -0500 @@ -1,7 +1,7 @@ /* * simple unit test for utils_io.c (blockwise low level functions) * - * Copyright (C) 2018-2020 Red Hat, Inc. All rights reserved. + * Copyright (C) 2018-2021 Red Hat, Inc. All rights reserved. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -99,7 +99,7 @@ if (ret < 0) goto out; - return (size_t) ret == test_length ? 0 : -EIO; + ret = (size_t) ret == test_length ? 0 : -EIO; out: if (fd >= 0) close(fd); diff -Nru cryptsetup-2.3.4/tests/valg-api.sh cryptsetup-2.3.6/tests/valg-api.sh --- cryptsetup-2.3.4/tests/valg-api.sh 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/valg-api.sh 2021-05-28 04:57:08.000000000 -0500 @@ -5,7 +5,7 @@ FREE="--free-fill=21" STACK="--max-stackframe=300000" EXTRAS="--read-var-info=yes --show-reachable=yes" -LOGFILE="--log-file=./valglog.$(date +%s)_${INFOSTRING}" +LOGFILE="--log-file=./valglog.$(date +%H:%M:%S:%N)_${INFOSTRING}" LEAKCHECK="--leak-check=full --track-origins=yes" exec valgrind $SUP $GETSUP $CHILD $MALLOC $FREE $STACK $EXTRAS $LOGFILE $LEAKCHECK "$@" diff -Nru cryptsetup-2.3.4/tests/valg.sh cryptsetup-2.3.6/tests/valg.sh --- cryptsetup-2.3.4/tests/valg.sh 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/valg.sh 2021-05-28 04:57:08.000000000 -0500 @@ -5,7 +5,7 @@ FREE="--free-fill=21" STACK="--max-stackframe=2000000" EXTRAS="--read-var-info=yes --show-reachable=yes" -LOGFILE="--log-file=./valglog.$(date +%s)_${INFOSTRING}" +LOGFILE="--log-file=./valglog.$(date +%H:%M:%S:%N)_${INFOSTRING}" LEAKCHECK="--leak-check=full --track-origins=yes" exec valgrind $SUP $GETSUP $CHILD $MALLOC $FREE $STACK $EXTRAS $LOGFILE $LEAKCHECK "$@" diff -Nru cryptsetup-2.3.4/tests/verity-compat-test cryptsetup-2.3.6/tests/verity-compat-test --- cryptsetup-2.3.4/tests/verity-compat-test 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/tests/verity-compat-test 2021-05-28 04:57:08.000000000 -0500 @@ -84,6 +84,30 @@ [ $OPT != $2 ] && fail "$1 differs ($2)" } +function check_root_hash_fail() +{ + echo -n "Root hash check " + ARR=(`$VERITYSETUP format $IMG $IMG_HASH --fec-device $FEC_DEV --fec-roots 2 -h sha256`) + ROOT_HASH=${ARR[28]} + ROOT_HASH_BAD=abcdef0000000000000000000000000000000000000000000000000000000000 + + $VERITYSETUP verify $IMG $IMG_HASH $ROOT_HASH || fail + $VERITYSETUP verify $IMG $IMG_HASH $ROOT_HASH_BAD >/dev/null 2>&1 && fail + $VERITYSETUP verify $IMG $IMG_HASH $ROOT_HASH_BAD --fec-device $FEC_DEV --fec-roots 2 >/dev/null 2>&1 && fail + + $VERITYSETUP open $IMG $DEV_NAME $IMG_HASH $ROOT_HASH || fail + check_exists + dmsetup status $DEV_NAME | grep "verity V" >/dev/null || fail + $VERITYSETUP close $DEV_NAME >/dev/null 2>&1 || fail + + $VERITYSETUP open $IMG $DEV_NAME $IMG_HASH $ROOT_HASH_BAD >/dev/null 2>&1 || fail + check_exists + dmsetup status $DEV_NAME | grep "verity C" >/dev/null || fail + $VERITYSETUP close $DEV_NAME >/dev/null 2>&1 || fail + + echo "[OK]" +} + function check_root_hash() # $1 size, $2 hash, $3 salt, $4 version, $5 hash, [$6 offset] { if [ -z "$LOOPDEV2" ] ; then @@ -228,14 +252,20 @@ HASH_REPAIRED=${ARR[0]} $VERITYSETUP close $DEV_NAME - rm $1 $2 $3 $IMG_TMP > /dev/null 2>&1 if [ "$HASH_ORIG" != "$HASH_REPAIRED" ]; then - echo -n "[correction failed]" - return 1 - fi - - echo "[file was repaired][OK]" + echo -n "[kernel correction failed]" + $VERITYSETUP verify $1 $2 $ROOT_HASH --fec-device=$3 $PARAMS >/dev/null 2>&1 && fail "Userspace verify should fail" + echo -n "[userspace verify failed]" + RET=1 + else + echo -n "[repaired in kernel]" + $VERITYSETUP verify $1 $2 $ROOT_HASH --fec-device=$3 $PARAMS >/dev/null 2>&1 || fail "Userspace verify failed" + echo "[userspace verify][OK]" + RET=0 + fi + rm $1 $2 $3 $IMG_TMP > /dev/null 2>&1 + return $RET } function check_option() # $1 size, $2 hash, $3 salt, $4 version, $5 hash, $6 CLI option, $7 status option @@ -363,6 +393,8 @@ echo "Verity tests [separate devices]" prepare 8192 1024 +check_root_hash_fail + check_root_hash 512 9de18652fe74edfb9b805aaed72ae2aa48f94333f1ba5c452ac33b1c39325174 $SALT 1 sha256 check_root_hash 1024 54d92778750495d1f80832b486ebd007617d746271511bbf0e295e143da2b3df $SALT 1 sha256 check_root_hash 4096 e522df0f97da4febb882ac40f30b37dc0b444bf6df418929463fa25280f09d5c $SALT 1 sha256 @@ -424,6 +456,11 @@ [ "$RET" -eq "3" ] && break [ "$RET" -eq "0" ] || fail "FEC repair failed" + (check_fec $IMG $IMG $IMG 512 500 50000 2457600 4915200 $(($RANDOM % 23 + 2)) $(($INDEX * 4)) 'n' $SALT) || fail "FEC repair failed" + (check_fec $IMG $IMG $IMG 512 500 50000 2457600 4915200 $(($RANDOM % 23 + 2)) $(($INDEX * 4)) 'y' $SALT) || fail "FEC repair failed" + (check_fec $IMG $IMG $IMG 4096 64 6250 4194304 8388608 $(($RANDOM % 23 + 2)) $(($INDEX * 4)) 'n' $SALT) || fail "FEC repair failed" + (check_fec $IMG $IMG $IMG 4096 64 6250 4194304 8388608 $(($RANDOM % 23 + 2)) $(($INDEX * 4)) 'y' $SALT) || fail "FEC repair failed" + (check_fec $IMG $IMG_HASH $FEC_DEV 4096 30 30 0 0 $(($RANDOM % 23 + 2)) $(($INDEX * 4)) 'n' $SALT) || fail "FEC repair failed" (check_fec $IMG $IMG_HASH $FEC_DEV 4096 35 35 0 0 $(($RANDOM % 23 + 2)) $(($INDEX * 4))) || fail "FEC repair failed" (check_fec $IMG $IMG_HASH $FEC_DEV 512 2000 2000 0 0 $(($RANDOM % 23 + 2)) $(($INDEX * 4))) || fail "FEC repair failed" @@ -441,7 +478,7 @@ checkUserSpaceRepair 500 512 2 2457600 4915200 1 1 checkUserSpaceRepair -1 4096 2 0 0 3 10 checkUserSpaceRepair 400 4096 2 2048000 0 2 1 -#checkUserSpaceRepair 500 4096 2 2457600 4915200 1 2 # FIXME +checkUserSpaceRepair 500 4096 2 2457600 4915200 1 2 remove_mapping exit 0 diff -Nru cryptsetup-2.3.4/.travis-functions.sh cryptsetup-2.3.6/.travis-functions.sh --- cryptsetup-2.3.4/.travis-functions.sh 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/.travis-functions.sh 2021-05-28 04:57:08.000000000 -0500 @@ -102,7 +102,13 @@ keyutils \ libjson-c-dev \ libblkid-dev \ + dkms \ + linux-headers-$(uname -r) \ + linux-modules-extra-$(uname -r) \ || return + + # For VeraCrypt test + sudo apt-get install gost-crypto-dkms } function travis_before_script diff -Nru cryptsetup-2.3.4/.travis.yml cryptsetup-2.3.6/.travis.yml --- cryptsetup-2.3.4/.travis.yml 2020-09-03 12:11:40.000000000 -0500 +++ cryptsetup-2.3.6/.travis.yml 2021-05-28 04:57:08.000000000 -0500 @@ -9,9 +9,9 @@ - gcc env: - - MAKE_CHECK="gcrypt" + # MAKE_CHECK="gcrypt" - MAKE_CHECK="openssl" - - MAKE_CHECK="kernel" + # MAKE_CHECK="kernel" branches: only: