open_flags |= O_DIRECTORY;
}
- full_fname = full_path_from_dirfsp_atname(talloc_tos(),
+ full_fname = full_path_from_dirfsp_atname(fsp,
dirfsp,
smb_fname);
if (full_fname == NULL) {
goto fail;
}
- fsp->fsp_name = talloc_move(fsp, &full_fname);
-
- if (is_ntfs_default_stream_smb_fname(fsp->fsp_name)) {
- fsp->fsp_name->stream_name = NULL;
+ if (is_ntfs_default_stream_smb_fname(full_fname)) {
+ full_fname->stream_name = NULL;
}
+ fsp->fsp_name = full_fname;
+
status = file_name_hash(fsp->conn,
smb_fname_str_dbg(fsp->fsp_name),
&fsp->name_hash);