summaryrefslogtreecommitdiff
path: root/source3/smbd/oplock.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2006-05-17 23:15:53 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:17:06 -0500
commitcc9ea93456e594432e203e6d2d2f4dbcaac9a3dd (patch)
tree7bf722a9a742cf7986f31f454bfd17a4a8415ec0 /source3/smbd/oplock.c
parentc91a675ac108f48046ce72287c6d70a1a54ef65f (diff)
downloadsamba-cc9ea93456e594432e203e6d2d2f4dbcaac9a3dd.tar.gz
samba-cc9ea93456e594432e203e6d2d2f4dbcaac9a3dd.tar.bz2
samba-cc9ea93456e594432e203e6d2d2f4dbcaac9a3dd.zip
r15668: DOS or FCB opens share one share mode entry from different
fsp pointers. Ensure we cope with this to pass Samba4 DENY tests (we used to pass these, there must have been a regression with newer code). We now pass them. Jeremy (This used to be commit fd6fa1d4eaf61783df74ee2da50d331477f06998)
Diffstat (limited to 'source3/smbd/oplock.c')
-rw-r--r--source3/smbd/oplock.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source3/smbd/oplock.c b/source3/smbd/oplock.c
index 8254e77e1b..42c64a2843 100644
--- a/source3/smbd/oplock.c
+++ b/source3/smbd/oplock.c
@@ -89,7 +89,7 @@ void process_kernel_oplocks(fd_set *pfds)
/* Put the kernel break info into the message. */
SDEV_T_VAL(msg,0,fsp->dev);
SINO_T_VAL(msg,8,fsp->inode);
- SIVAL(msg,16,fsp->file_id);
+ SIVAL(msg,16,fsp->fh->file_id);
/* Don't need to be root here as we're only ever
sending to ourselves. */
@@ -122,7 +122,7 @@ BOOL set_file_oplock(files_struct *fsp, int oplock_type)
DEBUG(5,("set_file_oplock: granted oplock on file %s, 0x%x/%.0f/%lu, "
"tv_sec = %x, tv_usec = %x\n",
fsp->fsp_name, (unsigned int)fsp->dev, (double)fsp->inode,
- fsp->file_id, (int)fsp->open_time.tv_sec,
+ fsp->fh->file_id, (int)fsp->open_time.tv_sec,
(int)fsp->open_time.tv_usec ));
return True;
@@ -333,7 +333,7 @@ static files_struct *initial_break_processing(SMB_DEV_T dev, SMB_INO_T inode, un
if( DEBUGLVL( 3 ) ) {
dbgtext( "initial_break_processing: file %s ", fsp->fsp_name );
dbgtext( "(dev = %x, inode = %.0f, file_id = %lu) has no oplock.\n",
- (unsigned int)dev, (double)inode, fsp->file_id );
+ (unsigned int)dev, (double)inode, fsp->fh->file_id );
dbgtext( "Allowing break to succeed regardless.\n" );
}
return NULL;