chiark / gitweb /
util-lib: read $SYSTEMD_PROC_CMDLINE if set when looking for the kernel cmdline
[elogind.git] / src / basic / proc-cmdline.c
index 281833f883f86a09ac2b68ec44414abce5e53a00..acdfec0a07ebb2236cb431d883b094bf3aa9d2e2 100644 (file)
 #include "virt.h"
 
 int proc_cmdline(char **ret) {
+        const char *e;
         assert(ret);
 
+        /* For testing purposes it is sometimes useful to be able to override what we consider /proc/cmdline to be */
+        e = secure_getenv("SYSTEMD_PROC_CMDLINE");
+        if (e) {
+                char *m;
+
+                m = strdup(e);
+                if (!m)
+                        return -ENOMEM;
+
+                *ret = m;
+                return 0;
+        }
+
         if (detect_container() > 0)
                 return get_process_cmdline(1, 0, false, ret);
         else