[systemd-commits] 2 commits - src/loopback-setup.c src/main.c

Lennart Poettering lennart at kemper.freedesktop.org
Tue Mar 15 19:42:05 PDT 2011


 src/loopback-setup.c |    2 +-
 src/main.c           |   46 ++++++++++++++++++++++------------------------
 2 files changed, 23 insertions(+), 25 deletions(-)

New commits:
commit d821e6d69a84e0fafde0228f9b8f8837216eafa7
Author: Lennart Poettering <lennart at poettering.net>
Date:   Wed Mar 16 03:35:59 2011 +0100

    main: interpret all argv[] arguments unconditionally when run in a container

diff --git a/src/main.c b/src/main.c
index 5b75ecc..1d6ac42 100644
--- a/src/main.c
+++ b/src/main.c
@@ -828,30 +828,28 @@ static int parse_argv(int argc, char *argv[]) {
                         break;
                 }
 
-        if (optind < argc) {
-                if (getpid() != 1) {
-                        /* Hmm, when we aren't run as init system
-                         * let's complain about excess arguments */
-
-                        log_error("Excess arguments.");
-                        return -EINVAL;
-
-                } else if (detect_container(NULL) > 0) {
-                        char **a;
-
-                        /* All /proc/cmdline arguments the kernel
-                         * didn't understand it passed to us. We're
-                         * note really interested in that usually
-                         * since /proc/cmdline is more interesting and
-                         * complete. With one exception: if we are run
-                         * in a container /proc/cmdline is not
-                         * relevant for us, hence we rely on argv[]
-                         * instead. */
-
-                        for (a = argv; a < argv + argc; a++)
-                                if ((r = parse_proc_cmdline_word(*a)) < 0)
-                                        return r;
-                }
+        if (optind < argc && getpid() != 1) {
+                /* Hmm, when we aren't run as init system
+                 * let's complain about excess arguments */
+
+                log_error("Excess arguments.");
+                return -EINVAL;
+        }
+
+        if (detect_container(NULL) > 0) {
+                char **a;
+
+                /* All /proc/cmdline arguments the kernel didn't
+                 * understand it passed to us. We're not really
+                 * interested in that usually since /proc/cmdline is
+                 * more interesting and complete. With one exception:
+                 * if we are run in a container /proc/cmdline is not
+                 * relevant for the container, hence we rely on argv[]
+                 * instead. */
+
+                for (a = argv; a < argv + argc; a++)
+                        if ((r = parse_proc_cmdline_word(*a)) < 0)
+                                return r;
         }
 
         return 0;

commit a2c422cbbe0c420fcfdb7adf1e2ace9c40065cee
Author: Lennart Poettering <lennart at poettering.net>
Date:   Wed Mar 16 03:35:38 2011 +0100

    loopback: downgrade an error to warning

diff --git a/src/loopback-setup.c b/src/loopback-setup.c
index a579060..b6359de 100644
--- a/src/loopback-setup.c
+++ b/src/loopback-setup.c
@@ -265,7 +265,7 @@ int loopback_setup(void) {
 
 finish:
         if (r < 0)
-                log_error("Failed to configure loopback device: %s", strerror(-r));
+                log_warning("Failed to configure loopback device: %s", strerror(-r));
 
         if (fd >= 0)
                 close_nointr_nofail(fd);



More information about the systemd-commits mailing list