Commit Graph

1770 Commits

Author SHA1 Message Date
Ondrej Kozina
8ea6b3eebd Redirect stdout to stderr during reencryption in initrd.
Stdout is not printed in initrd unless user invokes debug mode.
It's inconvenient to have users waiting for reencryption to
finish with no input at all.
2018-07-21 11:28:41 +02:00
Milan Broz
a01836fe8d Update po files. 2018-07-21 11:28:24 +02:00
Ondrej Kozina
268dc97857 Emit error when there's nothing to read from key file. 2018-07-20 15:24:16 +02:00
Milan Broz
fc203c9654 Set devel version. 2018-07-19 14:48:34 +02:00
Milan Broz
8eedd5b277 Update po files. 2018-07-19 14:47:06 +02:00
Milan Broz
561d9ac2bc Fix problems found by Coverity scan. 2018-07-19 14:45:46 +02:00
Milan Broz
1112da76f1 Fix some compiler warnings. 2018-07-19 14:45:37 +02:00
Ondrej Kozina
081aa18f39 Exclude valgrind logs from git. 2018-07-19 14:45:29 +02:00
Milan Broz
c05c8bbba1 Fix switched parameters in cryptsetup-reencrypt. 2018-07-19 14:45:23 +02:00
Milan Broz
eabd23f31e Print verbose message about keyslot and token numbers.
Move all messages to cryptsetup tools and print these
verbose messages:

  - Key slot X unlocked.
  - Key slot X created.
  - Key slot X removed.
and
  - Token X created.
  - Token X removed.

Also print error, if unknown token is tried to be removed.
2018-07-19 14:45:16 +02:00
Ondrej Kozina
cc27088df9 Add support for LUKS2 token export and import. 2018-07-19 14:44:54 +02:00
Ondrej Kozina
97ab7e9c65 Add interruptible variants of buffered io. 2018-07-19 14:44:42 +02:00
Ondrej Kozina
bbf92828f6 Move buffered io implementation in new functions.
No functional changes yet. See later commits.
2018-07-19 14:44:37 +02:00
Milan Broz
2f83bf9f83 Change wording of blkid signature messages. 2018-07-18 13:22:11 +02:00
Ondrej Kozina
b2a1728201 Fix bundled argon2 distcheck errors. 2018-07-18 11:57:43 +02:00
Ondrej Kozina
18cbbbe9aa Silent compiler warning about unused code. 2018-07-18 11:56:34 +02:00
Ondrej Kozina
d90f8a3697 Remove useless redeclaration in blkid_utils. 2018-07-18 11:56:19 +02:00
Ondrej Kozina
fe3ef6fc2e Fix type mistake in blkid_handle allocation. 2018-07-18 11:56:12 +02:00
Ondrej Kozina
1b9148f12f dracut-reencrypt: add --progress-frequency parameter 2018-07-18 11:56:04 +02:00
Ondrej Kozina
deb8e49483 Cleanup test files after failure.
'missing-file' must be removed if test failes. Otherwise
the test fails even after regression is fixed :)
2018-07-18 11:55:53 +02:00
Ondrej Kozina
d75af2a156 Move pwquality libs in tools. 2018-07-18 11:55:47 +02:00
Ondrej Kozina
9895edefff Fix misleading parameter name in crypt_keyfile_device_read.
This patch has no functional impact. It only renames misleading
parameter 'keyfile_size_max' to 'key_size' because that's
how it's actually interpreted since beginning. Also updated
API documentation accordingly.
2018-07-18 11:55:20 +02:00
Ondrej Kozina
b60e856087 Rephrase error message for invalid --type param in convert. 2018-07-17 10:53:20 +02:00
Milan Broz
6244b4d00f Use LANG=C in interactive tests. 2018-07-13 08:58:38 +02:00
Milan Broz
ee167b1a43 Fix offset parsing in unit test. 2018-07-11 22:41:15 +02:00
Ondrej Kozina
e8b9bfe44c Use 'cannot' instead of 'can not' in every message. 2018-07-11 22:39:31 +02:00
Ondrej Kozina
50f5593ffc Update dm-crypt version check in device-test.
Test is now able to detect backported sector_size feature
in RHEL7 kernels.
2018-07-11 22:24:26 +02:00
Ondrej Kozina
3f0f7acbc0 Update cryptsetup man page for --type option usage.
Fixes #394.
2018-07-11 22:24:05 +02:00
Ondrej Kozina
7f6f8ec386 Test fixes for pbkdf verifications. 2018-07-11 22:23:53 +02:00
Ondrej Kozina
24d1798779 Fix mistakes in pbkdf_type verification.
- hash is currently relevant only for pbkdf2
- time_ms may be unset (zero) if forced iterations
  are set.

Fixes #398.
2018-07-11 22:23:41 +02:00
Ondrej Kozina
3e9d603f0b Add cryptsetup repair tests. 2018-07-11 22:23:24 +02:00
Ondrej Kozina
71a8fd3106 Test basic LUKS2 repair capabilities.
a) checks crypt_load() fails when single LUKS2 header is corrupted and
   blkid detect other device signature from LUKS or none.
b) check explicit crypt_repair is able to override blkid restriction
   and fix corrupted primary header
c) check a) and b) with disabled locks
2018-07-11 22:23:10 +02:00
Ondrej Kozina
49279a3c19 Print device signatures before prompt in repair action. 2018-07-11 22:22:47 +02:00
Milan Broz
43a1291f7c Add Argon2 SSE compile to Travis script. 2018-07-11 22:22:32 +02:00
Milan Broz
6dc5340f60 Add libblkid-dev to Travis script install. 2018-07-11 22:22:16 +02:00
Ondrej Kozina
2a6e33bc73 Add prompt for integritysetup format action.
Also adds blkid wipe support when user confirms format action.
2018-07-11 22:22:04 +02:00
Ondrej Kozina
0f6b2cfd3d Wipe all device signatures in luksFormat action. 2018-07-11 22:21:51 +02:00
Ondrej Kozina
30d109c0e9 Add support for blkid scans and signature wiping in tools. 2018-07-11 22:21:32 +02:00
Ondrej Kozina
e8e1f844d9 Extend blkid utilities for signatures wiping.
For older distributions there's fallback mode for missing
blkid_do_wipe function. We erase signatures based on offsets
and lengths detected by blkid.
2018-07-11 22:20:54 +02:00
Ondrej Kozina
05a89e5566 Allow LUKS2 repair with disabled locks. 2018-07-11 22:20:31 +02:00
Ondrej Kozina
c122889c95 Update crypt_repair API documentation for LUKS2. 2018-07-11 22:20:16 +02:00
Ondrej Kozina
9de5dc932b Allow explicit LUKS2 repair.
Also moves FIXME comment lower to LUKS2 code with note that currently it's
safe to do crypt_repair on LUKS2 format without paying attention to LUKS2
requirements.
2018-07-11 22:19:58 +02:00
Ondrej Kozina
289c9ecf5d Allow LUKS2 repair to override blkid checks.
Allow user to run cryptsetup repair command and explicitly do
repair on corrupted LUKS2 headers where blkid decides it's no longer
a LUKS2 device.
2018-07-11 22:19:47 +02:00
Ondrej Kozina
2c1a6e3f94 Make LUKS2 auto-recovery aware of device signatures.
auto-recovery triggers any time when only single correct LUKS2
header instance was found. That may be dangerous.

We should suppress auto-recovery in case blkid decided the
device is no longer LUKS device. For example if secondary (intact)
LUKS2 header was left behind and blkid declares the device is LVM2
member.

Moreover if at least one header instance is corrupted and blkid
declares device non-empty and non-LUKS in the same time, header load
operation will be aborted with error.
2018-07-11 22:19:35 +02:00
Ondrej Kozina
ad092a898d Add blkid utilities for fast detection of device signatures. 2018-07-11 22:19:11 +02:00
joerichey@google.com
56f2548b6e Fix --disable-dev-random bug
--disable-dev-random now disables reading from /dev/random instead of
incorrectly enabling it. This was found by reviewing all of flags
in configure.ac.
2018-07-11 22:03:47 +02:00
joerichey@google.com
25467243a6 Add missing call to crypt_random_exit
We call crypt_random_init in init_crypto, but never call
crypt_random_exit. This change just copies what the crypt_backend
functions do, and calls crypt_random_exit in the descructor.
2018-07-11 22:03:44 +02:00
joerichey@google.com
e07d40fc26 Fix .gitignore to ignore all generated files 2018-07-11 22:03:41 +02:00
Milan Broz
09877e4e63 Use explicit list for LUKS2 secondary header offsets.
The code scan for the second header only if primary is corrrupted.

Let's set the possible offsets more clear.

This patch also removes 8kB header offset (that was not supported anyway).
2018-07-11 10:05:36 +02:00
Milan Broz
d3460b6cf5 Fix internal bundled Argon2 build. 2018-07-07 11:06:54 +02:00