[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: extended filter



>>> the matching rule is ignored in favour of the equality rules
>>> for the given type; so what's the difference with usual filters?
>>> see get_mra() in servers/slapd/mra.c 
>> 
>> I noticed that the bitwise matching rule doesn't appear to work
>> anymore, it used to... 

Huh, it probably never worked ... 

-- Luke

Index: schema_init.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/schema_init.c,v
retrieving revision 1.233
diff -u -r1.233 schema_init.c
--- schema_init.c       29 Aug 2002 00:27:15 -0000      1.233
+++ schema_init.c       31 Aug 2002 08:16:14 -0000
@@ -3545,7 +3545,7 @@
        if(( lAssertedValue == LONG_MIN || lAssertedValue == LONG_MAX) && errno == ERANGE )
                return LDAP_CONSTRAINT_VIOLATION;

-       *matchp = (lValue & lAssertedValue);
+       *matchp = (lValue & lAssertedValue) ? 0 : -1;
        return LDAP_SUCCESS;
 }

@@ -3569,7 +3569,7 @@
        if(( lAssertedValue == LONG_MIN || lAssertedValue == LONG_MAX) && errno == ERANGE )
                return LDAP_CONSTRAINT_VIOLATION;

-       *matchp = (lValue | lAssertedValue);
+       *matchp = (lValue | lAssertedValue) ? 0 : -1;
        return LDAP_SUCCESS;
 }

@@ -4268,6 +4268,199 @@
        return LDAP_SUCCESS;
 }


--
Luke Howard | lukehoward.com
PADL Software | www.padl.com