diff options
author | Jeremy Allison <jra@samba.org> | 2009-06-18 13:13:38 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2009-06-18 13:13:38 -0700 |
commit | 34267482d53cb559cc40c4ec2bee929c21b7886b (patch) | |
tree | dae973a4b11a0a7f3dd51e07a30f7a1065d7c6a6 /source3/smbd/smb2_create.c | |
parent | e7e98ba4807f3c4e0538b24ae0092f69383ae2d7 (diff) | |
download | samba-34267482d53cb559cc40c4ec2bee929c21b7886b.tar.gz samba-34267482d53cb559cc40c4ec2bee929c21b7886b.tar.bz2 samba-34267482d53cb559cc40c4ec2bee929c21b7886b.zip |
Replace the boilerplate calls to :
resolve_dfspath() -> unix_convert() -> get_full_smb_filename() -> check_name()
with a new function filename_convert().
This restores the check_name() calls that had gone missing
since the default create_file was changed. All "standard"
pathname processing now goes through filename_convert().
I'll take a look at the non-standard pathname processing
next. As a benefit, fixed a missing resolve_dfspath()
in the trans2 mkdir call.
Jeremy.
Diffstat (limited to 'source3/smbd/smb2_create.c')
-rw-r--r-- | source3/smbd/smb2_create.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/source3/smbd/smb2_create.c b/source3/smbd/smb2_create.c index 81879f1725..0e3cd164cd 100644 --- a/source3/smbd/smb2_create.c +++ b/source3/smbd/smb2_create.c @@ -315,23 +315,17 @@ static struct tevent_req *smbd_smb2_create_send(TALLOC_CTX *mem_ctx, in_create_options &= ~(0x10);/* NTCREATEX_OPTIONS_SYNC_ALERT */ in_create_options &= ~(0x20);/* NTCREATEX_OPTIONS_ASYNC_ALERT */ - status = resolve_dfspath(talloc_tos(), + status = filename_convert(talloc_tos(), smbreq->conn, smbreq->flags2 & FLAGS2_DFS_PATHNAMES, in_name, + &smb_fname, &fname); if (!NT_STATUS_IS_OK(status)) { tevent_req_nterror(req, status); goto out; } - status = unix_convert(talloc_tos(), smbreq->conn, fname, - &smb_fname, 0); - if (!NT_STATUS_IS_OK(status)) { - tevent_req_nterror(req, status); - goto out; - } - status = SMB_VFS_CREATE_FILE(smbreq->conn, smbreq, 0, /* root_dir_fid */ |