diff options
Diffstat (limited to 'source3/smbd/nttrans.c')
-rw-r--r-- | source3/smbd/nttrans.c | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/source3/smbd/nttrans.c b/source3/smbd/nttrans.c index 6ef4c5a6589..8decb831ae0 100644 --- a/source3/smbd/nttrans.c +++ b/source3/smbd/nttrans.c @@ -1835,9 +1835,28 @@ static void call_nt_transact_rename(connection_struct *conn, if (!check_fsp(conn, req, fsp)) { return; } - srvstr_get_path_wcard(ctx, params, req->flags2, &new_name, params+4, - parameter_count - 4, - STR_TERMINATE, &status, &dest_has_wcard); + if (lp_posix_pathnames()) { + srvstr_get_path_wcard_posix(ctx, + params, + req->flags2, + &new_name, + params+4, + parameter_count - 4, + STR_TERMINATE, + &status, + &dest_has_wcard); + } else { + srvstr_get_path_wcard(ctx, + params, + req->flags2, + &new_name, + params+4, + parameter_count - 4, + STR_TERMINATE, + &status, + &dest_has_wcard); + } + if (!NT_STATUS_IS_OK(status)) { reply_nterror(req, status); return; |