summaryrefslogtreecommitdiff
path: root/lib/tdb2/check.c
AgeCommit message (Collapse)AuthorFilesLines
2012-01-30tdb2: careful on wrap.Rusty Russell1-2/+2
It's much harder to wrap a 64-bit tdb2 than a 32-bit tdb1, but we should still take care against bugs. Also, we should *not* cast the length to a size_t when comparing it to the stat result, in case size_t is 32 bit. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit 6f7cb26e589cea081e71c59801eae87178967861)
2011-12-05tdb2: add a capability list from the header.Rusty Russell1-10/+33
This allows even more extensibility in future: in particular, the top bits of each capability tell us what to do if we don't understand it: fail the open, fail to open for write, or don't try to check the format. tdb_check needs to understand the capability list so it can know to skip over it: each element in the list is prefixed with the type tag and the length. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit 35f198de1851a7d57064546b7ced677b6fabee27)
2011-12-05tdb2: add an internal TDB_CANT_CHECK flag.Rusty Russell1-0/+6
This will be used shortly to indicate that a TDB2 file indicates it cannot be checked. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit e01d795c8964b791def1e9f68c386b350b3a2a84)
2011-09-14tdb2: fix prototypes which return enum TDB_ERROR.Rusty Russell1-1/+1
Since enums and ints are compatible in C, the compiler didn't warn that our prototypes for these functions disagreed with the definitions. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit 6d3832ee613adeb9ae7ed6454996ffa39c32650f)
2011-09-14tdb2: add error conversion functions.Rusty Russell1-5/+5
This clarifies the code a little, but also provides a more explicit mechanism which can be used to debug error handling (by introducing tdb_err_t and making it a pointer type). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit afa6d57b7d93fe4675a952f556eb462951baa257)
2011-09-14tdb2: unify tdb1_check and tdb1_summary into tdb_check and tdb_summary.Rusty Russell1-0/+6
Switch on the TDB_VERSION1 flag. Also, change tdb1_check's checkfn argument to return an error code (and set tdb->last_error accordingly). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit ef92843f2c74ab9d4fa7f167a2182e5e8955df91)
2011-09-14tdb2: merge tdb1_context into tdb_context.Rusty Russell1-2/+2
Finally, we split out the tdb2-specific parts of tdb_context, and put them into a "tdb2" sub-struct; the tdb1 parts go into a "tdb1" sub-struct. We get rido of tdb1_context and use tdb_context everywhere. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit bbeb528e74c0e234e1f724ac8d54be404cfc6f9a)
2011-06-20tdb2: add lib/tdb2 (from CCAN init-1161-g661d41f)Rusty Russell1-0/+835
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>