From 3b2c9bebc0aa08fe9a65afe5870bea490c5fb33a Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Tue, 28 Feb 2012 00:56:10 +0100 Subject: s3: Replace chain_reply This is a new implementation of our andx handling code. The old code was quite involved in that it was called from within the reply_ handlers. This leads to pretty complex faking of smb_request structures to give them the same environment, independent of whether they are called directly or from within chain_reply. chain_reply needs to go because it blocks really async handling of chained requests. --- source3/smbd/blocking.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'source3/smbd/blocking.c') diff --git a/source3/smbd/blocking.c b/source3/smbd/blocking.c index ac878926d1..d512b960b0 100644 --- a/source3/smbd/blocking.c +++ b/source3/smbd/blocking.c @@ -282,7 +282,14 @@ static void reply_lockingX_success(struct blocking_lock_record *blr) * that here and must set up the chain info manually. */ - chain_reply(req); + if (!srv_send_smb(req->sconn, + (char *)req->outbuf, + true, req->seqnum+1, + IS_CONN_ENCRYPTED(req->conn)||req->encrypted, + &req->pcd)) { + exit_server_cleanly("construct_reply: srv_send_smb failed."); + } + TALLOC_FREE(req->outbuf); } -- cgit