ITS#7915 fix mdb_entry_release

In server mode, make sure the entry was actually ours
This commit is contained in:
Howard Chu 2014-08-04 13:35:02 -07:00
parent f7a2438112
commit d8c060104d

View File

@ -272,11 +272,11 @@ int mdb_entry_release(
/* slapMode : SLAP_SERVER_MODE, SLAP_TOOL_MODE,
SLAP_TRUNCATE_MODE, SLAP_UNDEFINED_MODE */
mdb_entry_return( op, e );
if ( slapMode & SLAP_SERVER_MODE ) {
OpExtra *oex;
LDAP_SLIST_FOREACH( oex, &op->o_extra, oe_next ) {
if ( oex->oe_key == mdb ) {
mdb_entry_return( op, e );
moi = (mdb_op_info *)oex;
/* If it was setup by entry_get we should probably free it */
if ( moi->moi_flag & MOI_FREEIT ) {
@ -291,6 +291,8 @@ int mdb_entry_release(
break;
}
}
} else {
mdb_entry_return( op, e );
}
return 0;