tdb->log_fn = NULL;
tdb->transaction = NULL;
tdb->access = NULL;
+ tdb->open_flags = open_flags;
tdb->last_error = TDB_SUCCESS;
tdb->file = NULL;
tdb->lock_fn = tdb_fcntl_lock;
if ((open_flags & O_ACCMODE) == O_RDONLY) {
tdb->read_only = true;
- tdb->mmap_flags = PROT_READ;
openlock = F_RDLCK;
} else {
tdb->read_only = false;
- tdb->mmap_flags = PROT_READ | PROT_WRITE;
openlock = F_WRLCK;
}
name, (long long)hdr.version);
goto fail;
}
+ } else if (tdb->flags & TDB_CONVERT) {
+ ecode = tdb_logerr(tdb, TDB_ERR_IO, TDB_LOG_ERROR,
+ "tdb_open:"
+ " %s does not need TDB_CONVERT",
+ name);
+ goto fail;
}
tdb_convert(tdb, &hdr, sizeof(hdr));