Ondrej Kozina
f74072ba28
Silence active device detection message in batch mode.
2019-05-21 16:05:23 +02:00
Ondrej Kozina
19eac239b7
Add --device-size parameter for use in LUKS2 reencryption.
...
Currently it's used only in LUKS2 reencryption code
for reencrypting initial part of data device only.
It may be used to encrypt/reencrypt only initial part
of data device if user is aware that rest of the device
is empty.
2019-05-21 15:54:43 +02:00
Ondrej Kozina
31cd41bfe4
Add support for reencryption of initial device part.
...
It's useful to reencrypt only initial device part only.
For example with golden image reencryption it may be useful
to reencrypt only first X bytes of device because we know
the rest of device is empty.
2019-05-21 15:54:07 +02:00
Ondrej Kozina
af6c321395
Set default length for reencryption with resilience 'none' only.
2019-05-21 15:54:07 +02:00
Milan Broz
448fca1fdf
Integritysetup: implement new bitmap mode.
2019-05-21 15:54:07 +02:00
Ondrej Kozina
1923928fdc
Drop duplicate error message from reencrypt load.
2019-05-21 15:54:07 +02:00
Ondrej Kozina
bee5574656
Add --resume-only parameter to reencrypt command.
2019-05-21 15:54:07 +02:00
Ondrej Kozina
8c8a68d850
Add CRYPT_REENCRYPT_RESUME_ONLY flag.
2019-05-13 18:23:20 +02:00
Ondrej Kozina
9159b5b120
Add coverity toctou annotation in device_open_excl.
...
We can't avoid this race due to undefined behaviour if called with
O_EXCL flag on regular file.
Let's double-check fd with O_EXCL flag is actually open block device.
2019-05-13 18:23:20 +02:00
Ondrej Kozina
2d0079905e
Adapt device_open_excl to reusing of fds.
2019-05-10 21:05:31 +02:00
Ondrej Kozina
83c227d53c
Sync device using internal write enabled descriptor.
2019-05-10 21:05:31 +02:00
Ondrej Kozina
ee57b865b0
Reuse device file desriptors.
2019-05-10 21:05:31 +02:00
Milan Broz
ecbb9cfa90
Use upstream gnulib patch for Coverity warning fixed by previous patch.
2019-05-10 21:03:22 +02:00
Ondrej Kozina
8545e8496b
Fix memleak in reencryption with moved segment.
2019-05-07 17:17:34 +02:00
Kamil Dudka
75b2610e85
Fix TAINTED_SCALAR false positives of Coverity
...
Coverity Analysis 2019.03 incorrectly marks the input argument
of base64_encode(), and conseuqnetly base64_encode_alloc(), as
tainted_data_sink because it sees byte-level operations on the input.
This one-line annotation makes Coverity suppress the following false
positives:
Error: TAINTED_SCALAR:
lib/luks2/luks2_digest_pbkdf2.c:117: tainted_data_argument: Calling function "crypt_random_get" taints argument "salt".
lib/luks2/luks2_digest_pbkdf2.c:157: tainted_data: Passing tainted variable "salt" to a tainted sink.
Error: TAINTED_SCALAR:
lib/luks2/luks2_keyslot_luks2.c:445: tainted_data_argument: Calling function "crypt_random_get" taints argument "salt".
lib/luks2/luks2_keyslot_luks2.c:448: tainted_data: Passing tainted variable "salt" to a tainted sink.
2019-05-07 15:35:55 +02:00
Milan Broz
237021ec15
Fix some warnings in static analysis.
2019-05-07 13:44:43 +02:00
Ondrej Kozina
4f5c25d0dd
Add HAVE_DECL_DM_TASK_RETRY_REMOVE define in local tests.
2019-05-06 15:42:11 +02:00
Ondrej Kozina
4c33ab1997
Remove internal config file scratching (breaks local tests.)
2019-05-06 15:41:37 +02:00
Ondrej Kozina
5bb65aca8f
Remove all test dm devices with retry option if available.
2019-05-06 15:37:35 +02:00
Milan Broz
3fd7babacc
Update Readme.md.
2019-05-03 15:50:39 +02:00
Ondrej Kozina
caea8a9588
Update rc release notes.
v2.2.0-rc0
2019-05-03 15:16:12 +02:00
Ondrej Kozina
e1d6cba014
Add reencryption action man page.
2019-05-03 15:00:33 +02:00
Milan Broz
1f91fe7a2c
Use JSON-debug wrappers.
2019-05-03 14:02:43 +02:00
Milan Broz
dc53261c3b
Fix data leak in format and reencrypt command.
2019-05-03 13:06:58 +02:00
Milan Broz
b3e90a93b0
Add test release notes and increase ABI version.
2019-05-03 12:57:29 +02:00
Milan Broz
1f3e2b770c
Fix offline reencryption tool name.
2019-05-02 21:05:22 +02:00
Ondrej Kozina
d310e896cb
Add basic offline tests for LUKS2 reencryption.
2019-05-02 17:23:59 +02:00
Ondrej Kozina
a36245cef6
Add new reencrypt cryptsetup action.
...
The new reencryption code is enabled via cryptsetup cli
and works with LUKS2 devices only.
2019-05-02 16:45:43 +02:00
Ondrej Kozina
092ef90f29
Add autodetection code for active dm device.
2019-05-02 16:44:23 +02:00
Ondrej Kozina
64f59ff71e
Add reencryption progress function.
2019-05-02 16:44:23 +02:00
Ondrej Kozina
a7f80a2770
Add resilient LUKS2 reencryption library code.
2019-05-02 16:44:23 +02:00
Ondrej Kozina
a5c5e3e876
Add dm_device_deps for quering dm device dependencies.
2019-05-02 15:23:29 +02:00
Ondrej Kozina
8e4fb993c0
Add error target support in dm_query_device.
2019-05-02 15:23:29 +02:00
Ondrej Kozina
846567275a
Move dm_query_device body in static function.
2019-05-02 15:23:28 +02:00
Ondrej Kozina
741c972935
Remove unused minor number from dm_is_dm_device.
2019-05-02 15:23:28 +02:00
Ondrej Kozina
6c2760c9cd
Report data sync errors from storage wrapper.
2019-04-29 16:48:20 +02:00
Ondrej Kozina
b35a5ee4a3
Replace table with error mapping even when in use.
2019-04-29 16:10:57 +02:00
Ondrej Kozina
345385376a
Add missing validation check for area type specification.
2019-04-29 16:10:57 +02:00
Milan Broz
dbe9db26fc
Never serialize memory-hard KDF for small amount of memory.
2019-04-29 16:10:57 +02:00
Milan Broz
91ba22b157
Do not try to remove device that was not succesfully activated.
2019-04-29 16:10:57 +02:00
Ondrej Kozina
86b2736480
Drop unused type parameter from LUKS2_keyslot_find_empty()
2019-04-23 10:41:56 +02:00
Milan Broz
cfe2fb66ab
Fix some untranslated error messages.
2019-04-23 10:41:06 +02:00
Milan Broz
428e61253c
Fix dm_error_device() to properly use error device.
2019-04-10 15:06:07 +02:00
Milan Broz
95bcd0c9d5
Fix previous patch locking to return EBUSY.
2019-04-10 14:27:42 +02:00
Milan Broz
23bada3c5a
Fix several issues found by Coverity scan.
2019-04-10 12:30:09 +02:00
Stig Otnes Kolstad
de0cf8433b
Add pbkdf options to all key operations in manpage
2019-04-09 17:19:41 +02:00
Milan Broz
1b49ea4061
Add global serialization lock for memory hard PBKDF.
...
This is very ugly workaround for situation when multiple
devices are being activated in parallel (systemd crypttab)
and system instead of returning ENOMEM use OOM killer
to randomly kill processes.
This flag is intended to be used only in very specific situations.
2019-03-29 11:58:12 +01:00
Ondrej Kozina
29b94d6ba3
Add arbitrary resource locking (named locks).
...
It's complementary to current device locking. It'll be used
for mutual exclusion of two or more reencryption resume processes
2019-03-26 14:48:27 +01:00
Ondrej Kozina
80a435f00b
Write keyslot binary data and metadata holding single lock.
2019-03-25 11:37:32 +01:00
Ondrej Kozina
fdcd5806b1
Allow to change requirements flag in-memory only.
2019-03-25 11:37:32 +01:00