From: Stefan Metzmacher Date: Thu, 24 May 2018 15:55:02 +0000 (+0200) Subject: smbd: convert get_referred_path() to use create_conn_struct_tos_cwd() X-Git-Tag: tevent-0.9.37~357 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=73e5d47d32fa6af40667bb151b7c14411bcd987f;p=thirdparty%2Fsamba.git smbd: convert get_referred_path() to use create_conn_struct_tos_cwd() Signed-off-by: Stefan Metzmacher Reviewed-by: Jeremy Allison --- diff --git a/source3/smbd/msdfs.c b/source3/smbd/msdfs.c index cfa9e7602b7..fcf7b9c3dda 100644 --- a/source3/smbd/msdfs.c +++ b/source3/smbd/msdfs.c @@ -1083,13 +1083,13 @@ NTSTATUS get_referred_path(TALLOC_CTX *ctx, bool *self_referralp) { TALLOC_CTX *frame = talloc_stackframe(); - struct connection_struct *conn; + struct conn_struct_tos *c = NULL; + struct connection_struct *conn = NULL; char *targetpath = NULL; int snum; NTSTATUS status = NT_STATUS_NOT_FOUND; bool dummy; struct dfs_path *pdp = talloc_zero(frame, struct dfs_path); - struct smb_filename *oldcwd_fname = NULL; if (!pdp) { TALLOC_FREE(frame); @@ -1185,18 +1185,16 @@ NTSTATUS get_referred_path(TALLOC_CTX *ctx, return NT_STATUS_OK; } - status = create_conn_struct_cwd(frame, - server_event_context(), - server_messaging_context(), - &conn, - snum, - lp_path(frame, snum), - NULL, - &oldcwd_fname); + status = create_conn_struct_tos_cwd(server_messaging_context(), + snum, + lp_path(frame, snum), + NULL, + &c); if (!NT_STATUS_IS_OK(status)) { TALLOC_FREE(frame); return status; } + conn = c->conn; /* * TODO @@ -1258,9 +1256,6 @@ NTSTATUS get_referred_path(TALLOC_CTX *ctx, status = NT_STATUS_OK; err_exit: - vfs_ChDir(conn, oldcwd_fname); - SMB_VFS_DISCONNECT(conn); - conn_free(conn); TALLOC_FREE(frame); return status; }