From ba6f63ca67fc9e0b2bfa54ccf2cf0b78c53db74b Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Tue, 17 May 2011 10:32:38 +0200 Subject: [PATCH] s3:rpc_server: create lp_ncalrpc_dir() with 0755 before lp_ncalrpc_dir()/np with 0700 metze Autobuild-User: Stefan Metzmacher Autobuild-Date: Tue May 17 13:01:14 CEST 2011 on sn-devel-104 (cherry picked from commit cb227d6d1492247d8aff03807cac0b7266202a38) The last 2 patches address bug #8141 (wrong permissions on lp_ncalrpc_dir()). --- source3/rpc_server/rpc_server.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/source3/rpc_server/rpc_server.c b/source3/rpc_server/rpc_server.c index 164e0d8bb86..8ec55bbfb86 100644 --- a/source3/rpc_server/rpc_server.c +++ b/source3/rpc_server/rpc_server.c @@ -263,6 +263,17 @@ bool setup_named_pipe_socket(const char *pipe_name, } state->fd = -1; + /* + * As lp_ncalrpc_dir() should have 0755, but + * lp_ncalrpc_dir()/np should have 0700, we need to + * create lp_ncalrpc_dir() first. + */ + if (!directory_create_or_exist(lp_ncalrpc_dir(), geteuid(), 0755)) { + DEBUG(0, ("Failed to create pipe directory %s - %s\n", + lp_ncalrpc_dir(), strerror(errno))); + goto out; + } + np_dir = talloc_asprintf(state, "%s/np", lp_ncalrpc_dir()); if (!np_dir) { DEBUG(0, ("Out of memory\n")); -- 2.11.4.GIT