The branch, master has been updated
       via  72b4fe93f15 s3: smbd: Ensure all returns from OpenDir() correctly 
set errno.
      from  649f544ab2c s3: VFS: streams_depot: Allow "streams directory" 
outside of share path to work again.

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 72b4fe93f15e414ca3e7d7f0e77a5f0aae90556a
Author: Jeremy Allison <j...@samba.org>
Date:   Thu Aug 19 15:43:52 2021 -0700

    s3: smbd: Ensure all returns from OpenDir() correctly set errno.
    
    Complex code paths inside open_internal_dirfsp() can return an
    NTSTATUS, but trample on the matching errno. We need to make
    sure if open_internal_dirfsp() fails, errno matches the NTSTATUS
    return.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=14805
    
    Signed-off-by: Jeremy Allison <j...@samba.org>
    Reviewed-by: Noel Power <npo...@samba.org>
    
    Autobuild-User(master): Noel Power <npo...@samba.org>
    Autobuild-Date(master): Fri Aug 20 09:56:49 UTC 2021 on sn-devel-184

-----------------------------------------------------------------------

Summary of changes:
 source3/smbd/dir.c | 2 ++
 1 file changed, 2 insertions(+)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/dir.c b/source3/smbd/dir.c
index 4c807c3f85c..174f07b1159 100644
--- a/source3/smbd/dir.c
+++ b/source3/smbd/dir.c
@@ -1474,6 +1474,8 @@ struct smb_Dir *OpenDir(TALLOC_CTX *mem_ctx,
                                      O_RDONLY,
                                      &fsp);
        if (!NT_STATUS_IS_OK(status)) {
+               /* Ensure we return the actual error from status in errno. */
+               errno = map_errno_from_nt_status(status);
                return NULL;
        }
 


-- 
Samba Shared Repository

Reply via email to