summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2010-04-15 09:24:56 +0200
committerStefan Metzmacher <metze@samba.org>2010-04-15 09:34:02 +0200
commita1cf6a52af5eb9766105870c2eb5470855fbd1e7 (patch)
tree51518842aa2c2db814fda65fd01b7d7bb7e9440f
parent2fd0137a87cdefb5626f5537201af8f93eb0be8b (diff)
downloadsamba-a1cf6a52af5eb9766105870c2eb5470855fbd1e7.tar.gz
samba-a1cf6a52af5eb9766105870c2eb5470855fbd1e7.tar.bz2
samba-a1cf6a52af5eb9766105870c2eb5470855fbd1e7.zip
s4:winbind: wbsrv_samba3_priv_pipe_dir() needs to return the directory not the pipe path
metze
-rw-r--r--source4/winbind/wb_samba3_cmd.c8
-rw-r--r--source4/winbind/wb_server.c2
-rw-r--r--source4/winbind/wb_server.h4
3 files changed, 5 insertions, 9 deletions
diff --git a/source4/winbind/wb_samba3_cmd.c b/source4/winbind/wb_samba3_cmd.c
index d245d7ae37..077dcbecaa 100644
--- a/source4/winbind/wb_samba3_cmd.c
+++ b/source4/winbind/wb_samba3_cmd.c
@@ -215,11 +215,13 @@ NTSTATUS wbsrv_samba3_netbios_name(struct wbsrv_samba3_call *s3call)
NTSTATUS wbsrv_samba3_priv_pipe_dir(struct wbsrv_samba3_call *s3call)
{
- const char *path = s3call->wbconn->listen_socket->service->priv_socket_path;
+ struct loadparm_context *lp_ctx = s3call->wbconn->listen_socket->service->task->lp_ctx;
+ const char *priv_socket_dir = lp_winbindd_privileged_socket_directory(lp_ctx);
+
s3call->response.result = WINBINDD_OK;
- s3call->response.extra_data.data = discard_const(path);
+ s3call->response.extra_data.data = discard_const(priv_socket_dir);
- s3call->response.length += strlen(path) + 1;
+ s3call->response.length += strlen(priv_socket_dir) + 1;
return NT_STATUS_OK;
}
diff --git a/source4/winbind/wb_server.c b/source4/winbind/wb_server.c
index 4b31997f6c..36ade7de5e 100644
--- a/source4/winbind/wb_server.c
+++ b/source4/winbind/wb_server.c
@@ -304,12 +304,10 @@ static void winbind_task_init(struct task_server *task)
listen_socket = talloc(service, struct wbsrv_listen_socket);
if (!listen_socket) goto nomem;
listen_socket->socket_path
- = service->priv_socket_path
= talloc_asprintf(listen_socket, "%s/%s",
lp_winbindd_privileged_socket_directory(task->lp_ctx),
WINBINDD_SAMBA3_SOCKET);
if (!listen_socket->socket_path) goto nomem;
- if (!listen_socket->socket_path) goto nomem;
listen_socket->service = service;
listen_socket->privileged = true;
status = stream_setup_socket(task->event_ctx, task->lp_ctx, model_ops,
diff --git a/source4/winbind/wb_server.h b/source4/winbind/wb_server.h
index d86bc20fb9..3bfe58bca9 100644
--- a/source4/winbind/wb_server.h
+++ b/source4/winbind/wb_server.h
@@ -25,8 +25,6 @@
#include "libnet/libnet.h"
#define WINBINDD_SAMBA3_SOCKET "pipe"
-/* the privileged socket is in smbd_tmp_dir() */
-#define WINBINDD_SAMBA3_PRIVILEGED_SOCKET "winbind_pipe"
/* this struct stores global data for the winbind task */
struct wbsrv_service {
@@ -35,8 +33,6 @@ struct wbsrv_service {
const struct dom_sid *primary_sid;
struct wbsrv_domain *domains;
struct idmap_context *idmap_ctx;
-
- const char *priv_socket_path;
};
struct wbsrv_samconn {