return 0;
}
-static int parse_proc_cmdline_word(const char *word) {
+static int parse_proc_cmdline_item(const char *key, const char *value) {
int r;
- if (startswith(word, "modules-load=")) {
- r = add_modules(word + 13);
+ if (STR_IN_SET(key, "modules-load", "rd.modules-load") && value) {
+ r = add_modules(value);
if (r < 0)
return r;
-
- } else if (startswith(word, "rd.modules-load=")) {
- if (in_initrd()) {
- r = add_modules(word + 16);
- if (r < 0)
- return r;
- }
}
return 0;
assert(ctx);
assert(path);
- r = search_and_fopen_nulstr(path, "re", conf_file_dirs, &f);
+ r = search_and_fopen_nulstr(path, "re", NULL, conf_file_dirs, &f);
if (r < 0) {
if (ignore_enoent && r == -ENOENT)
return 0;
umask(0022);
- if (parse_proc_cmdline(parse_proc_cmdline_word) < 0)
+ if (parse_proc_cmdline(parse_proc_cmdline_item) < 0)
return EXIT_FAILURE;
ctx = kmod_new(NULL, NULL);