From 44e15153e705909d917c0864ad4a036f681735d1 Mon Sep 17 00:00:00 2001
From: Kurt Zeilenga <kurt@openldap.org>
Date: Tue, 27 Jul 1999 00:51:19 +0000
Subject: [PATCH] Fix "dn" index.  Only "sub" was being generated instead of
 "eq,sub".

---
 servers/slapd/back-bdb2/init.c |  9 ++++-----
 servers/slapd/back-ldbm/init.c | 10 ++++------
 2 files changed, 8 insertions(+), 11 deletions(-)

diff --git a/servers/slapd/back-bdb2/init.c b/servers/slapd/back-bdb2/init.c
index a8ac8c312e..593405061b 100644
--- a/servers/slapd/back-bdb2/init.c
+++ b/servers/slapd/back-bdb2/init.c
@@ -171,17 +171,16 @@ bdb2i_back_db_init_internal(
 		attr_syntax_config( "ldbm dn initialization", 0, 2, argv );
 	}
 	argv[ 0 ] = "dn";
-	argv[ 1 ] = "sub";
-	argv[ 2 ] = "eq";
-	argv[ 3 ] = NULL;
-	bdb2i_attr_index_config( li, "ldbm dn initialization", 0, 3, argv, 1 );
+	argv[ 1 ] = "eq,sub";
+	argv[ 2 ] = NULL;
+	bdb2i_attr_index_config( li, "ldbm dn initialization", 0, 2, argv, 1 );
 	argv[ 0 ] = "id2children";
 	argv[ 1 ] = "eq";
 	argv[ 2 ] = NULL;
 	bdb2i_attr_index_config( li, "ldbm id2children initialization", 0, 2, argv,
 	    1 );
 	argv[ 0 ] = "objectclass";
-	argv[ 1 ] = ch_strdup( "pres,eq" );
+	argv[ 1 ] = "pres,eq";
 	argv[ 2 ] = NULL;
 	bdb2i_attr_index_config( li, "ldbm objectclass initialization", 0, 2, argv,
 	    1 );
diff --git a/servers/slapd/back-ldbm/init.c b/servers/slapd/back-ldbm/init.c
index d82f842394..4a95b5bf93 100644
--- a/servers/slapd/back-ldbm/init.c
+++ b/servers/slapd/back-ldbm/init.c
@@ -132,21 +132,19 @@ ldbm_back_db_init(
 		attr_syntax_config( "ldbm dn initialization", 0, 2, argv );
 	}
 	argv[ 0 ] = "dn";
-	argv[ 1 ] = "sub";
-	argv[ 2 ] = "eq";
-	argv[ 3 ] = NULL;
-	attr_index_config( li, "ldbm dn initialization", 0, 3, argv, 1 );
+	argv[ 1 ] = "eq,sub";
+	argv[ 2 ] = NULL;
+	attr_index_config( li, "ldbm dn initialization", 0, 2, argv, 1 );
 	argv[ 0 ] = "id2children";
 	argv[ 1 ] = "eq";
 	argv[ 2 ] = NULL;
 	attr_index_config( li, "ldbm id2children initialization", 0, 2, argv,
 	    1 );
 	argv[ 0 ] = "objectclass";
-	argv[ 1 ] = ch_strdup( "pres,eq" );
+	argv[ 1 ] = "pres,eq";
 	argv[ 2 ] = NULL;
 	attr_index_config( li, "ldbm objectclass initialization", 0, 2, argv,
 	    1 );
-	free( argv[ 1 ] );
 
 	/* initialize various mutex locks & condition variables */
 	ldap_pvt_thread_mutex_init( &li->li_root_mutex );
-- 
GitLab