diff options
author | Jeremy Allison <jra@samba.org> | 2010-05-19 19:28:26 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2010-05-19 19:28:26 -0700 |
commit | af445935555dc3fab3cefc52b375dd18b8d9bb4c (patch) | |
tree | e800d21f0a757a30836c337bd17e1027089b796d /source3/smbd/smb2_break.c | |
parent | ae02691200a2fd20b0c227a875a0997b50fc6612 (diff) | |
download | samba-af445935555dc3fab3cefc52b375dd18b8d9bb4c.tar.gz |
(Finally) fix bug #7158 - SMB2 connection resets during IOZone tests from 64-bit Vista client
It turns out that the persistent handles are used by the Microsoft
redirector to index files on oplock break requests. So even if we
don't do durable handles (yet) we must set the persistent handle
on create. For now just use the same handle value as we use for
volatile.
Jeremy.
Diffstat (limited to 'source3/smbd/smb2_break.c')
-rw-r--r-- | source3/smbd/smb2_break.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/source3/smbd/smb2_break.c b/source3/smbd/smb2_break.c index a214da0f26..79b06b1876 100644 --- a/source3/smbd/smb2_break.c +++ b/source3/smbd/smb2_break.c @@ -70,7 +70,7 @@ NTSTATUS smbd_smb2_request_process_break(struct smbd_smb2_request *req) if (req->compat_chain_fsp) { /* skip check */ - } else if (in_file_id_persistent != 0) { + } else if (in_file_id_persistent != in_file_id_volatile) { return smbd_smb2_request_error(req, NT_STATUS_FILE_CLOSED); } @@ -271,6 +271,7 @@ void send_break_message_smb2(files_struct *fsp, int level) status = smbd_smb2_send_oplock_break(fsp->conn->sconn, (uint64_t)fsp->fnum, + (uint64_t)fsp->fnum, smb2_oplock_level); if (!NT_STATUS_IS_OK(status)) { smbd_server_connection_terminate(fsp->conn->sconn, |