diff options
author | Jeremy Allison <jra@samba.org> | 2005-04-01 00:54:55 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:56:26 -0500 |
commit | 75a0c11de4b7baf693e5c62e690e4bb26554f8e2 (patch) | |
tree | 04a6b51ae90a6e64677ffa5f6b009f81b65b2b16 /source/smbd/trans2.c | |
parent | fb05ac4c03eec21f3f18668610022ebfa6d6bf4a (diff) | |
download | samba-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/trans2.c')
-rw-r--r-- | source/smbd/trans2.c | 6 |
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); |