summaryrefslogtreecommitdiffstats
path: root/ldap/servers/slapd/back-ldbm/back-ldbm.h
diff options
context:
space:
mode:
authorRich Megginson <rmeggins@redhat.com>2010-02-08 08:57:52 -0700
committerRich Megginson <rmeggins@redhat.com>2010-02-17 15:04:02 -0700
commit834c706f04e53bb3ca95caa31c6e1166ad79210e (patch)
treee002cfe1db898002465b4545c6b38be39b9d615e /ldap/servers/slapd/back-ldbm/back-ldbm.h
parent3e5e21c68afc5ff38d0d843fafaddd145e4d38f5 (diff)
downloadds-834c706f04e53bb3ca95caa31c6e1166ad79210e.tar.gz
ds-834c706f04e53bb3ca95caa31c6e1166ad79210e.tar.xz
ds-834c706f04e53bb3ca95caa31c6e1166ad79210e.zip
Do not use syntax plugins directly for filters, indexing
There were many places in the server code that directly used the syntax plugin for the attribute. If the attribute schema definition specified a matching rule, we must use that matching rule for matching values of that attribute, filtering that attribute, and generating index keys for values of that attribute. New internal and plugin APIs have been added that use the Slapi_Attr* instead of using the syntax plugin directly. The new API will determine which matching rule to apply based on the schema definition.
Diffstat (limited to 'ldap/servers/slapd/back-ldbm/back-ldbm.h')
-rw-r--r--ldap/servers/slapd/back-ldbm/back-ldbm.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/ldap/servers/slapd/back-ldbm/back-ldbm.h b/ldap/servers/slapd/back-ldbm/back-ldbm.h
index 06cabf2c..1153ff37 100644
--- a/ldap/servers/slapd/back-ldbm/back-ldbm.h
+++ b/ldap/servers/slapd/back-ldbm/back-ldbm.h
@@ -467,7 +467,6 @@ struct attrinfo {
* yet. */
#define IS_INDEXED( a ) ( a & INDEX_ANY )
- void *ai_plugin; /* the syntax plugin for this attribute */
char **ai_index_rules; /* matching rule OIDs */
void *ai_dblayer; /* private data used by the dblayer code */
PRInt32 ai_dblayer_count; /* used by the dblayer code */
@@ -475,7 +474,7 @@ struct attrinfo {
attrcrypt_private *ai_attrcrypt; /* private data used by the attribute encryption code (eg is it enabled or not) */
value_compare_fn_type ai_key_cmp_fn; /* function used to compare two index keys -
The function is the compare function provided by
- ai_plugin - this function is used to order
+ attr_get_value_cmp_fn - this function is used to order
the keys in the index so that we can use ORDERING
searches. In order for this function to be used,
the syntax plugin must define a compare function,
@@ -495,6 +494,7 @@ struct attrinfo {
* len value(s) are stored here. If not specified,
* the default length triplet is 2, 3, 2.
*/
+ Slapi_Attr ai_sattr; /* interface to syntax and matching rule plugins */
};
#define MAXDBCACHE 20