diff options
author | Günther Deschner <gd@samba.org> | 2010-07-02 10:17:44 +0200 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2010-07-08 16:35:26 +0200 |
commit | 690ed0c5e2c61584daa2acb5dbfb680ecee83e0f (patch) | |
tree | b630437f70185cfc2832e0b8478f3667831d24f2 /source3/winbindd | |
parent | 309ad2b08f2964c30fd71af027b7c94f5d761e4a (diff) | |
download | samba-690ed0c5e2c61584daa2acb5dbfb680ecee83e0f.tar.gz samba-690ed0c5e2c61584daa2acb5dbfb680ecee83e0f.tar.bz2 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.c | 5 | ||||
-rw-r--r-- | source3/winbindd/winbindd_samr.c | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/source3/winbindd/winbindd.c b/source3/winbindd/winbindd.c index 25d4e1d3d4..7e1eb3e714 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 a2865a0bca..e9e3e6f30d 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)) { |