1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-29 13:49:30 +03:00

Ok, final move of this code :-). I think I've found the correct

place for it now where it will cause minimal disruption (only
call the extra message_dispatch just before reading the next
smb off the wire).
Jeremy.
(This used to be commit da2c19c481)
This commit is contained in:
Jeremy Allison
2008-03-31 17:01:27 -07:00
parent 6913f10134
commit 8b04a33500

View File

@ -873,15 +873,6 @@ static NTSTATUS receive_message_or_smb(TALLOC_CTX *mem_ctx, char **buffer,
return map_nt_error_from_unix(errno);
}
/*
* We've just woken up from a protentially long select sleep.
* Ensure we process local messages as we need to synchronously
* process any messages from other smbd's to avoid file rename race
* conditions. This call is cheap if there are no messages waiting.
* JRA.
*/
message_dispatch(smbd_messaging_context());
/* Did we timeout ? */
if (selrtn == 0) {
return NT_STATUS_IO_TIMEOUT;
@ -903,6 +894,15 @@ static NTSTATUS receive_message_or_smb(TALLOC_CTX *mem_ctx, char **buffer,
goto again;
}
/*
* We've just woken up from a protentially long select sleep.
* Ensure we process local messages as we need to synchronously
* process any messages from other smbd's to avoid file rename race
* conditions. This call is cheap if there are no messages waiting.
* JRA.
*/
message_dispatch(smbd_messaging_context());
status = receive_smb_talloc(mem_ctx, smbd_server_fd(), buffer, 0,
p_unread, p_encrypted, &len);