summaryrefslogtreecommitdiff
path: root/source3/smbd
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/smbd
parent309ad2b08f2964c30fd71af027b7c94f5d761e4a (diff)
downloadsamba-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.c16
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",