summaryrefslogtreecommitdiffstats
path: root/source/smbd
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2005-04-01 00:54:55 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:56:26 -0500
commit75a0c11de4b7baf693e5c62e690e4bb26554f8e2 (patch)
tree04a6b51ae90a6e64677ffa5f6b009f81b65b2b16 /source/smbd
parentfb05ac4c03eec21f3f18668610022ebfa6d6bf4a (diff)
downloadsamba-75a0c11de4b7baf693e5c62e690e4bb26554f8e2.tar.gz
samba-75a0c11de4b7baf693e5c62e690e4bb26554f8e2.tar.xz
samba-75a0c11de4b7baf693e5c62e690e4bb26554f8e2.zip
r6163: Well I never, all this time the t2open code was incorrectly decting
oplock requests and no one noticed. Hmmm. Don't think this is a commonly used codepath :-). Jeremy.
Diffstat (limited to 'source/smbd')
-rw-r--r--source/smbd/trans2.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/source/smbd/trans2.c b/source/smbd/trans2.c
index a68b165cb00..e53b47c1f4c 100644
--- a/source/smbd/trans2.c
+++ b/source/smbd/trans2.c
@@ -744,7 +744,11 @@ static int call_trans2open(connection_struct *conn, char *inbuf, char *outbuf, i
open_mode = SVAL(params, 2);
open_attr = SVAL(params,6);
- oplock_request = (((SVAL(params,0)|(1<<1))>>1) | ((SVAL(params,0)|(1<<2))>>1));
+ oplock_request = (SVAL(params,0) & REQUEST_OPLOCK) ? EXCLUSIVE_OPLOCK : 0;
+ if (oplock_request) {
+ oplock_request |= (SVAL(params,0) & REQUEST_BATCH_OPLOCK) ? BATCH_OPLOCK : 0;
+ }
+
#if 0
return_additional_info = BITSETW(params,0);
open_sattr = SVAL(params, 4);