summaryrefslogtreecommitdiff
path: root/source/smbd/oplock_irix.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2007-08-07 14:06:27 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:29:24 -0500
commitdd7e94258b0fc0157d890d71f05c6fe16b6a2ea9 (patch)
treec82200da066e237c79f2011d56aa11fdc486b345 /source/smbd/oplock_irix.c
parent607e7d2447bf19eea872a3a4d1ad499a53f0a935 (diff)
downloadsamba-dd7e94258b0fc0157d890d71f05c6fe16b6a2ea9.tar.gz
r24272: try to fix the build on irix...
metze
Diffstat (limited to 'source/smbd/oplock_irix.c')
-rw-r--r--source/smbd/oplock_irix.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/source/smbd/oplock_irix.c b/source/smbd/oplock_irix.c
index 6f2dceeddc0..75f807f86b5 100644
--- a/source/smbd/oplock_irix.c
+++ b/source/smbd/oplock_irix.c
@@ -96,6 +96,7 @@ static files_struct *irix_oplock_receive_message(fd_set *fds)
extern int smb_read_error;
oplock_stat_t os;
char dummy;
+ struct file_id fileid;
files_struct *fsp;
/* Ensure we only get one call per select fd set. */
@@ -137,11 +138,14 @@ static files_struct *irix_oplock_receive_message(fd_set *fds)
/*
* We only have device and inode info here - we have to guess that this
* is the first fsp open with this dev,ino pair.
+ *
+ * NOTE: this doesn't work if any VFS modules overloads
+ * the file_id_create() hook!
*/
- if ((fsp = file_find_di_first(
- file_id_create((SMB_DEV_T)os.os_dev,
- (SMB_INO_T)os.os_ino))) == NULL) {
+ fileid = file_id_create_dev((SMB_DEV_T)os.os_dev,
+ (SMB_INO_T)os.os_ino);
+ if ((fsp = file_find_di_first(fileid)) == NULL) {
DEBUG(0,("irix_oplock_receive_message: unable to find open "
"file with dev = %x, inode = %.0f\n",
(unsigned int)os.os_dev, (double)os.os_ino ));