summaryrefslogtreecommitdiff
path: root/source4/ntvfs/posix/pvfs_open.c
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2008-05-23 15:20:57 +0200
committerJelmer Vernooij <jelmer@samba.org>2008-05-23 15:20:57 +0200
commit1186579f94d81bc633b8f20e8ad8673313c8c39b (patch)
treefff2d454029e413304b5679b1c262e3e9e1b87bb /source4/ntvfs/posix/pvfs_open.c
parent0b62a0875f01370f9db10c45253966f4fed74272 (diff)
parent2f653e814a593e4581f28f8ed8158a84a591e9b4 (diff)
downloadsamba-1186579f94d81bc633b8f20e8ad8673313c8c39b.tar.gz
samba-1186579f94d81bc633b8f20e8ad8673313c8c39b.tar.bz2
samba-1186579f94d81bc633b8f20e8ad8673313c8c39b.zip
Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into docstrings2
(This used to be commit 7ca46322f5aa650cfd89c4f887393da67ae9dc7b)
Diffstat (limited to 'source4/ntvfs/posix/pvfs_open.c')
-rw-r--r--source4/ntvfs/posix/pvfs_open.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source4/ntvfs/posix/pvfs_open.c b/source4/ntvfs/posix/pvfs_open.c
index cc4f0add27..926c99d37e 100644
--- a/source4/ntvfs/posix/pvfs_open.c
+++ b/source4/ntvfs/posix/pvfs_open.c
@@ -182,12 +182,19 @@ static NTSTATUS pvfs_open_directory(struct pvfs_state *pvfs,
bool del_on_close;
uint32_t create_options;
uint32_t share_access;
+ bool forced;
create_options = io->generic.in.create_options;
share_access = io->generic.in.share_access;
+ forced = (io->generic.in.create_options & NTCREATEX_OPTIONS_DIRECTORY)?true:false;
+
if (name->stream_name) {
- return NT_STATUS_NOT_A_DIRECTORY;
+ if (forced) {
+ return NT_STATUS_NOT_A_DIRECTORY;
+ } else {
+ return NT_STATUS_FILE_IS_A_DIRECTORY;
+ }
}
/* if the client says it must be a directory, and it isn't,