Commit 4be655ea authored by Howard Chu's avatar Howard Chu Committed by Quanah Gibson-Mount
Browse files

ITS#9678 slapadd: avoid destroying configDB prematurely

parent 039454b6
......@@ -5565,6 +5565,8 @@ config_add_oc( ConfigOCs **cop, CfEntryInfo *last, Entry *e, ConfigArgs *ca )
return rc;
}
static BackendDB *configDB; /* only set by slapadd */
/* Parse an LDAP entry into config directives */
static int
config_add_internal( CfBackInfo *cfb, Entry *e, ConfigArgs *ca, SlapReply *rs,
......@@ -5911,7 +5913,7 @@ ok:
done:
if ( rc ) {
if ( (coptr->co_type == Cft_Database) && ca->be ) {
if ( ca->be != frontendDB )
if ( ca->be != frontendDB && ca->be != configDB )
backend_destroy_one( ca->be, 1 );
} else if ( (coptr->co_type == Cft_Overlay) && ca->bi ) {
overlay_destroy_one( ca->be, (slap_overinst *)ca->bi );
......@@ -7885,6 +7887,7 @@ config_tool_entry_open( BackendDB *be, int mode )
CfBackInfo *cfb = be->be_private;
BackendInfo *bi = cfb->cb_db.bd_info;
configDB = be;
if ( bi && bi->bi_tool_entry_open )
return bi->bi_tool_entry_open( &cfb->cb_db, mode );
else
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment