diff options
author | Lennart Poettering <lennart@poettering.net> | 2014-06-17 03:25:02 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2014-06-17 03:26:40 +0200 |
commit | 489388fbc0be89e2b978258d277b5ff2da573174 (patch) | |
tree | ae22b8d4fbf776dce07a5c45688693eaacedaced /src/core/machine-id-setup.c | |
parent | c47fc1f025dd4b4c22d4650385748dc8486df0b6 (diff) |
machine-id-setup: allow passing NULL as function argument, for simplicity
Diffstat (limited to 'src/core/machine-id-setup.c')
-rw-r--r-- | src/core/machine-id-setup.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/core/machine-id-setup.c b/src/core/machine-id-setup.c index 3efcd5fac2..e2e6d02269 100644 --- a/src/core/machine-id-setup.c +++ b/src/core/machine-id-setup.c @@ -157,18 +157,23 @@ static int generate(char id[34], const char *root) { } int machine_id_setup(const char *root) { + const char *etc_machine_id, *run_machine_id; _cleanup_close_ int fd = -1; - int r; bool writable = false; struct stat st; char id[34]; /* 32 + \n + \0 */ - char *etc_machine_id, *run_machine_id; + int r; - etc_machine_id = strappenda(root, "/etc/machine-id"); - path_kill_slashes(etc_machine_id); + if (isempty(root)) { + etc_machine_id = "/etc/machine-id"; + run_machine_id = "/run/machine-id"; + } else { + etc_machine_id = strappenda(root, "/etc/machine-id"); + path_kill_slashes((char*) etc_machine_id); - run_machine_id = strappenda(root, "/run/machine-id"); - path_kill_slashes(run_machine_id); + run_machine_id = strappenda(root, "/run/machine-id"); + path_kill_slashes((char*) run_machine_id); + } RUN_WITH_UMASK(0000) { /* We create this 0444, to indicate that this isn't really |