diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2011-09-14 07:42:13 +0930 |
---|---|---|
committer | Rusty Russell <rusty@rustcorp.com.au> | 2011-09-14 07:42:13 +0930 |
commit | 997592431f3e62cacef13d9b75a12a3d8058e7b7 (patch) | |
tree | a0941636f9ad0c72fc5a774b7031bbb8a3f3e4fd /lib/tdb2/tdb1_traverse.c | |
parent | f7e84f8ef86c3323f70e2fa30fd8a49cab1febf9 (diff) | |
download | samba-997592431f3e62cacef13d9b75a12a3d8058e7b7.tar.gz samba-997592431f3e62cacef13d9b75a12a3d8058e7b7.tar.bz2 samba-997592431f3e62cacef13d9b75a12a3d8058e7b7.zip |
tdb2: use tdb->flags & TDB_RDONLY instead of tdb->read_only for TDB1 code.
There's also a semantic change here: for tdb1, being read-only meant no
locking, and it was an error to try to lock a r/o database. For TDB2, you'd
need to specify TDB_NOLOCK, which suppresses locking silently.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 4dc29a338fadeac805b369b4b0851c02f1b152c7)
Diffstat (limited to 'lib/tdb2/tdb1_traverse.c')
-rw-r--r-- | lib/tdb2/tdb1_traverse.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/tdb2/tdb1_traverse.c b/lib/tdb2/tdb1_traverse.c index 8b09e3874a..fe9cd59477 100644 --- a/lib/tdb2/tdb1_traverse.c +++ b/lib/tdb2/tdb1_traverse.c @@ -119,7 +119,7 @@ static tdb1_off_t tdb1_next_lock(struct tdb1_context *tdb, struct tdb1_traverse_ /* Try to clean dead ones from old traverses */ current = tlock->off; tlock->off = rec->next; - if (!(tdb->read_only || tdb->traverse_read) && + if (!((tdb->flags & TDB_RDONLY) || tdb->traverse_read) && tdb1_do_delete(tdb, current, rec) != 0) goto fail; } @@ -249,7 +249,7 @@ int tdb1_traverse(struct tdb1_context *tdb, struct tdb1_traverse_lock tl = { NULL, 0, 0, F_WRLCK }; int ret; - if (tdb->read_only || tdb->traverse_read) { + if ((tdb->flags & TDB_RDONLY) || tdb->traverse_read) { return tdb1_traverse_read(tdb, fn, private_data); } |