diff --git a/.gitignore b/.gitignore index 50fd3f9..a45c813 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ samba-3.6.0pre1.tar.gz /samba-3.6.0rc3.tar.gz /samba-3.6.0.tar.gz /samba-3.6.1.tar.gz +/samba-3.6.3.tar.gz diff --git a/samba-3.6.1-debug.patch b/samba-3.6.1-debug.patch deleted file mode 100644 index 5e86ede..0000000 --- a/samba-3.6.1-debug.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 5db0cd55d4db9cc71f32dc0097e2f014c22967bc -Author: Andrew Bartlett -AuthorDate: Mon May 9 17:43:45 2011 +0200 -Commit: Andrew Bartlett -CommitDate: Fri May 13 18:50:23 2011 +0200 - - lib/util/ Fix crash bug caused by gfree_debug() - - The issue is that we should reset the debug_num_classes to 0 when we - un-initialise the debug system. - - Andrew Bartlett ---- - lib/util/debug.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/lib/util/debug.c b/lib/util/debug.c -index b0a7882..c1b33de 100644 ---- a/lib/util/debug.c -+++ b/lib/util/debug.c -@@ -203,7 +203,7 @@ void gfree_debugsyms(void) - - TALLOC_FREE(format_bufr); - -- debug_num_classes = DBGC_MAX_FIXED; -+ debug_num_classes = 0; - - state.initialized = false; - } diff --git a/samba-3.6.1-winbind_upgrade_cache.patch b/samba-3.6.1-winbind_upgrade_cache.patch deleted file mode 100644 index eff8dcb..0000000 --- a/samba-3.6.1-winbind_upgrade_cache.patch +++ /dev/null @@ -1,148 +0,0 @@ -From a3f600521122d1a6d74d16668bd1ea4447c5c867 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Fri, 2 Dec 2011 16:19:34 -0800 -Subject: [PATCH] s3-winbind: Add an update function for winbind cache. - -With 57b3d32 we changed the format for the winbind cache database and -the code deleted the database for the upgrade. As this database holds -also cached credentials, removing it is not an option. We need to update -from version 1 to version 2. - -Autobuild-User: Jeremy Allison -Autobuild-Date: Sat Dec 3 03:47:58 CET 2011 on sn-devel-104 ---- - source3/winbindd/winbindd_cache.c | 96 ++++++++++++++++++++++++++++++++++++- - 1 files changed, 94 insertions(+), 2 deletions(-) - -Index: samba-3.6.1/source3/winbindd/winbindd_cache.c -=================================================================== ---- samba-3.6.1.orig/source3/winbindd/winbindd_cache.c -+++ samba-3.6.1/source3/winbindd/winbindd_cache.c -@@ -38,7 +38,10 @@ - #undef DBGC_CLASS - #define DBGC_CLASS DBGC_WINBIND - --#define WINBINDD_CACHE_VERSION 2 -+#define WINBINDD_CACHE_VER1 1 /* initial db version */ -+#define WINBINDD_CACHE_VER2 2 /* second version with timeouts for NDR entries */ -+ -+#define WINBINDD_CACHE_VERSION WINBINDD_CACHE_VER2 - #define WINBINDD_CACHE_VERSION_KEYSTR "WINBINDD_CACHE_VERSION" - - extern struct winbindd_methods reconnect_methods; -@@ -4081,6 +4084,70 @@ static void validate_panic(const char *c - exit(47); - } - -+static int wbcache_update_centry_fn(TDB_CONTEXT *tdb, -+ TDB_DATA key, -+ TDB_DATA data, -+ void *state) -+{ -+ uint64_t ctimeout; -+ TDB_DATA blob; -+ -+ if (is_non_centry_key(key)) { -+ return 0; -+ } -+ -+ if (data.dptr == NULL || data.dsize == 0) { -+ if (tdb_delete(tdb, key) < 0) { -+ DEBUG(0, ("tdb_delete for [%s] failed!\n", -+ key.dptr)); -+ return 1; -+ } -+ } -+ -+ /* add timeout to blob (uint64_t) */ -+ blob.dsize = data.dsize + 8; -+ -+ blob.dptr = SMB_XMALLOC_ARRAY(uint8_t, blob.dsize); -+ if (blob.dptr == NULL) { -+ return 1; -+ } -+ memset(blob.dptr, 0, blob.dsize); -+ -+ /* copy status and seqnum */ -+ memcpy(blob.dptr, data.dptr, 8); -+ -+ /* add timeout */ -+ ctimeout = lp_winbind_cache_time() + time(NULL); -+ SBVAL(blob.dptr, 8, ctimeout); -+ -+ /* copy the rest */ -+ memcpy(blob.dptr + 16, data.dptr + 8, data.dsize - 8); -+ -+ if (tdb_store(tdb, key, blob, TDB_REPLACE) < 0) { -+ DEBUG(0, ("tdb_store to update [%s] failed!\n", -+ key.dptr)); -+ SAFE_FREE(blob.dptr); -+ return 1; -+ } -+ -+ SAFE_FREE(blob.dptr); -+ return 0; -+} -+ -+static bool wbcache_upgrade_v1_to_v2(TDB_CONTEXT *tdb) -+{ -+ int rc; -+ -+ DEBUG(1, ("Upgrade to version 2 of the winbindd_cache.tdb\n")); -+ -+ rc = tdb_traverse(tdb, wbcache_update_centry_fn, NULL); -+ if (rc < 0) { -+ return false; -+ } -+ -+ return true; -+} -+ - /*********************************************************************** - Try and validate every entry in the winbindd cache. If we fail here, - delete the cache tdb and return non-zero. -@@ -4091,11 +4158,12 @@ int winbindd_validate_cache(void) - int ret = -1; - const char *tdb_path = cache_path("winbindd_cache.tdb"); - TDB_CONTEXT *tdb = NULL; -+ uint32_t vers_id; -+ bool ok; - - DEBUG(10, ("winbindd_validate_cache: replacing panic function\n")); - smb_panic_fn = validate_panic; - -- - tdb = tdb_open_log(tdb_path, - WINBINDD_CACHE_TDB_DEFAULT_HASH_SIZE, - TDB_INCOMPATIBLE_HASH | -@@ -4109,6 +4177,30 @@ int winbindd_validate_cache(void) - "error opening/initializing tdb\n")); - goto done; - } -+ -+ /* Version check and upgrade code. */ -+ if (!tdb_fetch_uint32(tdb, WINBINDD_CACHE_VERSION_KEYSTR, &vers_id)) { -+ DEBUG(10, ("Fresh database\n")); -+ tdb_store_uint32(tdb, WINBINDD_CACHE_VERSION_KEYSTR, WINBINDD_CACHE_VERSION); -+ vers_id = WINBINDD_CACHE_VERSION; -+ } -+ -+ if (vers_id != WINBINDD_CACHE_VERSION) { -+ if (vers_id == WINBINDD_CACHE_VER1) { -+ ok = wbcache_upgrade_v1_to_v2(tdb); -+ if (!ok) { -+ DEBUG(10, ("winbindd_validate_cache: upgrade to version 2 failed.\n")); -+ unlink(tdb_path); -+ goto done; -+ } -+ -+ tdb_store_uint32(tdb, -+ WINBINDD_CACHE_VERSION_KEYSTR, -+ WINBINDD_CACHE_VERSION); -+ vers_id = WINBINDD_CACHE_VER2; -+ } -+ } -+ - tdb_close(tdb); - - ret = tdb_validate_and_backup(tdb_path, cache_traverse_validate_fn); diff --git a/samba.spec b/samba.spec index 6bb631f..5b62cc6 100644 --- a/samba.spec +++ b/samba.spec @@ -1,5 +1,5 @@ -%define main_release 77 -%define samba_version 3.6.1 +%define main_release 78 +%define samba_version 3.6.3 %define tdb_version 1.2.9 %define talloc_version 2.0.5 #%define pre_release rc3 @@ -45,8 +45,6 @@ Patch104: samba-3.0.0rc3-nmbd-netbiosname.patch # The passwd part has been applied, but not the group part Patch107: samba-3.2.0pre1-grouppwd.patch Patch200: samba-3.2.5-inotify.patch -Patch300: samba-3.6.1-debug.patch -Patch301: samba-3.6.1-winbind_upgrade_cache.patch Requires(pre): samba-common = %{epoch}:%{samba_version}-%{release} Requires: pam >= 0:0.64 @@ -212,8 +210,6 @@ cp %{SOURCE11} packaging/Fedora/ #%patch104 -p1 -b .nmbd-netbiosname # FIXME: does not apply %patch107 -p1 -b .grouppwd %patch200 -p0 -b .inotify -%patch300 -p1 -b .debug -%patch301 -p1 -b .winbind mv %samba_source/VERSION %samba_source/VERSION.orig sed -e 's/SAMBA_VERSION_VENDOR_SUFFIX=$/&\"%{samba_release}\"/' < %samba_source/VERSION.orig > %samba_source/VERSION @@ -671,6 +667,9 @@ fi %{_datadir}/pixmaps/samba/logo-small.png %changelog +* Mon Jan 30 2012 Andreas Schneider - 1:3.6.3-78 +- Update to 3.6.3 + * Sat Jan 14 2012 Fedora Release Engineering - 1:3.6.1-77.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild diff --git a/sources b/sources index 7c0ba73..8f45366 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -5291717be0734e07dc07b6110e162e87 samba-3.6.1.tar.gz +98ac9db9f4b6ebfc3f013aa193ffb0d1 samba-3.6.3.tar.gz