From: Joseph Sutton Date: Thu, 5 Oct 2023 22:10:25 +0000 (+1300) Subject: s4:rpc_server: Check mkdir() return value (CID 1034649) X-Git-Tag: tevent-0.16.0~37 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ca2a97b729d005d9be4e1c04da6b3f65bd7b0693;p=thirdparty%2Fsamba.git s4:rpc_server: Check mkdir() return value (CID 1034649) Signed-off-by: Joseph Sutton Reviewed-by: Andrew Bartlett --- diff --git a/source4/rpc_server/service_rpc.c b/source4/rpc_server/service_rpc.c index 72a00e865e0..e4f72a129cf 100644 --- a/source4/rpc_server/service_rpc.c +++ b/source4/rpc_server/service_rpc.c @@ -160,7 +160,12 @@ static NTSTATUS dcesrv_task_init(struct task_server *task) /* Make sure the directory for NCALRPC exists */ if (!directory_exist(lpcfg_ncalrpc_dir(task->lp_ctx))) { - mkdir(lpcfg_ncalrpc_dir(task->lp_ctx), 0755); + int ret; + + ret = mkdir(lpcfg_ncalrpc_dir(task->lp_ctx), 0755); + if (ret == -1 && errno != EEXIST) { + return map_nt_error_from_unix_common(errno); + } } status = dcesrv_init_endpoints(task, dce_ctx, false); if (!NT_STATUS_IS_OK(status)) {