summaryrefslogtreecommitdiffstats
path: root/innbbsd/dbz.h
diff options
context:
space:
mode:
Diffstat (limited to 'innbbsd/dbz.h')
-rw-r--r--innbbsd/dbz.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/innbbsd/dbz.h b/innbbsd/dbz.h
new file mode 100644
index 00000000..3d7e8ed7
--- /dev/null
+++ b/innbbsd/dbz.h
@@ -0,0 +1,32 @@
+/* for dbm and dbz */
+typedef struct {
+ char *dptr;
+ int dsize;
+} datum;
+
+/* standard dbm functions */
+extern int dbminit();
+extern datum fetch();
+extern int store();
+extern int delete(); /* not in dbz */
+extern datum firstkey(); /* not in dbz */
+extern datum nextkey(); /* not in dbz */
+extern int dbmclose(); /* in dbz, but not in old dbm */
+
+/* new stuff for dbz */
+extern int dbzfresh();
+extern int dbzagain();
+extern datum dbzfetch();
+extern int dbzstore();
+extern int dbzsync();
+extern long dbzsize();
+extern int dbzincore();
+extern int dbzcancel();
+extern int dbzdebug();
+
+/*
+ * In principle we could handle unlimited-length keys by operating a chunk
+ * at a time, but it's not worth it in practice. Setting a nice large
+ * bound on them simplifies the code and doesn't hurt anything.
+ */
+#define DBZMAXKEY 255