]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
smbd: Move parent_pathref() up in close_remove_share_mode()
authorVolker Lendecke <vl@samba.org>
Thu, 2 Jan 2025 21:03:59 +0000 (22:03 +0100)
committerJeremy Allison <jra@samba.org>
Thu, 23 Jan 2025 23:08:38 +0000 (23:08 +0000)
Make it available for delete_all_streams()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/smbd/close.c

index 9ad8705388296fb3d3e3598bb75076253a3e4a30..3a5f49550fb5aa877c5be9dd23fd45a69a325e81 100644 (file)
@@ -555,6 +555,15 @@ static NTSTATUS close_remove_share_mode(files_struct *fsp,
                goto done;
        }
 
+       status = parent_pathref(talloc_tos(),
+                               conn->cwd_fsp,
+                               fsp->fsp_name,
+                               &parent_fname,
+                               &base_fname);
+       if (!NT_STATUS_IS_OK(status)) {
+               goto done;
+       }
+
        if ((conn->fs_capabilities & FILE_NAMED_STREAMS)
            && !fsp_is_alternate_stream(fsp)) {
 
@@ -582,15 +591,6 @@ static NTSTATUS close_remove_share_mode(files_struct *fsp,
                fsp->fsp_flags.kernel_share_modes_taken = false;
        }
 
-       status = parent_pathref(talloc_tos(),
-                               conn->cwd_fsp,
-                               fsp->fsp_name,
-                               &parent_fname,
-                               &base_fname);
-       if (!NT_STATUS_IS_OK(status)) {
-               goto done;
-       }
-
        ret = SMB_VFS_UNLINKAT(conn,
                               parent_fname->fsp,
                               base_fname,