Merge pull request #17148 from jlebon/pr/crypt-source
cryptsetup-generator: use "/proc/cmdline" as source when appropriate
This commit is contained in:
commit
ea223d3d3e
|
@ -274,7 +274,8 @@ static int create_disk(
|
||||||
const char *device,
|
const char *device,
|
||||||
const char *password,
|
const char *password,
|
||||||
const char *keydev,
|
const char *keydev,
|
||||||
const char *options) {
|
const char *options,
|
||||||
|
const char *source) {
|
||||||
|
|
||||||
_cleanup_free_ char *n = NULL, *d = NULL, *u = NULL, *e = NULL,
|
_cleanup_free_ char *n = NULL, *d = NULL, *u = NULL, *e = NULL,
|
||||||
*keydev_mount = NULL, *keyfile_timeout_value = NULL,
|
*keydev_mount = NULL, *keyfile_timeout_value = NULL,
|
||||||
|
@ -343,7 +344,7 @@ static int create_disk(
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
r = generator_write_cryptsetup_unit_section(f, arg_crypttab);
|
r = generator_write_cryptsetup_unit_section(f, source);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
|
@ -540,7 +541,7 @@ static int parse_proc_cmdline_item(const char *key, const char *value, void *dat
|
||||||
if (proc_cmdline_value_missing(key, value))
|
if (proc_cmdline_value_missing(key, value))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
d = get_crypto_device(startswith(value, "luks-") ? value+5 : value);
|
d = get_crypto_device(startswith(value, "luks-") ?: value);
|
||||||
if (!d)
|
if (!d)
|
||||||
return log_oom();
|
return log_oom();
|
||||||
|
|
||||||
|
@ -680,7 +681,7 @@ static int add_crypttab_devices(void) {
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
r = create_disk(name, device, keyfile, keydev, (d && d->options) ? d->options : options);
|
r = create_disk(name, device, keyfile, keydev, (d && d->options) ? d->options : options, arg_crypttab);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
|
@ -715,7 +716,8 @@ static int add_proc_cmdline_devices(void) {
|
||||||
device,
|
device,
|
||||||
d->keyfile ?: arg_default_keyfile,
|
d->keyfile ?: arg_default_keyfile,
|
||||||
d->keydev,
|
d->keydev,
|
||||||
d->options ?: arg_default_options);
|
d->options ?: arg_default_options,
|
||||||
|
"/proc/cmdline");
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue