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_khome...@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 <j...@samba.org> Autobuild-Date: Wed Oct 12 21:07:27 CEST 2011 on sn-devel-104 commit 1e4761d05978b7a495d121acc1deaa7049f3911c Author: Jeremy Allison <j...@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 <mi...@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