[SCM] Samba Shared Repository - branch master updated

Jeremy Allison jra at samba.org
Wed Oct 12 13:08:01 MDT 2011


The branch, master has been updated
       via  bd260f0 Fix bug #8515 - Empty CIFS share can be blocked for other clients by deleting it via empty path (DELETE_PENDING until the last client)
       via  1e4761d Fix bug #8521 - winbindd cache timeout expiry test was reversed
      from  995d156 s3-group-mapping: Remove fstrings from GROUP_MAP.

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


- Log -----------------------------------------------------------------
commit bd260f03ab492d03c2890db47dc6fb4f1b824a1a
Author: Volodymyr Khomenko <Volodymyr_Khomenko at dell.com>
Date:   Wed Oct 12 09:57:57 2011 -0700

    Fix bug #8515 - Empty CIFS share can be blocked for other clients by deleting it via empty path (DELETE_PENDING until the last client)
    
    Disallow "." in can_set_delete_on_close().
    
    Autobuild-User: Jeremy Allison <jra at samba.org>
    Autobuild-Date: Wed Oct 12 21:07:27 CEST 2011 on sn-devel-104

commit 1e4761d05978b7a495d121acc1deaa7049f3911c
Author: Jeremy Allison <jra at samba.org>
Date:   Wed Oct 12 09:43:18 2011 -0700

    Fix bug #8521 - winbindd cache timeout expiry test was reversed
    
    Found and fix reported by Micha Lenk <micha at lenk.info>. Thanks !

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

Summary of changes:
 source3/locking/locking.c         |    8 ++++++++
 source3/winbindd/winbindd_cache.c |    2 +-
 2 files changed, 9 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/locking/locking.c b/source3/locking/locking.c
index 9041730..38d8c09 100644
--- a/source3/locking/locking.c
+++ b/source3/locking/locking.c
@@ -1473,6 +1473,14 @@ NTSTATUS can_set_delete_on_close(files_struct *fsp, uint32 dosmode)
 	/* Don't allow delete on close for non-empty directories. */
 	if (fsp->is_directory) {
 		SMB_ASSERT(!is_ntfs_stream_smb_fname(fsp->fsp_name));
+
+		/* Or the root of a share. */
+		if (ISDOT(fsp->fsp_name->base_name)) {
+			DEBUG(10,("can_set_delete_on_close: can't set delete on "
+				  "close for the root of a share.\n"));
+			return NT_STATUS_ACCESS_DENIED;
+		}
+
 		return can_delete_directory(fsp->conn,
 					    fsp->fsp_name->base_name);
 	}
diff --git a/source3/winbindd/winbindd_cache.c b/source3/winbindd/winbindd_cache.c
index 2bb4df9..620b858 100644
--- a/source3/winbindd/winbindd_cache.c
+++ b/source3/winbindd/winbindd_cache.c
@@ -4807,7 +4807,7 @@ bool wcache_fetch_ndr(TALLOC_CTX *mem_ctx, struct winbindd_domain *domain,
 			goto fail;
 		}
 		entry_timeout = BVAL(data.dptr, 4);
-		if (entry_timeout > time(NULL)) {
+		if (time(NULL) > entry_timeout) {
 			DEBUG(10, ("Entry has timed out\n"));
 			goto fail;
 		}


-- 
Samba Shared Repository


More information about the samba-cvs mailing list