summaryrefslogtreecommitdiff
path: root/source3/smbd/smb2_create.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2010-05-19 20:09:51 -0700
committerJeremy Allison <jra@samba.org>2010-05-19 20:09:51 -0700
commit1ad551ce3079f55d4b21a7853df15efaf5ae19cc (patch)
tree48cb01f96441123d40032d705cb1df3daca48ca8 /source3/smbd/smb2_create.c
parent7e96db4f50ed84b598deaf0647676c0e8487920e (diff)
downloadsamba-1ad551ce3079f55d4b21a7853df15efaf5ae19cc.tar.gz
samba-1ad551ce3079f55d4b21a7853df15efaf5ae19cc.tar.bz2
samba-1ad551ce3079f55d4b21a7853df15efaf5ae19cc.zip
After talking with Microsoft engineers, immediately replying
on compound requests on open being deferred for a sharing violation is a Windows bug. Re-enable the code that simply delays the compound response if the delay time is less than 2 seconds. Jeremy.
Diffstat (limited to 'source3/smbd/smb2_create.c')
-rw-r--r--source3/smbd/smb2_create.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/source3/smbd/smb2_create.c b/source3/smbd/smb2_create.c
index 65022d5c84..09bd827802 100644
--- a/source3/smbd/smb2_create.c
+++ b/source3/smbd/smb2_create.c
@@ -1159,7 +1159,8 @@ bool push_deferred_open_message_smb2(struct smbd_smb2_request *smb2req,
if (!state->private_data.data) {
return false;
}
-#if 0
+
+#if 1
/* Boo - turns out this isn't what W2K8R2
does. It actually sends the STATUS_PENDING
message followed by the STATUS_SHARING_VIOLATION
@@ -1167,6 +1168,10 @@ bool push_deferred_open_message_smb2(struct smbd_smb2_request *smb2req,
calls (even on directories) will potentially
fail in a chain.... ? And I've seen directory
opens as the start of a chain. JRA.
+
+ Update: 19th May 2010. Talking with Microsoft
+ engineers at the plugfest this is a bug in
+ Windows. Re-enable this code.
*/
/*
* More subtlety. To match W2K8R2 don't