X-Git-Url: https://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Ftdb2%2Ftdb1_private.h;h=cb22b9f332cb3671ab8274574ba4829f24a14b21;hp=2e292ee0bc364144de59d11813c6423207e7e135;hb=695e2ae319052ceb410ef00d0181aa607f1ceb6d;hpb=c8c3b3568677e8b0105f84e4ab068c580faf4591 diff --git a/ccan/tdb2/tdb1_private.h b/ccan/tdb2/tdb1_private.h index 2e292ee0..cb22b9f3 100644 --- a/ccan/tdb2/tdb1_private.h +++ b/ccan/tdb2/tdb1_private.h @@ -26,7 +26,6 @@ */ #include "private.h" -#include "tdb1.h" #include @@ -113,7 +112,7 @@ struct tdb1_methods { int (*tdb1_read)(struct tdb_context *, tdb1_off_t , void *, tdb1_len_t , int ); int (*tdb1_write)(struct tdb_context *, tdb1_off_t, const void *, tdb1_len_t); void (*next_hash_chain)(struct tdb_context *, uint32_t *); - int (*tdb1_oob)(struct tdb_context *, tdb1_off_t , int ); + int (*tdb1_oob)(struct tdb_context *, tdb1_off_t, tdb1_len_t, int ); int (*tdb1_expand_file)(struct tdb_context *, tdb1_off_t , tdb1_off_t ); }; @@ -142,8 +141,6 @@ int tdb1_recovery_area(struct tdb_context *tdb, const struct tdb1_methods *methods, tdb1_off_t *recovery_offset, struct tdb1_record *rec); -int tdb1_allrecord_lock(struct tdb_context *tdb, int ltype, - enum tdb_lock_flags flags, bool upgradable); int tdb1_allrecord_upgrade(struct tdb_context *tdb); int tdb1_write_lock_record(struct tdb_context *tdb, tdb1_off_t off); int tdb1_write_unlock_record(struct tdb_context *tdb, tdb1_off_t off); @@ -156,20 +153,22 @@ int tdb1_ofs_read(struct tdb_context *tdb, tdb1_off_t offset, tdb1_off_t *d); int tdb1_ofs_write(struct tdb_context *tdb, tdb1_off_t offset, tdb1_off_t *d); int tdb1_lock_record(struct tdb_context *tdb, tdb1_off_t off); int tdb1_unlock_record(struct tdb_context *tdb, tdb1_off_t off); -bool tdb1_needs_recovery(struct tdb_context *tdb); +tdb_bool_err tdb1_needs_recovery(struct tdb_context *tdb); int tdb1_rec_read(struct tdb_context *tdb, tdb1_off_t offset, struct tdb1_record *rec); int tdb1_rec_write(struct tdb_context *tdb, tdb1_off_t offset, struct tdb1_record *rec); int tdb1_do_delete(struct tdb_context *tdb, tdb1_off_t rec_ptr, struct tdb1_record *rec); unsigned char *tdb1_alloc_read(struct tdb_context *tdb, tdb1_off_t offset, tdb1_len_t len); -int tdb1_parse_data(struct tdb_context *tdb, TDB_DATA key, - tdb1_off_t offset, tdb1_len_t len, - int (*parser)(TDB_DATA key, TDB_DATA data, - void *private_data), - void *private_data); +enum TDB_ERROR tdb1_parse_data(struct tdb_context *tdb, TDB_DATA key, + tdb1_off_t offset, tdb1_len_t len, + enum TDB_ERROR (*parser)(TDB_DATA key, + TDB_DATA data, + void *private_data), + void *private_data); tdb1_off_t tdb1_find_lock_hash(struct tdb_context *tdb, TDB_DATA key, uint32_t hash, int locktype, struct tdb1_record *rec); void tdb1_io_init(struct tdb_context *tdb); int tdb1_expand(struct tdb_context *tdb, tdb1_off_t size); +tdb1_off_t tdb1_expand_adjust(tdb1_off_t map_size, tdb1_off_t size, int page_size); int tdb1_rec_free_read(struct tdb_context *tdb, tdb1_off_t off, struct tdb1_record *rec); bool tdb1_write_all(int fd, const void *buf, size_t count);