summaryrefslogtreecommitdiffstats
path: root/lib/tdb/test
diff options
context:
space:
mode:
Diffstat (limited to 'lib/tdb/test')
-rw-r--r--lib/tdb/test/external-agent.c7
-rw-r--r--lib/tdb/test/external-agent.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/lib/tdb/test/external-agent.c b/lib/tdb/test/external-agent.c
index 57ed2f54960..443d3824215 100644
--- a/lib/tdb/test/external-agent.c
+++ b/lib/tdb/test/external-agent.c
@@ -90,6 +90,12 @@ static enum agent_return do_operation(enum operation op, const char *name)
case PING:
ret = SUCCESS;
break;
+ case UNMAP:
+ ret = tdb_munmap(tdb) == 0 ? SUCCESS : OTHER_FAILURE;
+ if (ret == SUCCESS) {
+ tdb->flags |= TDB_NOMMAP;
+ }
+ break;
default:
ret = OTHER_FAILURE;
}
@@ -211,6 +217,7 @@ const char *operation_name(enum operation op)
case NEEDS_RECOVERY: return "NEEDS_RECOVERY";
case CLOSE: return "CLOSE";
case PING: return "PING";
+ case UNMAP: return "UNMAP";
}
return "**INVALID**";
}
diff --git a/lib/tdb/test/external-agent.h b/lib/tdb/test/external-agent.h
index bf8a221bcac..de9d0ac5cdc 100644
--- a/lib/tdb/test/external-agent.h
+++ b/lib/tdb/test/external-agent.h
@@ -14,6 +14,7 @@ enum operation {
NEEDS_RECOVERY,
CLOSE,
PING,
+ UNMAP,
};
/* Do this before doing any tdb stuff. Return handle, or -1. */