]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/slap.h
Precompute syn_oidlen and mr_oidlen
[openldap] / servers / slapd / slap.h
index c7bb5c106712681a66e7988cd661d6f405a4c98e..5955aef7a0d4a182502dcd901c7756bb580e9ee1 100644 (file)
@@ -254,6 +254,7 @@ typedef struct slap_syntax {
 #define ssyn_oid               ssyn_syn.syn_oid
 #define ssyn_desc              ssyn_syn.syn_desc
 #define ssyn_extensions                ssyn_syn.syn_extensions
+       ber_len_t       ssyn_oidlen;
 
        unsigned        ssyn_flags;
 
@@ -326,6 +327,7 @@ typedef int slap_mr_filter_func LDAP_P((
 
 typedef struct slap_matching_rule {
        LDAPMatchingRule                smr_mrule;
+       ber_len_t                       smr_oidlen;
        slap_mask_t                             smr_usage;
 
 #define SLAP_MR_TYPE_MASK              0xFF00U
@@ -543,7 +545,7 @@ typedef struct slap_ss_assertion {
 
 typedef struct slap_mr_assertion {
        MatchingRule                            *ma_rule;       /* optional */
-       char                                    *ma_rule_text;  /* optional */
+       struct berval                           ma_rule_text;  /* optional */
        AttributeDescription    *ma_desc;       /* optional */
        int                                             ma_dnattrs; /* boolean */
        struct berval                   *ma_value;      /* required */
@@ -1033,8 +1035,8 @@ typedef int (BI_db_destroy) LDAP_P((Backend *bd));
 
 typedef int (BI_op_bind)  LDAP_P(( BackendDB *bd,
                struct slap_conn *c, struct slap_op *o,
-               const char *dn, const char *ndn, int method,
-               struct berval *cred, char** edn ));
+               struct berval *dn, struct berval *ndn, int method,
+               struct berval *cred, struct berval *edn ));
 typedef int (BI_op_unbind) LDAP_P((BackendDB *bd,
                struct slap_conn *c, struct slap_op *o ));
 typedef int (BI_op_search) LDAP_P((BackendDB *bd,