X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftdb%2Ftdb_private.h;h=4faf898986fb2cd324aeb90b4b25472a911ab8ba;hb=ed1b25bbd01f79b5b333fd28b53455d2c91b831f;hp=7f3497975e5cb7f1d6a2aaa30a32d1b32ebfafe7;hpb=44eea6ca52a2de5a817cf54d5d206969845dee3d;p=ccan diff --git a/ccan/tdb/tdb_private.h b/ccan/tdb/tdb_private.h index 7f349797..4faf8989 100644 --- a/ccan/tdb/tdb_private.h +++ b/ccan/tdb/tdb_private.h @@ -33,7 +33,7 @@ #include "system/select.h" #include "system/wait.h" #else -#define _XOPEN_SOURCE 500 +#include "config.h" #define _FILE_OFFSET_BITS 64 #include #include @@ -46,7 +46,6 @@ #include #include #include -#include "config.h" #endif #include "tdb.h" @@ -72,7 +71,7 @@ typedef uint32_t tdb_len_t; typedef uint32_t tdb_off_t; #ifndef offsetof -#define offsetof(t,f) ((unsigned int)&((t *)0)->f) +#define offsetof(t,f) ((size_t)&((t *)0)->f) #endif #define TDB_MAGIC_FOOD "TDB file\n" @@ -82,6 +81,7 @@ typedef uint32_t tdb_off_t; #define TDB_DEAD_MAGIC (0xFEE1DEAD) #define TDB_RECOVERY_MAGIC (0xf53bc0e7U) #define TDB_RECOVERY_INVALID_MAGIC (0x0) +#define TDB_HASH_RWLOCK_MAGIC (0xbad1a51U) #define TDB_ALIGNMENT 4 #define DEFAULT_HASH_SIZE 131 #define FREELIST_TOP (sizeof(struct tdb_header)) @@ -302,5 +302,6 @@ int tdb_rec_free_read(struct tdb_context *tdb, tdb_off_t off, struct tdb_record *rec); void tdb_header_hash(struct tdb_context *tdb, uint32_t *magic1_hash, uint32_t *magic2_hash); - +unsigned int tdb_old_hash(TDB_DATA *key); +size_t tdb_dead_space(struct tdb_context *tdb, tdb_off_t off); #endif