]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb/tdb_private.h
Make TDB 32 bit clean (not just 31 bit) for systems with 64 bit file offsets.
[ccan] / ccan / tdb / tdb_private.h
index ceb4358cd31b5f103f896fafc3ddb349be915d69..42770c353b6fa106eff6f8615ab2b2f7235dad6d 100644 (file)
@@ -34,6 +34,7 @@
 #include "system/wait.h"
 #else
 #define _XOPEN_SOURCE 500
+#define _FILE_OFFSET_BITS 64
 #include <stdint.h>
 #include <stdbool.h>
 #include <stdlib.h>
@@ -90,6 +91,7 @@ typedef uint32_t tdb_off_t;
 
 #ifdef TDB_TRACE
 void tdb_trace(struct tdb_context *tdb, const char *op);
+void tdb_trace_seqnum(struct tdb_context *tdb, uint32_t seqnum, const char *op);
 void tdb_trace_open(struct tdb_context *tdb, const char *op,
                    unsigned hash_size, unsigned tdb_flags, unsigned open_flags);
 void tdb_trace_ret(struct tdb_context *tdb, const char *op, int ret);
@@ -107,6 +109,7 @@ void tdb_trace_2rec_retrec(struct tdb_context *tdb, const char *op,
                           TDB_DATA rec1, TDB_DATA rec2, TDB_DATA ret);
 #else
 #define tdb_trace(tdb, op)
+#define tdb_trace_seqnum(tdb, seqnum, op)
 #define tdb_trace_open(tdb, op, hash_size, tdb_flags, open_flags)
 #define tdb_trace_ret(tdb, op, ret)
 #define tdb_trace_retrec(tdb, op, ret)
@@ -216,7 +219,10 @@ struct tdb_context {
        int page_size;
        int max_dead_records;
        int transaction_lock_count;
+#ifdef TDB_TRACE
        int tracefd;
+       uint32_t transaction_prepare_seqnum;
+#endif
        volatile sig_atomic_t *interrupt_sig_ptr;
 };