Ondrej Kozina
48bf08922c
Make all LUKS2 key size helpers return negative value on error.
2018-04-15 13:03:51 +02:00
Ondrej Kozina
7bee66fe36
Add new luks2 keyslot validation condition.
2018-03-22 14:05:19 +01:00
Ondrej Kozina
bd370ab789
Fix bugs in crypt_persistent_flags_get.
...
various bugfixes:
- erase flags variable if no flags are stored
- do not print false debug warning
- during activation do not overwrite activation flags
with persistent flags
2018-02-27 11:58:05 +01:00
Milan Broz
2b6808f165
Fix some anoying gcc buffer size warnings.
2018-02-14 18:23:25 +01:00
Milan Broz
1fe014dbae
Update copyright year.
2018-01-20 17:55:21 +01:00
Milan Broz
1ca439f4e0
Fix some warnings found during static analysis.
2018-01-20 14:42:05 +01:00
Ondrej Kozina
08e7c143b3
Add internal code for LUKS2 keyslot params.
...
This fixes crypt_keyslot_add_by_key where we were unable to store
keyslot (unbound to segment) with different key_size.
The code used (new) volume key size implicitly which could be wrong
if new size was not compatible with cipher parameter for keyslot area.
2018-01-19 13:48:09 +01:00
Ondrej Kozina
9504d866b6
Use default segment alias in LUKS2 activatation.
2018-01-18 14:05:33 +01:00
Ondrej Kozina
b31e029000
Validate LUKS2 header in crypt_set_uuid().
2018-01-04 09:20:23 +01:00
Yuri Chornoivan
982da4d20c
Fix minor typos
2018-01-04 09:13:58 +01:00
Ondrej Kozina
286c2960c8
silence signed/unsigned compiler warnings
...
any array with item count close to INT32_MAX would
not fit LUKS2 header json area anyway
2017-12-13 12:06:58 +01:00
Ondrej Kozina
a12e374a04
harden checks of json_object_array_length return values
...
with json-c until 0.12.x json_object_array_length returned signed
integer. json-c 0.13.x and later changed return type to unsigned
size_t.
Consider return values less or equal to zero as empty array, otherwise
array is non-empty.
2017-12-13 12:06:54 +01:00
Ondrej Kozina
92b41e4935
more return NULL instead of 0 cleanups
2017-12-01 13:17:32 +01:00
Ondrej Kozina
6edae6ddef
return NULL instead of 0
2017-12-01 13:10:37 +01:00
Ondrej Kozina
3c839f44d8
luks2: fix off-by-one error in uint64 validation
2017-11-23 16:18:19 +01:00
Ondrej Kozina
304bdd7d0d
luks2: add json_object_new_uint64 wrapper
...
json doesn't support 64 bits integers. We workaround it by storing
large numbers as string and validate the value internally.
2017-11-23 16:18:14 +01:00
Andrea Gelmini
a97de38b6b
Fix typos.
2017-11-08 10:22:49 +01:00
Ondrej Kozina
1f01c76fa5
fix memory leak on failed luks2 activation
2017-11-03 17:30:14 +01:00
Ondrej Kozina
76947fa835
luks2: add offline reencrypt requriement
2017-10-28 22:29:28 +02:00
Milan Broz
f7dadfb646
Fix some benign compiler warnings.
2017-10-28 14:12:25 +02:00
Milan Broz
31779c0763
Fix memory leak in LUKS2 requirements handling for restore context.
2017-10-28 12:01:02 +02:00
Milan Broz
3ccbb8fe84
Fix some problems found by Coverity analysis.
2017-09-27 10:18:38 +02:00
Ondrej Kozina
b4782809d4
luks2: allow masking of requirements internaly
...
before this patch any LUKS2 requirement defined in header
would stop a restricted operation from proceeding further.
This patch adds ability to mask requirements (internal only).
2017-09-27 07:48:53 +02:00
Ondrej Kozina
b3feae5474
luks2: unify naming for requirements flags
2017-09-27 07:47:41 +02:00
Ondrej Kozina
c015aeca4e
luks2: move pre-activation requirements check lower
2017-09-27 07:47:13 +02:00
Milan Broz
9f2727bb77
Add libLUKS2.
2017-09-24 19:50:12 +02:00