mirror of
https://github.com/systemd/systemd.git
synced 2024-11-27 20:23:36 +08:00
util-lib: read $SYSTEMD_PROC_CMDLINE if set when looking for the kernel cmdline
if we want to parse the kernel command line, let's check the $SYSTEMD_PROC_CMDLINE environment variable first. This is useful for debugging purposes.
This commit is contained in:
parent
5cfc0a8461
commit
2467cc55f1
@ -21,6 +21,11 @@ All tools:
|
||||
* `$SD_EVENT_PROFILE_DELAYS=1` — if set, the sd-event event loop implementation
|
||||
will print latency information at runtime.
|
||||
|
||||
* `$SYSTEMD_PROC_CMDLINE` — if set, may contain a string that is used as kernel
|
||||
command line instead of the actual one readable from /proc/cmdline. This is
|
||||
useful for debugging, in order to test generators and other code against
|
||||
specific kernel command lines.
|
||||
|
||||
systemctl:
|
||||
|
||||
* `$SYSTEMCTL_FORCE_BUS=1` — if set, do not connect to PID1's private D-Bus
|
||||
|
@ -34,8 +34,22 @@
|
||||
#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
|
||||
|
Loading…
Reference in New Issue
Block a user