+ tdb = NULL;
+ return 1;
+ } else if (op == STORE_KEEP_OPENED) {
+ if (tdb_store(tdb, k, d, 0) != 0)
+ return -2;
+ return 1;
+ } else if (op == FETCH_KEEP_OPENED) {
+ TDB_DATA ret;
+ ret = tdb_fetch(tdb, k);
+ if (ret.dptr == NULL) {
+ if (tdb_error(tdb) == TDB_ERR_NOEXIST)
+ return 1;
+ return -3;
+ }
+ if (ret.dsize != 1 || *(char *)ret.dptr != 'b')
+ return -4;
+ free(ret.dptr);
+ return 1;
+ } else if (op == CHECK_KEEP_OPENED) {
+ return tdb_check(tdb, NULL, 0) == 0;
+ } else if (op == NEEDS_RECOVERY_KEEP_OPENED) {
+#if 0
+ return tdb_maybe_needs_recovery(tdb);
+#else