lookup entries as LDAP_REQ_SEARCH (ITS#5513)

This commit is contained in:
Pierangelo Masarati 2008-05-17 11:36:44 +00:00
parent 08e2ce2d1d
commit 20e8da9ba7

View file

@ -773,8 +773,9 @@ ldap_back_entry_get(
ldapinfo_t *li = (ldapinfo_t *) op->o_bd->be_private; ldapinfo_t *li = (ldapinfo_t *) op->o_bd->be_private;
ldapconn_t *lc = NULL; ldapconn_t *lc = NULL;
int rc = 1, int rc,
do_not_cache; do_not_cache;
ber_tag_t tag;
struct berval bdn; struct berval bdn;
LDAPMessage *result = NULL, LDAPMessage *result = NULL,
*e = NULL; *e = NULL;
@ -788,12 +789,18 @@ ldap_back_entry_get(
/* Tell getconn this is a privileged op */ /* Tell getconn this is a privileged op */
do_not_cache = op->o_do_not_cache; do_not_cache = op->o_do_not_cache;
tag = op->o_tag;
/* do not cache */
op->o_do_not_cache = 1; op->o_do_not_cache = 1;
if ( !ldap_back_dobind( &lc, op, &rs, LDAP_BACK_DONTSEND ) ) { /* ldap_back_entry_get() is an entry lookup, so it does not need
* to know what the entry is being looked up for */
op->o_tag = LDAP_REQ_SEARCH;
rc = ldap_back_dobind( &lc, op, &rs, LDAP_BACK_DONTSEND );
op->o_do_not_cache = do_not_cache; op->o_do_not_cache = do_not_cache;
op->o_tag = tag;
if ( !rc ) {
return rs.sr_err; return rs.sr_err;
} }
op->o_do_not_cache = do_not_cache;
if ( at ) { if ( at ) {
attrp = attr; attrp = attr;