{
struct ldapconn *lc;
int rc = 1,
- is_oc;
+ is_oc,
+ do_not_cache;
struct berval bdn;
LDAPMessage *result = NULL,
*e = NULL;
int do_retry = 1;
/* Tell getconn this is a privileged op */
- is_oc = op->o_do_not_cache;
+ do_not_cache = op->o_do_not_cache;
op->o_do_not_cache = 1;
lc = ldap_back_getconn( op, &rs );
oconn = op->o_conn;
op->o_conn = NULL;
if ( !lc || !ldap_back_dobind( lc, op, &rs ) ) {
- op->o_do_not_cache = is_oc;
+ op->o_do_not_cache = do_not_cache;
op->o_conn = oconn;
return 1;
}
- op->o_do_not_cache = is_oc;
+ op->o_do_not_cache = do_not_cache;
op->o_conn = oconn;
if ( at ) {
op->o_callback = NULL;
if ( lip->url == NULL ) {
+ /* if we parse the URI then by no means
+ * we can cache stuff or reuse connections,
+ * because in back-ldap there's no caching
+ * based on the URI value, which is supposed
+ * to be set once for all (correct?) */
+ op->o_do_not_cache = 1;
+
/* FIXME: we're setting the URI of the first referral;
* what if there are more? Is this something we should
* worry about? */