)
{
static int glueClosed = 0;
- int rc;
+ int rc = 0;
if (glueClosed) return 0;
{
glueinfo *gi = (glueinfo *)b0->be_private;
BackendDB *be;
- int i, rc, t2limit = 0, s2limit = 0;
+ int i, rc = 0, t2limit = 0, s2limit = 0;
long stoptime = 0;
struct berval bv;
glue_state gs = {0};
case LDAP_SCOPE_ONELEVEL:
case LDAP_SCOPE_SUBTREE:
op->o_callback = &cb;
+ rc = gs.err = LDAP_UNWILLING_TO_PERFORM;
/*
* Execute in reverse order, most general first
continue;
if (tlimit) {
t2limit = stoptime - slap_get_time ();
- if (t2limit <= 0)
+ if (t2limit <= 0) {
+ rc = gs.err = LDAP_TIMELIMIT_EXCEEDED;
break;
+ }
}
if (slimit) {
s2limit = slimit - gs.nentries;
- if (s2limit <= 0)
+ if (s2limit <= 0) {
+ rc = gs.err = LDAP_SIZELIMIT_EXCEEDED;
break;
+ }
}
/*
* check for abandon
int i, j;
int cont = num_subordinates;
BackendDB *b1, *be;
- BackendInfo *bi;
+ BackendInfo *bi = NULL;
glueinfo *gi;
/* While there are subordinate backends, search backwards through the