Add kdb dispatch table for changing between Berkeley and DBM
authorPaul Park <pjpark@mit.edu>
Fri, 30 Jun 1995 20:14:39 +0000 (20:14 +0000)
committerPaul Park <pjpark@mit.edu>
Fri, 30 Jun 1995 20:14:39 +0000 (20:14 +0000)
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@6205 dc483132-0cff-0310-8789-dd5450dbe970

src/include/krb5/ChangeLog
src/include/krb5/kdb.h

index 6da1a8cc466d0100dbf7450df805dd10c2586b2b..c585d6e6b463239f3ec7d561a66714a2fa019f33 100644 (file)
@@ -1,4 +1,8 @@
 
+Fri Jun 30 16:13:41 EDT 1995   Paul Park       (pjpark@mit.edu)
+       * kdb.h - Add kdb dispatch table and set routine under KDB5_DISPATCH.
+
+
 Tue Jun 27 16:12:09 EDT 1995   Paul Park       (pjpark@mit.edu)
        * adm_proto.h - Change second argument of aprof_get... routines to be
                const char *.
index d5c00682f686e3fa86c790180f8c0432559f59eb..8f1ebfdf217091549bd43d2ef4234962c86a5467 100644 (file)
@@ -200,5 +200,32 @@ krb5_error_code    krb5_db_fetch_mkey
 
 #define KRB5_KDB_DEF_FLAGS     0
 
+#ifdef KDB5_DISPATCH
+/*
+ * Database operation dispatch table.  This table determines the procedures
+ * to be used to access the KDC database.  Replacement of this structure is
+ * not supported.
+ */
+typedef struct _kdb5_dispatch_table {
+    char *     kdb5_db_mech_name;
+    char *     kdb5_db_index_ext;
+    char *     kdb5_db_data_ext;
+    char *     kdb5_db_lock_ext;
+    DBM *      (*kdb5_dbm_open) KRB5_NPROTOTYPE((char *, int, int));
+    void       (*kdb5_dbm_close) KRB5_NPROTOTYPE((DBM *));
+    datum      (*kdb5_dbm_fetch) KRB5_NPROTOTYPE((DBM *, datum));
+    datum      (*kdb5_dbm_firstkey) KRB5_NPROTOTYPE((DBM *));
+    datum      (*kdb5_dbm_nextkey) KRB5_NPROTOTYPE((DBM *));
+    int                (*kdb5_dbm_delete) KRB5_NPROTOTYPE((DBM *, datum));
+    int                (*kdb5_dbm_store) KRB5_NPROTOTYPE((DBM *, datum, datum, int));
+    int                (*kdb5_dbm_error) KRB5_NPROTOTYPE((DBM *));
+    int                (*kdb5_dbm_clearerr) KRB5_NPROTOTYPE((DBM *));
+    int                (*kdb5_dbm_dirfno) KRB5_NPROTOTYPE((DBM *));
+    int                (*kdb5_dbm_pagfno) KRB5_NPROTOTYPE((DBM *));
+} kdb5_dispatch_table;
+
+krb5_error_code kdb5_db_set_dbops KRB5_PROTOTYPE((krb5_context,
+                                                 kdb5_dispatch_table *));
+#endif /* KDB5_DISPATCH */
 #endif /* KRB5_KDB5__ */