From: Lennart Poettering Date: Tue, 26 Sep 2017 16:27:56 +0000 (+0200) Subject: socket: create leading directories for socket symlinks X-Git-Tag: v235~51^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1af87ab7d65b102e3ce5a64e8b47e4d08fc407a0;p=thirdparty%2Fsystemd.git socket: create leading directories for socket symlinks It really doesn't hurt creating prefix directories if necessary, as we tend to do that for other file nodes we create, too. Fixes: #6920 --- diff --git a/src/core/socket.c b/src/core/socket.c index d1d4007588d..157a6dbae74 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -1175,7 +1175,7 @@ static int fifo_address_create( assert(path); - mkdir_parents_label(path, directory_mode); + (void) mkdir_parents_label(path, directory_mode); r = mac_selinux_create_file_prepare(path, S_IFIFO); if (r < 0) @@ -1334,6 +1334,8 @@ static int socket_symlink(Socket *s) { return 0; STRV_FOREACH(i, s->symlinks) { + (void) mkdir_parents_label(*i, s->directory_mode); + r = symlink_idempotent(p, *i); if (r < 0) log_unit_warning_errno(UNIT(s), r, "Failed to create symlink %s → %s, ignoring: %m", p, *i);