summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2012-09-13 15:45:49 +0200
committerVolker Lendecke <vl@samba.org>2012-09-29 08:42:49 -0700
commit590d3138be0293fbe9cb575261eb5319351d1e91 (patch)
tree53fb6bc36bfce3107d775ff7379c598f764371cf
parent8be0f4d30f84e8d9ba0a49ce71f331977f0fb8e7 (diff)
downloadsamba-590d3138be0293fbe9cb575261eb5319351d1e91.tar.gz
samba-590d3138be0293fbe9cb575261eb5319351d1e91.tar.bz2
samba-590d3138be0293fbe9cb575261eb5319351d1e91.zip
s3: Fix fcb_or_dos_open after logic change
With the new behaviour, we call fcb_or_dos_open after open_file(). It is open_file() that sets up the fsp so that fcb_or_dos_open can find it in the list of fsps. Avoid finding the fsp we are just setting up.
-rw-r--r--source3/smbd/open.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index 3f47657dbf..9c9eff5a46 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -1571,7 +1571,8 @@ static NTSTATUS fcb_or_dos_open(struct smb_request *req,
(unsigned int)fsp->fh->private_options,
(unsigned int)fsp->access_mask ));
- if (fsp->fh->fd != -1 &&
+ if (fsp != fsp_to_dup_into &&
+ fsp->fh->fd != -1 &&
fsp->vuid == vuid &&
fsp->file_pid == file_pid &&
(fsp->fh->private_options & (NTCREATEX_OPTIONS_PRIVATE_DENY_DOS |