]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s3: smbd: Add dst_dirfsp parameter to rename_internals_fsp().
authorJeremy Allison <jra@samba.org>
Thu, 28 Jul 2022 18:25:48 +0000 (11:25 -0700)
committerJeremy Allison <jra@samba.org>
Tue, 2 Aug 2022 19:49:32 +0000 (19:49 +0000)
Not yet used, but when this is fully plumbed though we can
look at optimizing and removing the code inside rename_internals_fsp()
that currently gets it's own dst_dirfsp.

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

index f0f2b4f6e6166480b0bf6b73e6394308f6b4ebfb..64dd0b7647bdc831e0d8cfd431714e10b8f7906d 100644 (file)
@@ -984,6 +984,7 @@ ssize_t sendfile_short_send(struct smbXsrv_connection *xconn,
                            size_t smb_maxcnt);
 NTSTATUS rename_internals_fsp(connection_struct *conn,
                        files_struct *fsp,
+                       struct files_struct *dst_dirfsp,
                        struct smb_filename *smb_fname_dst_in,
                        const char *dst_original_lcomp,
                        uint32_t attrs,
index d83d2473aae2215ea744b035d030682fe380cf9b..6f3a2c214f526d10d7239eb7296555c1b42f6b3b 100644 (file)
@@ -1272,6 +1272,7 @@ static NTSTATUS parent_dirname_compatible_open(connection_struct *conn,
 
 NTSTATUS rename_internals_fsp(connection_struct *conn,
                        files_struct *fsp,
+                       struct files_struct *dst_dirfsp,
                        struct smb_filename *smb_fname_dst_in,
                        const char *dst_original_lcomp,
                        uint32_t attrs,
@@ -1811,6 +1812,7 @@ NTSTATUS rename_internals(TALLOC_CTX *ctx,
 
        status = rename_internals_fsp(conn,
                                        fsp,
+                                       dst_dirfsp,
                                        smb_fname_dst,
                                        dst_original_lcomp,
                                        attrs,
index 118eb480911ed473b4e405bae34230435087c0dd..ee5704aeec665e83e78bc6d40344ea3355a873da 100644 (file)
@@ -5027,6 +5027,7 @@ static NTSTATUS smb2_file_rename_information(connection_struct *conn,
                  smb_fname_str_dbg(smb_fname_dst)));
        status = rename_internals_fsp(conn,
                                fsp,
+                               NULL, /* dst_dirfsp */
                                smb_fname_dst,
                                dst_original_lcomp,
                                (FILE_ATTRIBUTE_HIDDEN|FILE_ATTRIBUTE_SYSTEM),
@@ -5285,6 +5286,7 @@ static NTSTATUS smb_file_rename_information(connection_struct *conn,
                          smb_fname_str_dbg(smb_fname_dst)));
                status = rename_internals_fsp(conn,
                                        fsp,
+                                       NULL, /* dst_dirfsp */
                                        smb_fname_dst,
                                        dst_original_lcomp,
                                        0,