From 079d95da0bb190c9b26fde46aef53eacd3eff72e Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Fri, 16 Dec 2022 16:35:00 +0100 Subject: [PATCH] smbd: Make filename_convert_dirfsp_nosymlink() public To be used directly in smb2_create.c Signed-off-by: Volker Lendecke Reviewed-by: Ralph Boehme --- source3/include/proto.h | 12 ++++++++++++ source3/smbd/filename.c | 22 +++++++++++----------- 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/source3/include/proto.h b/source3/include/proto.h index ee28afa6a56..8b446fa9f9e 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -713,6 +713,18 @@ NTSTATUS safe_symlink_target_path(TALLOC_CTX *mem_ctx, const char *target, size_t unparsed, char **_relative); +struct reparse_data_buffer; +NTSTATUS +filename_convert_dirfsp_nosymlink(TALLOC_CTX *mem_ctx, + connection_struct *conn, + struct files_struct *basedir, + const char *name_in, + uint32_t ucf_flags, + NTTIME twrp, + struct files_struct **_dirfsp, + struct smb_filename **_smb_fname, + struct smb_filename **_smb_fname_rel, + struct reparse_data_buffer **_symlink_err); NTSTATUS filename_convert_dirfsp_rel(TALLOC_CTX *mem_ctx, connection_struct *conn, struct files_struct *basedir, diff --git a/source3/smbd/filename.c b/source3/smbd/filename.c index b4d58f5ba79..ace39003021 100644 --- a/source3/smbd/filename.c +++ b/source3/smbd/filename.c @@ -666,17 +666,17 @@ fail: * Split up name_in as sent by the client into a directory pathref fsp * and a relative smb_filename. */ -static NTSTATUS filename_convert_dirfsp_nosymlink( - TALLOC_CTX *mem_ctx, - connection_struct *conn, - struct files_struct *basedir, - const char *name_in, - uint32_t ucf_flags, - NTTIME twrp, - struct files_struct **_dirfsp, - struct smb_filename **_smb_fname, - struct smb_filename **_smb_fname_rel, - struct reparse_data_buffer **_symlink_err) +NTSTATUS +filename_convert_dirfsp_nosymlink(TALLOC_CTX *mem_ctx, + connection_struct *conn, + struct files_struct *basedir, + const char *name_in, + uint32_t ucf_flags, + NTTIME twrp, + struct files_struct **_dirfsp, + struct smb_filename **_smb_fname, + struct smb_filename **_smb_fname_rel, + struct reparse_data_buffer **_symlink_err) { struct smb_filename *smb_dirname = NULL; struct smb_filename *smb_fname_rel = NULL; -- 2.47.3