summaryrefslogtreecommitdiff
path: root/source4/smb_server/smb
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-03-05 14:57:50 +1100
committerAndrew Tridgell <tridge@samba.org>2010-03-05 16:12:05 +1100
commit80a37beb53519fdbb907a01f29ef150bafdd74e7 (patch)
tree62612e7f4f2de50e537f88f4ded9227f31d875cb /source4/smb_server/smb
parentf01f124969b3e75accfc82fb85487fdab2046e82 (diff)
downloadsamba-80a37beb53519fdbb907a01f29ef150bafdd74e7.tar.gz
samba-80a37beb53519fdbb907a01f29ef150bafdd74e7.tar.bz2
samba-80a37beb53519fdbb907a01f29ef150bafdd74e7.zip
s4-pvfs: move the private ntcreatex flags to private_flags
Re-using two of the create_options bits was bound to eventually cause problems, and indeed, Windows7 now uses one of those bits when opening text files. Fixes bug 7189
Diffstat (limited to 'source4/smb_server/smb')
-rw-r--r--source4/smb_server/smb/nttrans.c1
-rw-r--r--source4/smb_server/smb/reply.c7
2 files changed, 2 insertions, 6 deletions
diff --git a/source4/smb_server/smb/nttrans.c b/source4/smb_server/smb/nttrans.c
index 74c98ea738..5fba041e1e 100644
--- a/source4/smb_server/smb/nttrans.c
+++ b/source4/smb_server/smb/nttrans.c
@@ -134,6 +134,7 @@ static NTSTATUS nttrans_create(struct smbsrv_request *req,
io->ntcreatex.in.sec_desc = NULL;
io->ntcreatex.in.ea_list = NULL;
io->ntcreatex.in.query_maximal_access = false;
+ io->ntcreatex.in.private_flags = 0;
req_pull_string(&req->in.bufinfo, &io->ntcreatex.in.fname,
params + 53,
diff --git a/source4/smb_server/smb/reply.c b/source4/smb_server/smb/reply.c
index ef7cbbf936..7d33a37b4d 100644
--- a/source4/smb_server/smb/reply.c
+++ b/source4/smb_server/smb/reply.c
@@ -2228,12 +2228,7 @@ void smbsrv_reply_ntcreate_and_X(struct smbsrv_request *req)
io->ntcreatex.in.ea_list = NULL;
io->ntcreatex.in.sec_desc = NULL;
io->ntcreatex.in.query_maximal_access = false;
-
- /* we use a couple of bits of the create options internally */
- if (io->ntcreatex.in.create_options & NTCREATEX_OPTIONS_PRIVATE_MASK) {
- smbsrv_send_error(req, NT_STATUS_INVALID_PARAMETER);
- return;
- }
+ io->ntcreatex.in.private_flags = 0;
/* we need a neater way to handle this alignment */
if ((req->flags2 & FLAGS2_UNICODE_STRINGS) &&