mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-06 10:46:21 +08:00
fix ITS#3406 wrt/ dnattr; silence warning
This commit is contained in:
parent
21aa0d0f9f
commit
70963520d4
@ -434,11 +434,13 @@ static int test_mra_filter(
|
|||||||
|
|
||||||
for ( iAVA = 0; rdn[ iAVA ]; iAVA++ ) {
|
for ( iAVA = 0; rdn[ iAVA ]; iAVA++ ) {
|
||||||
LDAPAVA *ava = rdn[ iAVA ];
|
LDAPAVA *ava = rdn[ iAVA ];
|
||||||
struct berval *bv = &ava->la_value, value;
|
struct berval *bv = &ava->la_value,
|
||||||
|
value = BER_BVNULL,
|
||||||
|
nbv = BER_BVNULL;
|
||||||
AttributeDescription *ad =
|
AttributeDescription *ad =
|
||||||
(AttributeDescription *)ava->la_private;
|
(AttributeDescription *)ava->la_private;
|
||||||
int ret;
|
int ret;
|
||||||
const char *text;
|
const char *text;
|
||||||
|
|
||||||
assert( ad );
|
assert( ad );
|
||||||
|
|
||||||
@ -473,13 +475,37 @@ static int test_mra_filter(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( mra->ma_rule->smr_normalize ) {
|
||||||
|
/* see comment above */
|
||||||
|
if ( mra->ma_rule->smr_normalize(
|
||||||
|
SLAP_MR_VALUE_OF_ATTRIBUTE_SYNTAX,
|
||||||
|
mra->ma_rule->smr_syntax,
|
||||||
|
mra->ma_rule,
|
||||||
|
bv, &nbv, memctx ) != LDAP_SUCCESS )
|
||||||
|
{
|
||||||
|
/* FIXME: stop processing? */
|
||||||
|
rc = LDAP_SUCCESS;
|
||||||
|
ret = -1;
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
nbv = *bv;
|
||||||
|
}
|
||||||
|
|
||||||
/* check match */
|
/* check match */
|
||||||
rc = value_match( &ret, ad, mra->ma_rule, 0,
|
rc = value_match( &ret, ad, mra->ma_rule, 0,
|
||||||
bv, &value, &text );
|
&nbv, &value, &text );
|
||||||
if ( value.bv_val != mra->ma_value.bv_val ) {
|
|
||||||
|
cleanup:;
|
||||||
|
if ( !BER_BVISNULL( &value ) && value.bv_val != mra->ma_value.bv_val ) {
|
||||||
memfree( value.bv_val, memctx );
|
memfree( value.bv_val, memctx );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( !BER_BVISNULL( &nbv ) && nbv.bv_val != bv->bv_val ) {
|
||||||
|
memfree( nbv.bv_val, memctx );
|
||||||
|
}
|
||||||
|
|
||||||
if ( rc == LDAP_SUCCESS && ret == 0 ) rc = LDAP_COMPARE_TRUE;
|
if ( rc == LDAP_SUCCESS && ret == 0 ) rc = LDAP_COMPARE_TRUE;
|
||||||
|
|
||||||
if ( rc != LDAP_SUCCESS ) {
|
if ( rc != LDAP_SUCCESS ) {
|
||||||
@ -504,7 +530,7 @@ test_ava_filter(
|
|||||||
int rc;
|
int rc;
|
||||||
Attribute *a;
|
Attribute *a;
|
||||||
#ifdef LDAP_COMP_MATCH
|
#ifdef LDAP_COMP_MATCH
|
||||||
int i, num_attr_vals;
|
int i, num_attr_vals = 0;
|
||||||
AttributeAliasing *a_alias = NULL;
|
AttributeAliasing *a_alias = NULL;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user