From: Samuel Cabrero Date: Thu, 2 Feb 2023 08:56:05 +0000 (+0100) Subject: winbind:varlink: Create varlink socket directory X-Git-Tag: tevent-0.17.0~747 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b52ccab3b3372ae8e2ddaa4d143d47ac2b3c7841;p=thirdparty%2Fsamba.git winbind:varlink: Create varlink socket directory Signed-off-by: Samuel Cabrero Reviewed-by: Andreas Schneider --- diff --git a/source3/winbindd/winbindd_varlink.c b/source3/winbindd/winbindd_varlink.c index ccde59e953f..edc55143fd8 100644 --- a/source3/winbindd/winbindd_varlink.c +++ b/source3/winbindd/winbindd_varlink.c @@ -18,6 +18,7 @@ */ #include "includes.h" +#include "lib/util/mkdir_p.h" #include "winbindd_varlink.h" #define WB_VL_SOCKET_DIR "/run/systemd/userdb" @@ -85,6 +86,15 @@ bool winbind_setup_varlink(TALLOC_CTX *mem_ctx, "service name", WB_VL_SERVICE_NAME); + /* Create socket directory, useful in containers */ + rc = mkdir_p(socket_dir, + S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH); + if (rc && errno != EEXIST) { + DBG_ERR("Could not create socket directory %s: %s\n", + socket_dir, strerror(errno)); + goto fail; + } + uri = talloc_asprintf(state, "unix:%s/%s", socket_dir, socket_name); rc = varlink_service_new(&state->service,