summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2011-07-29 14:26:58 -0700
committerKarolin Seeger <kseeger@samba.org>2011-10-24 19:15:13 +0200
commitf9af343eb84a17cf2a3e31a084d4cdd6d196cb68 (patch)
tree9573e641a1b2b736a515c89d1063b7c1582b877f
parenta7cac5ff9fe4ef025d09f3f243d9a77afd4ddd27 (diff)
downloadsamba-f9af343eb84a17cf2a3e31a084d4cdd6d196cb68.tar.gz
samba-f9af343eb84a17cf2a3e31a084d4cdd6d196cb68.tar.xz
samba-f9af343eb84a17cf2a3e31a084d4cdd6d196cb68.zip
s3: We only need base_name in map_open_params_to_ntcreate
(cherry picked from commit 1fa4b369d2fabbf34cda576d91d8aa9baa4e8b68)
-rw-r--r--source3/include/proto.h2
-rw-r--r--source3/smbd/open.c8
-rw-r--r--source3/smbd/reply.c8
-rw-r--r--source3/smbd/trans2.c3
4 files changed, 12 insertions, 9 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h
index d560ee53684..af43b34071d 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -6628,7 +6628,7 @@ NTSTATUS fcb_or_dos_open(struct smb_request *req,
uint32 access_mask,
uint32 share_access,
uint32 create_options);
-bool map_open_params_to_ntcreate(const struct smb_filename *smb_fname,
+bool map_open_params_to_ntcreate(const char *smb_base_fname,
int deny_mode, int open_func,
uint32 *paccess_mask,
uint32 *pshare_mode,
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index f0b92713d77..38e4e16b1de 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -1226,7 +1226,7 @@ NTSTATUS fcb_or_dos_open(struct smb_request *req,
Open a file with a share mode - old openX method - map into NTCreate.
****************************************************************************/
-bool map_open_params_to_ntcreate(const struct smb_filename *smb_fname,
+bool map_open_params_to_ntcreate(const char *smb_base_fname,
int deny_mode, int open_func,
uint32 *paccess_mask,
uint32 *pshare_mode,
@@ -1240,7 +1240,7 @@ bool map_open_params_to_ntcreate(const struct smb_filename *smb_fname,
DEBUG(10,("map_open_params_to_ntcreate: fname = %s, deny_mode = 0x%x, "
"open_func = 0x%x\n",
- smb_fname_str_dbg(smb_fname), (unsigned int)deny_mode,
+ smb_base_fname, (unsigned int)deny_mode,
(unsigned int)open_func ));
/* Create the NT compatible access_mask. */
@@ -1315,7 +1315,7 @@ bool map_open_params_to_ntcreate(const struct smb_filename *smb_fname,
case DENY_DOS:
create_options |= NTCREATEX_OPTIONS_PRIVATE_DENY_DOS;
- if (is_executable(smb_fname->base_name)) {
+ if (is_executable(smb_base_fname)) {
share_mode = FILE_SHARE_READ|FILE_SHARE_WRITE;
} else {
if (GET_OPENX_MODE(deny_mode) == DOS_OPEN_RDONLY) {
@@ -1340,7 +1340,7 @@ bool map_open_params_to_ntcreate(const struct smb_filename *smb_fname,
DEBUG(10,("map_open_params_to_ntcreate: file %s, access_mask = 0x%x, "
"share_mode = 0x%x, create_disposition = 0x%x, "
"create_options = 0x%x\n",
- smb_fname_str_dbg(smb_fname),
+ smb_base_fname,
(unsigned int)access_mask,
(unsigned int)share_mode,
(unsigned int)create_disposition,
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index 3101e181fc8..43cdf96c4d7 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -1753,7 +1753,7 @@ void reply_open(struct smb_request *req)
goto out;
}
- if (!map_open_params_to_ntcreate(smb_fname, deny_mode,
+ if (!map_open_params_to_ntcreate(smb_fname->base_name, deny_mode,
OPENX_FILE_EXISTS_OPEN, &access_mask,
&share_mode, &create_disposition,
&create_options)) {
@@ -1926,7 +1926,8 @@ void reply_open_and_X(struct smb_request *req)
goto out;
}
- if (!map_open_params_to_ntcreate(smb_fname, deny_mode, smb_ofun,
+ if (!map_open_params_to_ntcreate(smb_fname->base_name, deny_mode,
+ smb_ofun,
&access_mask, &share_mode,
&create_disposition,
&create_options)) {
@@ -6428,7 +6429,8 @@ NTSTATUS copy_file(TALLOC_CTX *ctx,
if (!target_is_directory && count) {
new_create_disposition = FILE_OPEN;
} else {
- if (!map_open_params_to_ntcreate(smb_fname_dst_tmp, 0, ofun,
+ if (!map_open_params_to_ntcreate(smb_fname_dst_tmp->base_name,
+ 0, ofun,
NULL, NULL,
&new_create_disposition,
NULL)) {
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c
index 0d144213e03..88ac17d81ed 100644
--- a/source3/smbd/trans2.c
+++ b/source3/smbd/trans2.c
@@ -1068,7 +1068,8 @@ static void call_trans2open(connection_struct *conn,
goto out;
}
- if (!map_open_params_to_ntcreate(smb_fname, deny_mode, open_ofun,
+ if (!map_open_params_to_ntcreate(smb_fname->base_name, deny_mode,
+ open_ofun,
&access_mask, &share_mode,
&create_disposition,
&create_options)) {