]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/backover.c
ITS#4780 plug leak
[openldap] / servers / slapd / backover.c
index 3ffd18828508066aff7add1f0da3246b26808a82..95673a88bce150cfe77d16f0548513e92ca2c4aa 100644 (file)
@@ -238,6 +238,11 @@ over_back_response ( Operation *op, SlapReply *rs )
                        if ( rc != SLAP_CB_CONTINUE ) break;
                }
        }
+       /* Bypass the remaining on_response layers, but allow
+        * normal execution to continue.
+        */
+       if ( rc == SLAP_CB_BYPASS )
+               rc = SLAP_CB_CONTINUE;
        op->o_bd = be;
        return rc;
 }
@@ -493,6 +498,8 @@ int overlay_op_walk(
                        if ( rc != SLAP_CB_CONTINUE ) break;
                }
        }
+       if ( rc == SLAP_CB_BYPASS )
+               rc = SLAP_CB_CONTINUE;
 
        func = &oi->oi_orig->bi_op_bind;
        if ( func[which] && rc == SLAP_CB_CONTINUE ) {