XSRCS = version.c
-SRCS = idl.c add.c search.c cache.c dbcache.c dn2id.c id2entry.c \
+SRCS = idl.c add.c search.c cache.c dbcache.c dn2id.c entry.c id2entry.c \
index.c id2children.c nextid.c abandon.c compare.c group.c \
modify.c modrdn.c delete.c init.c config.c bind.c attr.c \
filterindex.c unbind.c kerberos.c close.c alias.c startup.c \
timing.c porter.c txn.c
-OBJS = idl.o add.o search.o cache.o dbcache.o dn2id.o id2entry.o \
+OBJS = idl.o add.o search.o cache.o dbcache.o dn2id.o entry.c id2entry.o \
index.o id2children.o nextid.o abandon.o compare.o group.o \
modify.o modrdn.o delete.o init.o config.o bind.o attr.o \
filterindex.o unbind.o kerberos.o close.o alias.o startup.o \
bdb2i_cache_return_entry_w( &li->li_cache, p );
}
- /* free entry and writer lock */
- bdb2i_cache_return_entry_w( &li->li_cache, e );
+ if ( rc ) {
+ /* free entry and writer lock */
+ bdb2i_cache_return_entry_w( &li->li_cache, e );
+ }
return( rc );
}
--- /dev/null
+/* entry.c - ldbm backend entry_release routine */
+
+#include "portable.h"
+
+#include <stdio.h>
+
+#include <ac/socket.h>
+#include <ac/string.h>
+
+#include "slap.h"
+#include "back-ldbm.h"
+#include "proto-back-ldbm.h"
+
+
+int
+ldbm_back_entry_release_rw(
+ BackendDB *be,
+ Entry *e,
+ int rw
+)
+{
+ return 0;
+}
bi->bi_op_delete = bdb2_back_delete;
bi->bi_op_abandon = bdb2_back_abandon;
+ bi->bi_entry_release_rw = bdb2_back_entry_release_rw;
#ifdef SLAPD_ACLGROUPS
bi->bi_acl_group = bdb2_back_group;
#endif
#define bdb2i_dn2entry_r(be, dn, m) bdb2i_dn2entry_rw((be), (dn), (m), 0)
#define bdb2i_dn2entry_w(be, dn, m) bdb2i_dn2entry_rw((be), (dn), (m), 1)
+/*
+ * entry.c
+ */
+int bdb2_back_entry_release_rw LDAP_P(( BackendDB *be, Entry *e, int rw ));
+
/*
* filterindex.c
*/