summaryrefslogtreecommitdiff
path: root/source3/smbd/nttrans.c
diff options
context:
space:
mode:
authorTim Prouty <tprouty@samba.org>2009-07-08 12:24:03 -0700
committerTim Prouty <tprouty@samba.org>2009-07-08 21:36:03 -0700
commit1a1d10d22f7a2eebd22e76614c3c74b4d49e5c33 (patch)
treedcf066a27e61aa592ef9b9b2e53fc033ce41ab39 /source3/smbd/nttrans.c
parent69c8795b672054cb6b5a85cc5f8961099425bd7a (diff)
downloadsamba-1a1d10d22f7a2eebd22e76614c3c74b4d49e5c33.tar.gz
samba-1a1d10d22f7a2eebd22e76614c3c74b4d49e5c33.tar.bz2
samba-1a1d10d22f7a2eebd22e76614c3c74b4d49e5c33.zip
s3: Plumb smb_filename through dos_mode() and related funtions
Diffstat (limited to 'source3/smbd/nttrans.c')
-rw-r--r--source3/smbd/nttrans.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/source3/smbd/nttrans.c b/source3/smbd/nttrans.c
index 5d676470c8..e28e6f3a84 100644
--- a/source3/smbd/nttrans.c
+++ b/source3/smbd/nttrans.c
@@ -620,7 +620,7 @@ void reply_ntcreate_and_X(struct smb_request *req)
}
file_len = smb_fname->st.st_ex_size;
- fattr = dos_mode(conn,fsp->fsp_name,&smb_fname->st);
+ fattr = dos_mode(conn, smb_fname);
if (fattr == 0) {
fattr = FILE_ATTRIBUTE_NORMAL;
}
@@ -704,7 +704,7 @@ void reply_ntcreate_and_X(struct smb_request *req)
}
DEBUG(5,("reply_ntcreate_and_X: fnum = %d, open name = %s\n",
- fsp->fnum, fsp->fsp_name));
+ fsp->fnum, smb_fname_str_dbg(smb_fname)));
chain_reply(req);
out:
@@ -1111,7 +1111,7 @@ static void call_nt_transact_create(connection_struct *conn,
}
file_len = smb_fname->st.st_ex_size;
- fattr = dos_mode(conn, fsp->fsp_name, &smb_fname->st);
+ fattr = dos_mode(conn, smb_fname);
if (fattr == 0) {
fattr = FILE_ATTRIBUTE_NORMAL;
}
@@ -1194,7 +1194,8 @@ static void call_nt_transact_create(connection_struct *conn,
SIVAL(p,0,perms);
}
- DEBUG(5,("call_nt_transact_create: open name = %s\n", fsp->fsp_name));
+ DEBUG(5,("call_nt_transact_create: open name = %s\n",
+ smb_fname_str_dbg(smb_fname)));
/* Send the required number of replies */
send_nt_replies(conn, req, NT_STATUS_OK, params, param_len, *ppdata, 0);
@@ -1236,7 +1237,6 @@ static NTSTATUS copy_internals(TALLOC_CTX *ctx,
struct smb_filename *smb_fname_dst,
uint32 attrs)
{
- char *oldname = NULL;
files_struct *fsp1,*fsp2;
uint32 fattr;
int info;
@@ -1255,13 +1255,8 @@ static NTSTATUS copy_internals(TALLOC_CTX *ctx,
goto out;
}
- status = get_full_smb_filename(ctx, smb_fname_src, &oldname);
- if (!NT_STATUS_IS_OK(status)) {
- goto out;
- }
-
/* Ensure attributes match. */
- fattr = dos_mode(conn, oldname, &smb_fname_src->st);
+ fattr = dos_mode(conn, smb_fname_src);
if ((fattr & ~attrs) & (aHIDDEN | aSYSTEM)) {
status = NT_STATUS_NO_SUCH_FILE;
goto out;
@@ -1367,7 +1362,6 @@ static NTSTATUS copy_internals(TALLOC_CTX *ctx,
smb_fname_str_dbg(smb_fname_dst)));
}
- TALLOC_FREE(oldname);
return status;
}