summaryrefslogtreecommitdiffstats
path: root/source3/winbindd
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2010-07-02 10:17:44 +0200
committerGünther Deschner <gd@samba.org>2010-07-08 16:35:26 +0200
commit690ed0c5e2c61584daa2acb5dbfb680ecee83e0f (patch)
treeb630437f70185cfc2832e0b8478f3667831d24f2 /source3/winbindd
parent309ad2b08f2964c30fd71af027b7c94f5d761e4a (diff)
downloadsamba-690ed0c5e2c61584daa2acb5dbfb680ecee83e0f.tar.gz
samba-690ed0c5e2c61584daa2acb5dbfb680ecee83e0f.tar.xz
samba-690ed0c5e2c61584daa2acb5dbfb680ecee83e0f.zip
s3-rpc: when using rpc_pipe_open_internal, make sure to go through NDR.
Otherwise a lot of information that is usually generated in the ndr_push remains in an uninitialized state. Guenther
Diffstat (limited to 'source3/winbindd')
-rw-r--r--source3/winbindd/winbindd.c5
-rw-r--r--source3/winbindd/winbindd_samr.c2
2 files changed, 5 insertions, 2 deletions
diff --git a/source3/winbindd/winbindd.c b/source3/winbindd/winbindd.c
index 25d4e1d3d4a..7e1eb3e7140 100644
--- a/source3/winbindd/winbindd.c
+++ b/source3/winbindd/winbindd.c
@@ -26,6 +26,8 @@
#include "winbindd.h"
#include "../../nsswitch/libwbclient/wbc_async.h"
#include "librpc/gen_ndr/messaging.h"
+#include "../librpc/gen_ndr/srv_lsa.h"
+#include "../librpc/gen_ndr/srv_samr.h"
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_WINBIND
@@ -1289,6 +1291,9 @@ int main(int argc, char **argv, char **envp)
winbindd_register_handlers();
+ rpc_lsarpc_init();
+ rpc_samr_init();
+
if (!init_system_info()) {
DEBUG(0,("ERROR: failed to setup system user info.\n"));
exit(1);
diff --git a/source3/winbindd/winbindd_samr.c b/source3/winbindd/winbindd_samr.c
index a2865a0bca8..e9e3e6f30d5 100644
--- a/source3/winbindd/winbindd_samr.c
+++ b/source3/winbindd/winbindd_samr.c
@@ -60,7 +60,6 @@ static NTSTATUS open_internal_samr_pipe(TALLOC_CTX *mem_ctx,
/* create a samr connection */
status = rpc_pipe_open_internal(mem_ctx,
&ndr_table_samr.syntax_id,
- rpc_samr_dispatch,
server_info,
&cli);
if (!NT_STATUS_IS_OK(status)) {
@@ -132,7 +131,6 @@ static NTSTATUS open_internal_lsa_pipe(TALLOC_CTX *mem_ctx,
/* create a samr connection */
status = rpc_pipe_open_internal(mem_ctx,
&ndr_table_lsarpc.syntax_id,
- rpc_lsarpc_dispatch,
server_info,
&cli);
if (!NT_STATUS_IS_OK(status)) {