]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-ldap/back-ldap.h
improved filter mapping/rewrite; improved result rewriting; improved attribute/object...
[openldap] / servers / slapd / back-ldap / back-ldap.h
index 77f09561c5eb65fadb33b4babaa6ae78ed5d786b..ffe616e24b564c3111efc854fde66193c14c7487 100644 (file)
@@ -93,10 +93,10 @@ struct ldapinfo {
 
 struct ldapconn *ldap_back_getconn(struct ldapinfo *li, struct slap_conn *conn,
        struct slap_op *op);
-int ldap_back_dobind(struct ldapconn *lc, Connection *conn, Operation *op);
+int ldap_back_dobind(struct ldapinfo *li, struct ldapconn *lc, Connection *conn, Operation *op);
 int ldap_back_map_result(int err);
-int ldap_back_op_result(struct ldapconn *lc, Connection *conn, Operation *op,
-       ber_int_t msgid, int rc);
+int ldap_back_op_result(struct ldapinfo *li, struct ldapconn *lc,
+       Connection *conn, Operation *op, ber_int_t msgid, int rc, int sendok);
 int    back_ldap_LTX_init_module(int argc, char *argv[]);
 
 void ldap_back_dn_massage(struct ldapinfo *li, struct berval *dn,
@@ -106,6 +106,7 @@ extern int ldap_back_conn_cmp( const void *c1, const void *c2);
 extern int ldap_back_conn_dup( void *c1, void *c2 );
 extern void ldap_back_conn_free( void *c );
 
+/* attributeType/objectClass mapping */
 int mapping_cmp (const void *, const void *);
 int mapping_dup (void *, void *);
 
@@ -130,6 +131,27 @@ ldap_back_map_attrs(
 
 extern void mapping_free ( void *mapping );
 
+extern int ldap_back_map_config(
+               struct ldapmap  *oc_map,
+               struct ldapmap  *at_map,
+               const char      *fname,
+               int             lineno,
+               int             argc,
+               char            **argv );
+
+extern int
+ldap_back_filter_map_rewrite_(
+#ifdef ENABLE_REWRITE
+               struct rewrite_info     *info,
+               void                    *cookie,
+#endif /* ENABLE_REWRITE */
+               struct ldapmap          *at_map,
+               struct ldapmap          *oc_map,
+               Filter                  *f,
+               struct berval           *fstr,
+               int                     remap );
+
+/* suffix massaging by means of librewrite */
 #ifdef ENABLE_REWRITE
 extern int suffix_massage_config( struct rewrite_info *info,
                struct berval *pvnc, struct berval *nvnc,