From bd20f12ae607751e7c0ceed197c8a290876a5d93 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 27 Jul 2010 01:54:01 -0700 Subject: [PATCH] Fix bug 7590 - offline login fails because winbind deletes cache on every startup. Sync lib/tdb_validate.c with the change in current master. Change tdb_validate_open() to always use O_RDWR instead of O_RDONLY, as (from the bug report): "db_check() will always return failure for a read-only database. Silently, without any log output, when _tdb_lockall() fails." Jeremy. (cherry picked from commit 39cb903463d8a3fcabd9e148112bf5cf81744130) (cherry picked from commit 9812b1a601c9ccc2a3e6c06b98c32730a32c787a) --- source3/lib/tdb_validate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source3/lib/tdb_validate.c b/source3/lib/tdb_validate.c index 092546e3eb5..5f9e155ea14 100644 --- a/source3/lib/tdb_validate.c +++ b/source3/lib/tdb_validate.c @@ -181,7 +181,7 @@ int tdb_validate_open(const char *tdb_path, tdb_validate_data_func validate_fn) DEBUG(5, ("tdb_validate_open called for tdb '%s'\n", tdb_path)); - tdb = tdb_open_log(tdb_path, 0, TDB_DEFAULT, O_RDONLY, 0); + tdb = tdb_open_log(tdb_path, 0, TDB_DEFAULT, O_RDWR, 0); if (!tdb) { DEBUG(1, ("Error opening tdb %s\n", tdb_path)); return ret; -- 2.11.4.GIT