diff options
author | Simo Sorce <idra@samba.org> | 2006-02-22 01:31:35 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:51:59 -0500 |
commit | 00fe70e5b917769418f68eaa255d3a06a9a08ce7 (patch) | |
tree | 7fe1d0d71e1771a3365a5dfda3ec4058b1bb2de1 /source4/libcli/ldap/ldap_ildap.c | |
parent | f490434c0f1f8e63de478c6d65f264277257968a (diff) | |
download | samba-00fe70e5b917769418f68eaa255d3a06a9a08ce7.tar.gz samba-00fe70e5b917769418f68eaa255d3a06a9a08ce7.tar.bz2 samba-00fe70e5b917769418f68eaa255d3a06a9a08ce7.zip |
r13609: Get in the initial work on making ldb async
Currently only ldb_ildap is async, the plan
is to first make all backend support the async calls,
and then remove the sync functions from backends and
keep the only in the API.
Modules will need to be transformed along the way.
Simo
(This used to be commit 1e2c13b2d52de7c534493dd79a2c0596a3e8c1f5)
Diffstat (limited to 'source4/libcli/ldap/ldap_ildap.c')
-rw-r--r-- | source4/libcli/ldap/ldap_ildap.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/source4/libcli/ldap/ldap_ildap.c b/source4/libcli/ldap/ldap_ildap.c index a5227ec37f..f26fb7db78 100644 --- a/source4/libcli/ldap/ldap_ildap.c +++ b/source4/libcli/ldap/ldap_ildap.c @@ -152,13 +152,13 @@ int ildap_count_entries(struct ldap_connection *conn, struct ldap_message **res) /* - perform a ldap search + perform a synchronous ldap search */ NTSTATUS ildap_search_bytree(struct ldap_connection *conn, const char *basedn, int scope, struct ldb_parse_tree *tree, const char * const *attrs, BOOL attributesonly, - struct ldap_Control **control_req, - struct ldap_Control ***control_res, + struct ldb_control **control_req, + struct ldb_control ***control_res, struct ldap_message ***results) { struct ldap_message *msg; @@ -203,7 +203,9 @@ NTSTATUS ildap_search_bytree(struct ldap_connection *conn, const char *basedn, break; } - if (res->type != LDAP_TAG_SearchResultEntry) continue; + if (res->type != LDAP_TAG_SearchResultEntry && + res->type != LDAP_TAG_SearchResultReference) + continue; (*results) = talloc_realloc(conn, *results, struct ldap_message *, n+2); if (*results == NULL) { @@ -228,8 +230,8 @@ NTSTATUS ildap_search_bytree(struct ldap_connection *conn, const char *basedn, NTSTATUS ildap_search(struct ldap_connection *conn, const char *basedn, int scope, const char *expression, const char * const *attrs, BOOL attributesonly, - struct ldap_Control **control_req, - struct ldap_Control ***control_res, + struct ldb_control **control_req, + struct ldb_control ***control_res, struct ldap_message ***results) { struct ldb_parse_tree *tree = ldb_parse_tree(conn, expression); |