X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fback-bdb%2Fidl.h;h=29a0aaf629c799dade092f7422150b9a553d87bb;hb=549134d514516cde16df5ce15fa99fa68b802a03;hp=3ce8e19ed126bc7a552ef1dab858b26e6db887e5;hpb=bee0650d9ccf930491f6b9cbf2e149a93e0770d8;p=openldap
diff --git a/servers/slapd/back-bdb/idl.h b/servers/slapd/back-bdb/idl.h
index 3ce8e19ed1..29a0aaf629 100644
--- a/servers/slapd/back-bdb/idl.h
+++ b/servers/slapd/back-bdb/idl.h
@@ -1,29 +1,42 @@
-/* back-bdb.h - ldap ldbm back-end header file */
+/* idl.h - ldap bdb back-end ID list header file */
/* $OpenLDAP$ */
-/*
- * Copyright 2000 The OpenLDAP Foundation, All Rights Reserved.
- * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
+/* This work is part of OpenLDAP Software .
+ *
+ * Copyright 2000-2008 The OpenLDAP Foundation.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted only as authorized by the OpenLDAP
+ * Public License.
+ *
+ * A copy of this license is available in the file LICENSE in the
+ * top-level directory of the distribution or, alternatively, at
+ * .
*/
#ifndef _BDB_IDL_H_
#define _BDB_IDL_H_
-#include
-
-#include "slap.h"
+/* IDL sizes - likely should be even bigger
+ * limiting factors: sizeof(ID), thread stack size
+ */
+#define BDB_IDL_LOGN 16 /* DB_SIZE is 2^16, UM_SIZE is 2^17 */
+#define BDB_IDL_DB_SIZE (1<bi_lastid) )
#define BDB_IDL_ALL( bdb, ids ) BDB_IDL_RANGE( ids, 1, ((bdb)->bi_lastid) )
#define BDB_IDL_FIRST( ids ) ( ids[1] )
-#define BDB_IDL_LAST( ids ) ( BDB_IDL_IS_RANGE(ids) ? ids[2] : ids[ids[0]] )
+#define BDB_IDL_LAST( ids ) ( BDB_IDL_IS_RANGE(ids) \
+ ? ids[2] : ids[ids[0]] )
+
+#define BDB_IDL_N( ids ) ( BDB_IDL_IS_RANGE(ids) \
+ ? (ids[2]-ids[1])+1 : ids[0] )
LDAP_BEGIN_DECL
LDAP_END_DECL
-#endif
\ No newline at end of file
+#endif