import fix to sizelimit bug (ITS#3720)

This commit is contained in:
Pierangelo Masarati 2005-05-12 22:38:16 +00:00
parent 08f771c0ad
commit 62a49ab496
2 changed files with 13 additions and 9 deletions

View file

@ -2,6 +2,7 @@ OpenLDAP 2.2 Change Log
OpenLDAP 2.2.27 Engineering
Fixed back-ldap/back-meta debug output of NULL strings (ITS#3698)
Fixed back-meta sizelimit bug (ITS#3720)
Fixed syncrepl runqueue (ITS#3542)
Fixed ACL val default style parsing crasher (ITS#3700)
Build Environment

View file

@ -85,7 +85,7 @@ meta_back_search( Operation *op, SlapReply *rs )
}
if ( !meta_back_dobind( lc, op ) ) {
rs->sr_err = LDAP_OTHER;
rs->sr_err = LDAP_UNAVAILABLE;
send_ldap_result( op, rs );
return -1;
}
@ -315,14 +315,6 @@ new_candidate:;
break;
}
if ( op->ors_slimit > 0
&& rs->sr_nentries == op->ors_slimit ) {
rs->sr_err = LDAP_SIZELIMIT_EXCEEDED;
rs->sr_v2ref = v2refs;
send_ldap_result( op, rs );
goto finish;
}
/*
* FIXME: handle time limit as well?
* Note that target servers are likely
@ -357,6 +349,17 @@ new_candidate:;
goto finish;
} else if ( rc == LDAP_RES_SEARCH_ENTRY ) {
if ( op->ors_slimit > 0 && rs->sr_nentries == op->ors_slimit )
{
ldap_msgfree( res );
res = NULL;
rs->sr_err = LDAP_SIZELIMIT_EXCEEDED;
rs->sr_v2ref = v2refs;
send_ldap_result( op, rs );
goto finish;
}
e = ldap_first_entry( lsc->ld, res );
meta_send_entry( op, rs, lc, i, e );