From: Zbigniew Jędrzejewski-Szmek Date: Tue, 4 Dec 2018 09:56:44 +0000 (+0100) Subject: generators: configure logging before the first use X-Git-Tag: v240~70^2~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=aba311f7ffb1370156f48061a5fdc2da9551e57f;p=thirdparty%2Fsystemd.git generators: configure logging before the first use --- diff --git a/src/cryptsetup/cryptsetup-generator.c b/src/cryptsetup/cryptsetup-generator.c index 8a889e980a9..746505a1811 100644 --- a/src/cryptsetup/cryptsetup-generator.c +++ b/src/cryptsetup/cryptsetup-generator.c @@ -583,14 +583,14 @@ DEFINE_PRIVATE_HASH_OPS_WITH_VALUE_DESTRUCTOR(crypt_device_hash_ops, char, strin static int run(int argc, char *argv[]) { int r; + log_setup_generator(); + if (argc > 1 && argc != 4) return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "This program takes three or no arguments."); if (argc > 1) arg_dest = argv[1]; - log_setup_generator(); - arg_disks = hashmap_new(&crypt_device_hash_ops); if (!arg_disks) return log_oom(); diff --git a/src/debug-generator/debug-generator.c b/src/debug-generator/debug-generator.c index 24bc4bd7e24..2615aa189df 100644 --- a/src/debug-generator/debug-generator.c +++ b/src/debug-generator/debug-generator.c @@ -145,6 +145,8 @@ static int generate_wants_symlinks(void) { static int run(int argc, char *argv[]) { int r, q; + log_setup_generator(); + if (argc > 1 && argc != 4) return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "This program takes three or no arguments."); @@ -152,8 +154,6 @@ static int run(int argc, char *argv[]) { if (argc > 1) arg_dest = argv[2]; - log_setup_generator(); - r = proc_cmdline_parse(parse_proc_cmdline_item, NULL, PROC_CMDLINE_RD_STRICT | PROC_CMDLINE_STRIP_RD_PREFIX); if (r < 0) log_warning_errno(r, "Failed to parse kernel command line, ignoring: %m"); diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c index 85cc36d80d5..8acee53d6cf 100644 --- a/src/fstab-generator/fstab-generator.c +++ b/src/fstab-generator/fstab-generator.c @@ -871,6 +871,8 @@ static int determine_root(void) { static int run(int argc, char *argv[]) { int r; + log_setup_generator(); + if (argc > 1 && argc != 4) return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "This program takes three or no arguments."); @@ -880,8 +882,6 @@ static int run(int argc, char *argv[]) { if (argc > 3) arg_dest_late = argv[3]; - log_setup_generator(); - r = proc_cmdline_parse(parse_proc_cmdline_item, NULL, 0); if (r < 0) log_warning_errno(r, "Failed to parse kernel command line, ignoring: %m"); diff --git a/src/getty-generator/getty-generator.c b/src/getty-generator/getty-generator.c index e2e07bca76f..e604ff79a1c 100644 --- a/src/getty-generator/getty-generator.c +++ b/src/getty-generator/getty-generator.c @@ -113,6 +113,8 @@ int main(int argc, char *argv[]) { const char *j; int r; + log_setup_generator(); + if (argc > 1 && argc != 4) { log_error("This program takes three or no arguments."); return EXIT_FAILURE; @@ -121,8 +123,6 @@ int main(int argc, char *argv[]) { if (argc > 1) arg_dest = argv[1]; - log_setup_generator(); - if (detect_container() > 0) { _cleanup_free_ char *container_ttys = NULL; diff --git a/src/gpt-auto-generator/gpt-auto-generator.c b/src/gpt-auto-generator/gpt-auto-generator.c index d1889273986..80e7bb671fb 100644 --- a/src/gpt-auto-generator/gpt-auto-generator.c +++ b/src/gpt-auto-generator/gpt-auto-generator.c @@ -671,6 +671,8 @@ static int add_mounts(void) { int main(int argc, char *argv[]) { int r, k; + log_setup_generator(); + if (argc > 1 && argc != 4) { log_error("This program takes three or no arguments."); return EXIT_FAILURE; @@ -679,8 +681,6 @@ int main(int argc, char *argv[]) { if (argc > 1) arg_dest = argv[3]; - log_setup_generator(); - if (detect_container() > 0) { log_debug("In a container, exiting."); return EXIT_SUCCESS; diff --git a/src/system-update-generator/system-update-generator.c b/src/system-update-generator/system-update-generator.c index 06062e45100..80f53cf34cb 100644 --- a/src/system-update-generator/system-update-generator.c +++ b/src/system-update-generator/system-update-generator.c @@ -54,6 +54,8 @@ static int parse_proc_cmdline_item(const char *key, const char *value, void *dat int main(int argc, char *argv[]) { int r, k; + log_setup_generator(); + if (argc > 1 && argc != 4) { log_error("This program takes three or no arguments."); return EXIT_FAILURE; @@ -62,8 +64,6 @@ int main(int argc, char *argv[]) { if (argc > 1) arg_dest = argv[2]; - log_setup_generator(); - r = generate_symlink(); if (r > 0) { diff --git a/src/veritysetup/veritysetup-generator.c b/src/veritysetup/veritysetup-generator.c index 0f5830a6e27..51996ec37e2 100644 --- a/src/veritysetup/veritysetup-generator.c +++ b/src/veritysetup/veritysetup-generator.c @@ -207,14 +207,14 @@ static int determine_devices(void) { static int run(int argc, char *argv[]) { int r; + log_setup_generator(); + if (argc > 1 && argc != 4) return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "This program takes three or no arguments."); if (argc > 1) arg_dest = argv[1]; - log_setup_generator(); - r = proc_cmdline_parse(parse_proc_cmdline_item, NULL, PROC_CMDLINE_STRIP_RD_PREFIX); if (r < 0) return log_warning_errno(r, "Failed to parse kernel command line: %m");