struct objectclass_mapping { char *local_name; char *remote_name; char *key; /* Name of attribute used in rdn */ /* For mapping attributes used in searches */ struct local_attribute_mapping { char *local_name; /* Attributes to request from the server for this attribute, * needed by generate */ char *required_attributes[]; /* If not set, the value for the first element of * required_attributes will simply be used here */ struct ldb_message_element *(*generate) (LDAPMessage *msg); } *local_attribute_mappings; /* Generate LDAPMod for adds and modifies */ LDAPMod *(*generate_mod)(struct ldb_message *); } struct ldb_map_backend { struct objectclass_mapping *objectclass_mappings; }; const char *ldb_map_dn(const char *old); const char *ldb_map_rdn(const char *old);