From b7ac9486452eb3f0d352b60def097e6aedccaee6 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 11 May 2021 11:34:40 +0200 Subject: [PATCH] s3:winbind: Code cleanup for initialize_winbindd_cache() Signed-off-by: Andreas Schneider Reviewed-by: Jeremy Allison --- source3/winbindd/winbindd_cache.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/source3/winbindd/winbindd_cache.c b/source3/winbindd/winbindd_cache.c index 6c467daaa82..01bf94855c0 100644 --- a/source3/winbindd/winbindd_cache.c +++ b/source3/winbindd/winbindd_cache.c @@ -3057,8 +3057,9 @@ static bool init_wcache(void) bool initialize_winbindd_cache(void) { - bool cache_bad = true; - uint32_t vers; + bool cache_bad = false; + uint32_t vers = 0; + bool ok; if (!init_wcache()) { DEBUG(0,("initialize_winbindd_cache: init_wcache failed.\n")); @@ -3066,9 +3067,16 @@ bool initialize_winbindd_cache(void) } /* Check version number. */ - if (tdb_fetch_uint32(wcache->tdb, WINBINDD_CACHE_VERSION_KEYSTR, &vers) && - vers == WINBINDD_CACHE_VERSION) { - cache_bad = false; + ok = tdb_fetch_uint32(wcache->tdb, WINBINDD_CACHE_VERSION_KEYSTR, &vers); + if (!ok) { + DBG_DEBUG("Failed to get cache version\n"); + cache_bad = true; + } + if (vers != WINBINDD_CACHE_VERSION) { + DBG_DEBUG("Invalid cache version %u != %u\n", + vers, + WINBINDD_CACHE_VERSION); + cache_bad = true; } if (cache_bad) { -- 2.47.3