summaryrefslogtreecommitdiff
path: root/source4/smb_server/reply.c
diff options
context:
space:
mode:
Diffstat (limited to 'source4/smb_server/reply.c')
-rw-r--r--source4/smb_server/reply.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/source4/smb_server/reply.c b/source4/smb_server/reply.c
index dd1df29573..818d953abb 100644
--- a/source4/smb_server/reply.c
+++ b/source4/smb_server/reply.c
@@ -1369,12 +1369,16 @@ void reply_echo(struct smbsrv_request *req)
memcpy(req->out.data, req->in.data, req->in.data_size);
for (i=1; i <= count;i++) {
+ struct smbsrv_request *this_req;
+
if (i != count) {
- talloc_increase_ref_count(req);
+ this_req = req_setup_secondary(req);
+ } else {
+ this_req = req;
}
- SSVAL(req->out.vwv, VWV(0), i);
- req_send_reply(req);
+ SSVAL(this_req->out.vwv, VWV(0), i);
+ req_send_reply(this_req);
}
}