db-ldap.h revision e023e3c2677ab66d7a7445eae9caf3d739e199cb
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainentypedef void db_search_callback_t(struct ldap_connection *conn,
35565557e05721a761132cec2ba1d93acacb6c14Timo Sirainen const char *dn;
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainen int fd; /* only set when connected/connecting */
8d59f06c9422fa49b538e23ffb06eddb23c6add2Timo Sirainen struct ldap_request *delayed_requests_head, *delayed_requests_tail;
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainen struct hash_table *pass_attr_map, *user_attr_map;
35565557e05721a761132cec2ba1d93acacb6c14Timo Sirainen unsigned int retrying:1; /* just reconnected, resending requests */
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainen struct ldap_request *next; /* in conn->delayed_requests */
49b6e2d72cfaa5c244c798ddbae5b61489b0f728Timo Sirainen /* for bind requests, base contains the DN and filter=NULL */
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainen char **attributes; /* points to pass_attr_names / user_attr_names */
6ef7e31619edfaa17ed044b45861d106a86191efTimo Sirainenvoid db_ldap_add_delayed_request(struct ldap_connection *conn,
35565557e05721a761132cec2ba1d93acacb6c14Timo Sirainenvoid db_ldap_search(struct ldap_connection *conn, struct ldap_request *request,
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainenvoid db_ldap_set_attrs(struct ldap_connection *conn, const char *attrlist,
35565557e05721a761132cec2ba1d93acacb6c14Timo Sirainen char ***attr_names_r, struct hash_table *attr_map,
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainen const char *const default_attr_map[],
08f24237ccc177f5b3a09b24d8a725fa47e1ee32Timo Sirainenstruct ldap_connection *db_ldap_init(const char *config_path);
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainenvoid db_ldap_unref(struct ldap_connection **conn);
c014f12e8268bf37ca2997e632ad7c22b8d04a84Timo Sirainenint db_ldap_connect(struct ldap_connection *conn);
4d4cd9cde9e01d4ad9354e6e30ac2f90d13042b2Timo Sirainenconst char *ldap_get_error(struct ldap_connection *conn);