]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/schema_prep.c
Commit of the Proxy Cache contribution (ITS#2062)
[openldap] / servers / slapd / schema_prep.c
index 5905bb61c84aead02a687efdd8b859a521aeb27f..87aaf2437dcc2a421a6ca6d2c02456b121ac9174 100644 (file)
@@ -91,14 +91,15 @@ objectSubClassMatch(
        }
 
 #ifdef SLAP_NVALUES
-       assert(0 /* FIX ME */);
+       if( SLAP_MR_IS_VALUE_OF_ATTRIBUTE_SYNTAX( flags ) )
 #else
-       if( SLAP_IS_MR_ATTRIBUTE_SYNTAX_MATCH( flags ) ) {
+       if( SLAP_IS_MR_ATTRIBUTE_SYNTAX_MATCH( flags ) )
+#endif
+       {
                *matchp = ( asserted != oc );
        } else {
                *matchp = !is_object_subclass( asserted, oc );
        }
-#endif
 
 #if OCDEBUG
 #ifdef NEW_LOGGING
@@ -474,6 +475,18 @@ static struct slap_schema_ad_map {
                NULL, NULL, NULL, NULL, NULL,
                offsetof(struct slap_internal_schema, si_ad_superiorUUID) },
 
+#ifdef LDAP_CACHING 
+       /* LDAP cache specific operation attribute */
+       { "queryid", "( 2.5.18.16 NAME 'queryid' "   
+                       "DESC 'list of queries the entry belongs to' "
+                       "EQUALITY octetStringMatch "
+                       "SYNTAX 1.3.6.1.4.1.1466.115.121.1.40{64} "
+                       "NO-USER-MODIFICATION USAGE directoryOperation )",
+               NULL, 0, /* SLAP_AT_HIDE or SLAP_AT_NONE ? */
+               NULL, NULL, NULL, NULL, NULL, 
+               offsetof(struct slap_internal_schema, si_ad_queryid) },
+#endif /* LDAP_CACHING */
+
        /* root DSE attributes */
        { "altServer", "( 1.3.6.1.4.1.1466.101.120.6 NAME 'altServer' "
                        "DESC 'RFC2252: alternative servers' "