From 6c148a1532f9b29b1ec6283a971caeb7de4ff24e Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Thu, 1 Nov 2012 14:41:56 +0100 Subject: [PATCH] s3:winbindd:cache: fix offline logons with cached credentials (bug #9321) The removal of consumption of the time field from the centry as "removal of unused variable" in 21528da9cd12a4f5c3792a482a5d18fe946a6f7a had the side effect of changing the offset for reading the following nt password hash, so the read password hash was wrong. This patch re-installs the consumption of the time, thereby fixing the bug without changing the disk format of the cache. Signed-off-by: Michael Adam --- source3/winbindd/winbindd_cache.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/source3/winbindd/winbindd_cache.c b/source3/winbindd/winbindd_cache.c index 2c9dd4a..c79d3b6 100644 --- a/source3/winbindd/winbindd_cache.c +++ b/source3/winbindd/winbindd_cache.c @@ -1329,6 +1329,13 @@ NTSTATUS wcache_get_creds(struct winbindd_domain *domain, return NT_STATUS_OBJECT_NAME_NOT_FOUND; } + /* + * We don't use the time element at this moment, + * but we have to consume it, so that we don't + * neet to change the disk format of the cache. + */ + (void)centry_time(centry); + /* In the salted case this isn't actually the nt_hash itself, but the MD5 of the salt + nt_hash. Let the caller sort this out. It can tell as we only return the cached_salt -- 1.7.9.5