]> git.sur5r.net Git - openldap/commitdiff
Add be_match() macro: one cannot always compare BackendDB pointer
authorLuke Howard <lukeh@openldap.org>
Thu, 18 Aug 2005 04:12:04 +0000 (04:12 +0000)
committerLuke Howard <lukeh@openldap.org>
Thu, 18 Aug 2005 04:12:04 +0000 (04:12 +0000)
values in order to test equivalence, because the overlay engine
may have reset the backend pointer to a temporary copy on the stack.

So, we test pointer equivalence of the BackendDB itself, then of
be_nsuffix -- this macro can be updated if necessary.

servers/slapd/proto-slap.h

index 08b9668d32271a7dbd7dbcd7b08cc5211f368caf..79d074b53272dea4b03286b1196275ef5e40d0d1 100644 (file)
@@ -296,6 +296,9 @@ LDAP_SLAPD_F (void) ava_free LDAP_P((
 /*
  * backend.c
  */
+
+#define be_match( be1, be2 )   ( (be1) == (be2) || (be1)->be_nsuffix == (be2)->be_nsuffix )
+
 LDAP_SLAPD_F (int) backend_init LDAP_P((void));
 LDAP_SLAPD_F (int) backend_add LDAP_P((BackendInfo *aBackendInfo));
 LDAP_SLAPD_F (int) backend_num LDAP_P((Backend *be));