]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb2/tdb2.h
tdb2: expose and document tdb1_incompatible_hash.
[ccan] / ccan / tdb2 / tdb2.h
index 76ecbe5b9d7d59369063fe65b011ae0fc990ff99..be5d50027712d4cf511ce60b02ae5e95bfc850e1 100644 (file)
@@ -88,6 +88,18 @@ struct tdb_context *tdb_open(const char *name, int tdb_flags,
 #define TDB_RDONLY   512 /* implied by O_RDONLY */
 #define TDB_VERSION1  1024 /* create/open an old style TDB */
 
+/**
+ * tdb1_incompatible_hash - better (Jenkins) hash for tdb1
+ *
+ * This is better than the default hash for tdb1; but older versions of the
+ * tdb library (prior to version 1.2.6) won't be able to open them.
+ *
+ * It only makes sense to specify this (using tdb_attribute_hash) when
+ * creating (with O_CREAT) an old tdb version using TDB_VERSION1.  It's
+ * equivalent to the TDB_INCOMPATIBLE_HASH flag for tdb1.
+ */
+uint64_t tdb1_incompatible_hash(const void *, size_t, uint64_t, void *);
+
 /**
  * tdb_close - close and free a tdb.
  * @tdb: the tdb context returned from tdb_open()