]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb2/test/tdb1-external-agent.c
tdb2: unify tdb1_transaction_start etc. into tdb_transaction_start.
[ccan] / ccan / tdb2 / test / tdb1-external-agent.c
index f60df5b7025b0feaca808bb585450ac4861b6265..6b6f87dea5ea64bce3f1e4d83b7dc75365d5a873 100644 (file)
@@ -1,6 +1,6 @@
 #include "tdb1-external-agent.h"
 #include "tdb1-lock-tracking.h"
-#include "tdb1-logging.h"
+#include "logging.h"
 #include <sys/types.h>
 #include <sys/wait.h>
 #include <unistd.h>
@@ -16,7 +16,7 @@
 #include <stdio.h>
 #include <stdarg.h>
 
-static struct tdb1_context *tdb;
+static struct tdb_context *tdb;
 
 static enum agent_return do_operation(enum operation op, const char *name)
 {
@@ -24,7 +24,7 @@ static enum agent_return do_operation(enum operation op, const char *name)
        enum agent_return ret;
        TDB_DATA data;
 
-       if (op != OPEN && op != OPEN_WITH_CLEAR_IF_FIRST && !tdb) {
+       if (op != OPEN && !tdb) {
                diag("external: No tdb open!");
                return OTHER_FAILURE;
        }
@@ -39,8 +39,7 @@ static enum agent_return do_operation(enum operation op, const char *name)
                        diag("Already have tdb %s open", tdb->name);
                        return OTHER_FAILURE;
                }
-               tdb = tdb1_open_ex(name, 0, TDB1_DEFAULT, O_RDWR, 0,
-                                 &taplogctx, NULL);
+               tdb = tdb_open(name, TDB_VERSION1, O_RDWR, 0, &tap_log_attr);
                if (!tdb) {
                        if (!locking_would_block1)
                                diag("Opening tdb gave %s", strerror(errno));
@@ -48,19 +47,11 @@ static enum agent_return do_operation(enum operation op, const char *name)
                } else
                        ret = SUCCESS;
                break;
-       case OPEN_WITH_CLEAR_IF_FIRST:
-               if (tdb)
-                       return OTHER_FAILURE;
-               tdb = tdb1_open_ex(name, 0, TDB1_CLEAR_IF_FIRST, O_RDWR, 0,
-                                 &taplogctx, NULL);
-               ret = tdb ? SUCCESS : OTHER_FAILURE;
-               break;
        case TRANSACTION_START:
-               ret = tdb1_transaction_start(tdb) == 0 ? SUCCESS : OTHER_FAILURE;
+               ret = tdb_transaction_start(tdb) == TDB_SUCCESS ? SUCCESS : OTHER_FAILURE;
                break;
        case FETCH:
-               data = tdb1_fetch(tdb, k);
-               if (data.dptr == NULL) {
+               if (tdb_fetch(tdb, k, &data) != TDB_SUCCESS) {
                        if (tdb->last_error == TDB_ERR_NOEXIST)
                                ret = FAILED;
                        else
@@ -74,10 +65,13 @@ static enum agent_return do_operation(enum operation op, const char *name)
                free(data.dptr);
                break;
        case STORE:
-               ret = tdb1_store(tdb, k, k, 0) == 0 ? SUCCESS : OTHER_FAILURE;
+               if (tdb_store(tdb, k, k, 0) == TDB_SUCCESS)
+                       ret = SUCCESS;
+               else
+                       ret = OTHER_FAILURE;
                break;
        case TRANSACTION_COMMIT:
-               ret = tdb1_transaction_commit(tdb)==0 ? SUCCESS : OTHER_FAILURE;
+               ret = tdb_transaction_commit(tdb) == TDB_SUCCESS ? SUCCESS : OTHER_FAILURE;
                break;
        case CHECK:
                ret = tdb1_check(tdb, NULL, NULL) == 0 ? SUCCESS : OTHER_FAILURE;
@@ -86,7 +80,7 @@ static enum agent_return do_operation(enum operation op, const char *name)
                ret = tdb1_needs_recovery(tdb) ? SUCCESS : FAILED;
                break;
        case CLOSE:
-               ret = tdb1_close(tdb) == 0 ? SUCCESS : OTHER_FAILURE;
+               ret = tdb_close(tdb) == 0 ? SUCCESS : OTHER_FAILURE;
                tdb = NULL;
                break;
        default:
@@ -183,7 +177,6 @@ const char *operation_name1(enum operation op)
 {
        switch (op) {
        case OPEN: return "OPEN";
-       case OPEN_WITH_CLEAR_IF_FIRST: return "OPEN_WITH_CLEAR_IF_FIRST";
        case TRANSACTION_START: return "TRANSACTION_START";
        case FETCH: return "FETCH";
        case STORE: return "STORE";