]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-mdb/proto-mdb.h
back-bdb/back-mdb IDL cleanup.
[openldap] / servers / slapd / back-mdb / proto-mdb.h
index 7a48979bd2b48cc2ae197016b231b93882a99dfe..28f74210d1cf6e892dc111870414671c0d712722 100644 (file)
@@ -33,7 +33,7 @@ int mdb_attr_slot( struct mdb_info *mdb,
        AttributeDescription *desc, int *insert );
 
 int mdb_attr_dbs_open( BackendDB *be, MDB_txn *txn, struct config_reply_s *cr );
-void mdb_attr_dbs_close( struct mdb_info *mdb, MDB_txn *txn );
+void mdb_attr_dbs_close( struct mdb_info *mdb );
 
 int mdb_attr_index_config LDAP_P(( struct mdb_info *mdb,
        const char *fname, int lineno,
@@ -46,6 +46,9 @@ void mdb_attr_index_free LDAP_P(( struct mdb_info *mdb,
 
 void mdb_attr_info_free( AttrInfo *ai );
 
+int mdb_ad_read( struct mdb_info *mdb, MDB_txn *txn );
+int mdb_ad_get( struct mdb_info *mdb, MDB_txn *txn, AttributeDescription *ad );
+
 /*
  * config.c
  */
@@ -124,12 +127,11 @@ int mdb_idscope(
        ID *ids,
        ID *res );
 
+struct IdScopes;
+
 int mdb_idscopes(
        Operation *op,
-       MDB_txn *txn,
-       MDB_cursor **cursp,
-       ID base,
-       ID *scopes );
+       struct IdScopes *isc );
 
 MDB_cmp_func mdb_dup_compare;
 
@@ -166,15 +168,16 @@ int mdb_id2entry_delete(
 
 int mdb_id2entry(
        Operation *op,
-       MDB_txn *tid,
+       MDB_cursor *mc,
        ID id,
        Entry **e);
 
-void mdb_entry_free ( Entry *e );
-int mdb_entry_return( Entry *e );
+int mdb_entry_return( Operation *op, Entry *e );
 BI_entry_release_rw mdb_entry_release;
 BI_entry_get_rw mdb_entry_get;
 
+int mdb_entry_decode( Operation *op, MDB_val *data, Entry **e );
+
 void mdb_reader_flush( MDB_env *env );
 int mdb_opinfo_get( Operation *op, struct mdb_info *mdb, int rdonly, mdb_op_info **moi );
 
@@ -197,7 +200,7 @@ int mdb_idl_insert( ID *ids, ID id );
 
 typedef int (mdb_idl_keyfunc)(
        MDB_cursor *mc,
-       MDB_val *key,
+       struct berval *key,
        ID id );
 
 mdb_idl_keyfunc mdb_idl_insert_keys;