if (hdr.hash_test != hash_test) {
tdb->log(tdb, TDB_DEBUG_ERROR, tdb->log_priv,
"check: hash test %llu should be %llu\n",
- hdr.hash_test, hash_test);
+ (long long)hdr.hash_test,
+ (long long)hash_test);
return false;
}
if (strcmp(hdr.magic_food, TDB_MAGIC_FOOD) != 0) {
tdb->log(tdb, TDB_DEBUG_ERROR, tdb->log_priv,
"check: bad magic '%.*s'\n",
- sizeof(hdr.magic_food), hdr.magic_food);
+ (unsigned)sizeof(hdr.magic_food), hdr.magic_food);
return false;
}
if (!check_hash_tree(tdb, offsetof(struct tdb_header, hashtable),
TDB_TOPLEVEL_HASH_BITS-TDB_HASH_GROUP_BITS,
- 0, 0, used, num_used, &num_found))
+ 0, 0, used, num_used, &num_found))
return false;
if (num_found != num_used) {
return false;
}
if (tdb->methods->oob(tdb, off
- + frec->data_len-sizeof(struct tdb_used_record),
- true))
+ + frec->data_len+sizeof(struct tdb_used_record),
+ false))
return false;
if (off < zone_off || off >= zone_off + (1ULL<<frec_zone_bits(frec))) {
tdb->log(tdb, TDB_DEBUG_ERROR, tdb->log_priv,
h = bucket_off(zone_off, i);
for (off = tdb_read_off(tdb, h); off; off = f.next) {
if (off == TDB_OFF_ERR)
- return false;
+ return TDB_OFF_ERR;
if (tdb_read_convert(tdb, off, &f, sizeof(f)))
- return false;
+ return TDB_OFF_ERR;
if (!check_free(tdb, off, &f, prev, zone_off, i))
- return false;
+ return TDB_OFF_ERR;
/* FIXME: Check hash bits */
p = asearch(&off, free, num_free, off_cmp);
"tdb_check: Invalid offset"
" %llu in free table\n",
(long long)off);
- return false;
+ return TDB_OFF_ERR;
}
/* Mark it invalid. */
*p ^= 1;
unsigned max_zone_bits = INITIAL_ZONE_BITS;
uint8_t tailer;
- /* This always ensures the header is uptodate. */
if (tdb_allrecord_lock(tdb, F_RDLCK, TDB_LOCK_WAIT, false) != 0)
return -1;