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/smbd | |
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/smbd')
-rw-r--r-- | source3/smbd/lanman.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/source3/smbd/lanman.c b/source3/smbd/lanman.c index ba51c617df..ce7ad0e56d 100644 --- a/source3/smbd/lanman.c +++ b/source3/smbd/lanman.c @@ -2235,7 +2235,7 @@ static bool api_RNetShareAdd(struct smbd_server_connection *sconn, } status = rpc_pipe_open_internal(mem_ctx, &ndr_table_srvsvc.syntax_id, - rpc_srvsvc_dispatch, conn->server_info, + conn->server_info, &cli); if (!NT_STATUS_IS_OK(status)) { DEBUG(0,("api_RNetShareAdd: could not connect to srvsvc: %s\n", @@ -2341,7 +2341,7 @@ static bool api_RNetGroupEnum(struct smbd_server_connection *sconn, } status = rpc_pipe_open_internal( - talloc_tos(), &ndr_table_samr.syntax_id, rpc_samr_dispatch, + talloc_tos(), &ndr_table_samr.syntax_id, conn->server_info, &samr_pipe); if (!NT_STATUS_IS_OK(status)) { DEBUG(0, ("api_RNetUserEnum: Could not connect to samr: %s\n", @@ -2523,7 +2523,7 @@ static bool api_NetUserGetGroups(struct smbd_server_connection *sconn, endp = *rdata + *rdata_len; status = rpc_pipe_open_internal( - talloc_tos(), &ndr_table_samr.syntax_id, rpc_samr_dispatch, + talloc_tos(), &ndr_table_samr.syntax_id, conn->server_info, &samr_pipe); if (!NT_STATUS_IS_OK(status)) { DEBUG(0, ("api_RNetUserEnum: Could not connect to samr: %s\n", @@ -2679,7 +2679,7 @@ static bool api_RNetUserEnum(struct smbd_server_connection *sconn, endp = *rdata + *rdata_len; status = rpc_pipe_open_internal( - talloc_tos(), &ndr_table_samr.syntax_id, rpc_samr_dispatch, + talloc_tos(), &ndr_table_samr.syntax_id, conn->server_info, &samr_pipe); if (!NT_STATUS_IS_OK(status)) { DEBUG(0, ("api_RNetUserEnum: Could not connect to samr: %s\n", @@ -2922,7 +2922,7 @@ static bool api_SetUserPassword(struct smbd_server_connection *sconn, ZERO_STRUCT(user_handle); status = rpc_pipe_open_internal(mem_ctx, &ndr_table_samr.syntax_id, - rpc_samr_dispatch, conn->server_info, + conn->server_info, &cli); if (!NT_STATUS_IS_OK(status)) { DEBUG(0,("api_SetUserPassword: could not connect to samr: %s\n", @@ -3138,7 +3138,7 @@ static bool api_SamOEMChangePassword(struct smbd_server_connection *sconn, memcpy(hash.hash, data+516, 16); status = rpc_pipe_open_internal(mem_ctx, &ndr_table_samr.syntax_id, - rpc_samr_dispatch, conn->server_info, + conn->server_info, &cli); if (!NT_STATUS_IS_OK(status)) { DEBUG(0,("api_SamOEMChangePassword: could not connect to samr: %s\n", @@ -3691,7 +3691,7 @@ static bool api_RNetServerGetInfo(struct smbd_server_connection *sconn, p2 = p + struct_len; status = rpc_pipe_open_internal(mem_ctx, &ndr_table_srvsvc.syntax_id, - rpc_srvsvc_dispatch, conn->server_info, + conn->server_info, &cli); if (!NT_STATUS_IS_OK(status)) { DEBUG(0,("api_RNetServerGetInfo: could not connect to srvsvc: %s\n", @@ -4113,7 +4113,7 @@ static bool api_RNetUserGetInfo(struct smbd_server_connection *sconn, ZERO_STRUCT(user_handle); status = rpc_pipe_open_internal(mem_ctx, &ndr_table_samr.syntax_id, - rpc_samr_dispatch, conn->server_info, + conn->server_info, &cli); if (!NT_STATUS_IS_OK(status)) { DEBUG(0,("api_RNetUserGetInfo: could not connect to samr: %s\n", |