diff options
Diffstat (limited to 'source4/smb_server/reply.c')
-rw-r--r-- | source4/smb_server/reply.c | 10 |
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); } } |