summaryrefslogtreecommitdiff
path: root/source3/smbd/reply.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/smbd/reply.c')
-rw-r--r--source3/smbd/reply.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index b1a4e31951..7147fbe1f2 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -1694,6 +1694,7 @@ void reply_open(struct smb_request *req)
uint32 share_mode;
uint32 create_disposition;
uint32 create_options = 0;
+ uint32_t private_flags = 0;
NTSTATUS status;
bool ask_sharemode = lp_parm_bool(SNUM(conn), "smbd", "search ask sharemode", true);
TALLOC_CTX *ctx = talloc_tos();
@@ -1737,7 +1738,7 @@ void reply_open(struct smb_request *req)
if (!map_open_params_to_ntcreate(smb_fname, deny_mode,
OPENX_FILE_EXISTS_OPEN, &access_mask,
&share_mode, &create_disposition,
- &create_options)) {
+ &create_options, &private_flags)) {
reply_force_doserror(req, ERRDOS, ERRbadaccess);
goto out;
}
@@ -1754,6 +1755,7 @@ void reply_open(struct smb_request *req)
dos_attr, /* file_attributes */
oplock_request, /* oplock_request */
0, /* allocation_size */
+ private_flags,
NULL, /* sd */
NULL, /* ea_list */
&fsp, /* result */
@@ -1853,6 +1855,7 @@ void reply_open_and_X(struct smb_request *req)
uint32 share_mode;
uint32 create_disposition;
uint32 create_options = 0;
+ uint32_t private_flags = 0;
TALLOC_CTX *ctx = talloc_tos();
START_PROFILE(SMBopenX);
@@ -1910,7 +1913,8 @@ void reply_open_and_X(struct smb_request *req)
if (!map_open_params_to_ntcreate(smb_fname, deny_mode, smb_ofun,
&access_mask, &share_mode,
&create_disposition,
- &create_options)) {
+ &create_options,
+ &private_flags)) {
reply_force_doserror(req, ERRDOS, ERRbadaccess);
goto out;
}
@@ -1927,6 +1931,7 @@ void reply_open_and_X(struct smb_request *req)
smb_attr, /* file_attributes */
oplock_request, /* oplock_request */
0, /* allocation_size */
+ private_flags,
NULL, /* sd */
NULL, /* ea_list */
&fsp, /* result */
@@ -2144,6 +2149,7 @@ void reply_mknew(struct smb_request *req)
fattr, /* file_attributes */
oplock_request, /* oplock_request */
0, /* allocation_size */
+ 0, /* private_flags */
NULL, /* sd */
NULL, /* ea_list */
&fsp, /* result */
@@ -2272,6 +2278,7 @@ void reply_ctemp(struct smb_request *req)
fattr, /* file_attributes */
oplock_request, /* oplock_request */
0, /* allocation_size */
+ 0, /* private_flags */
NULL, /* sd */
NULL, /* ea_list */
&fsp, /* result */
@@ -2472,6 +2479,7 @@ static NTSTATUS do_unlink(connection_struct *conn,
FILE_ATTRIBUTE_NORMAL,
0, /* oplock_request */
0, /* allocation_size */
+ 0, /* private_flags */
NULL, /* sd */
NULL, /* ea_list */
&fsp, /* result */
@@ -5341,6 +5349,7 @@ void reply_rmdir(struct smb_request *req)
FILE_ATTRIBUTE_DIRECTORY, /* file_attributes */
0, /* oplock_request */
0, /* allocation_size */
+ 0, /* private_flags */
NULL, /* sd */
NULL, /* ea_list */
&fsp, /* result */
@@ -6038,6 +6047,7 @@ NTSTATUS rename_internals(TALLOC_CTX *ctx,
posix_pathnames ? FILE_FLAG_POSIX_SEMANTICS|0777 : 0, /* file_attributes */
0, /* oplock_request */
0, /* allocation_size */
+ 0, /* private_flags */
NULL, /* sd */
NULL, /* ea_list */
&fsp, /* result */
@@ -6176,6 +6186,7 @@ NTSTATUS rename_internals(TALLOC_CTX *ctx,
posix_pathnames ? FILE_FLAG_POSIX_SEMANTICS|0777 : 0, /* file_attributes */
0, /* oplock_request */
0, /* allocation_size */
+ 0, /* private_flags */
NULL, /* sd */
NULL, /* ea_list */
&fsp, /* result */
@@ -6396,6 +6407,7 @@ NTSTATUS copy_file(TALLOC_CTX *ctx,
if (!map_open_params_to_ntcreate(smb_fname_dst_tmp, 0, ofun,
NULL, NULL,
&new_create_disposition,
+ NULL,
NULL)) {
status = NT_STATUS_INVALID_PARAMETER;
goto out;
@@ -6415,6 +6427,7 @@ NTSTATUS copy_file(TALLOC_CTX *ctx,
FILE_ATTRIBUTE_NORMAL, /* file_attributes */
INTERNAL_OPEN_ONLY, /* oplock_request */
0, /* allocation_size */
+ 0, /* private_flags */
NULL, /* sd */
NULL, /* ea_list */
&fsp1, /* result */
@@ -6443,6 +6456,7 @@ NTSTATUS copy_file(TALLOC_CTX *ctx,
dosattrs, /* file_attributes */
INTERNAL_OPEN_ONLY, /* oplock_request */
0, /* allocation_size */
+ 0, /* private_flags */
NULL, /* sd */
NULL, /* ea_list */
&fsp2, /* result */