X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fsystem-update-generator%2Fsystem-update-generator.c;h=4f22c9c3590bcda6021e0460166c9792b61616a3;hb=8d3d7072e609ef0e0fb37e1d19a29307d58146c3;hp=d148550e7c93c14a3a61eb86eb54ceb627bc7610;hpb=db5eea5a79b98a2b889f15dc21a5e0b57859b86b;p=elogind.git diff --git a/src/system-update-generator/system-update-generator.c b/src/system-update-generator/system-update-generator.c index d148550e7..4f22c9c35 100644 --- a/src/system-update-generator/system-update-generator.c +++ b/src/system-update-generator/system-update-generator.c @@ -35,10 +35,9 @@ static const char *arg_dest = "/tmp"; static int generate_symlink(void) { - struct stat st; - char *p; + const char *p = NULL; - if (lstat("/system-update", &st) < 0) { + if (access("/system-update", F_OK) < 0) { if (errno == ENOENT) return 0; @@ -46,33 +45,12 @@ static int generate_symlink(void) { return -EINVAL; } - p = strappend(arg_dest, "/default.target"); - if (!p) { - log_error("Out of memory."); - return -ENOMEM; - } - + p = strappenda(arg_dest, "/default.target"); if (symlink(SYSTEM_DATA_UNIT_PATH "/system-update.target", p) < 0) { - free(p); - log_error("Failed to create symlink: %m"); + log_error("Failed to create symlink %s: %m", p); return -errno; } - free(p); - - /* Also try to disable readahead, but don't try too hard */ - p = strappend(arg_dest, "/systemd-readahead-collect.service"); - if (p) { - symlink("/dev/null", p); - free(p); - } - - p = strappend(arg_dest, "/systemd-readahead-replay.service"); - if (p) { - symlink("/dev/null", p); - free(p); - } - return 0; }