summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>1999-09-09 18:15:08 +0000
committerLuke Leighton <lkcl@samba.org>1999-09-09 18:15:08 +0000
commit178ad937ecb3a3d30fde6f7ac5cc7fe653c5ec8d (patch)
tree7a2e29fd73e9145c90efacb895976c173e308dd3 /source3
parent7f8f5e15bdffec00454168c0591fa39a88d191c2 (diff)
downloadsamba-178ad937ecb3a3d30fde6f7ac5cc7fe653c5ec8d.tar.gz
samba-178ad937ecb3a3d30fde6f7ac5cc7fe653c5ec8d.tar.bz2
samba-178ad937ecb3a3d30fde6f7ac5cc7fe653c5ec8d.zip
allan hourihane sent log 100 in which showed that some really old code
for lsa_close response was messing up. fixed by calling lsa_io_r_close() which i've been meaning to do for over eighteen months. (This used to be commit f9a0ea09486b18a130ce1a1e5381ca61e0293c75)
Diffstat (limited to 'source3')
-rw-r--r--source3/lsarpcd/srv_lsa.c19
-rw-r--r--source3/rpc_server/srv_lsa.c19
2 files changed, 8 insertions, 30 deletions
diff --git a/source3/lsarpcd/srv_lsa.c b/source3/lsarpcd/srv_lsa.c
index 26153fca47..36259477da 100644
--- a/source3/lsarpcd/srv_lsa.c
+++ b/source3/lsarpcd/srv_lsa.c
@@ -571,23 +571,12 @@ static void api_lsa_lookup_names( pipes_struct *p, prs_struct *data,
static void api_lsa_close( pipes_struct *p, prs_struct *data,
prs_struct *rdata)
{
- /* XXXX this is NOT good */
- char *q = mem_data(&(rdata->data), rdata->offset);
+ LSA_R_CLOSE r_c;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
+ ZERO_STRUCT(r_c);
- rdata->offset += 24;
+ /* store the response in the SMB stream */
+ lsa_io_r_close("", &r_c, rdata, 0);
}
/***************************************************************************
diff --git a/source3/rpc_server/srv_lsa.c b/source3/rpc_server/srv_lsa.c
index 26153fca47..36259477da 100644
--- a/source3/rpc_server/srv_lsa.c
+++ b/source3/rpc_server/srv_lsa.c
@@ -571,23 +571,12 @@ static void api_lsa_lookup_names( pipes_struct *p, prs_struct *data,
static void api_lsa_close( pipes_struct *p, prs_struct *data,
prs_struct *rdata)
{
- /* XXXX this is NOT good */
- char *q = mem_data(&(rdata->data), rdata->offset);
+ LSA_R_CLOSE r_c;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
- SIVAL(q, 0, 0);
- q += 4;
+ ZERO_STRUCT(r_c);
- rdata->offset += 24;
+ /* store the response in the SMB stream */
+ lsa_io_r_close("", &r_c, rdata, 0);
}
/***************************************************************************