mirror of
https://github.com/samba-team/samba.git
synced 2024-12-24 21:34:56 +03:00
s3: Fix early tldap_search cancels
A callback of tldap_search_send might not interested in the rest of the results and could do a TALLOC_FREE of the search request. In this case, "subreq" is already free'ed. So we have to set it to pending before the callback is called. The TALLOC_FREE of the search request will set it to non-pending again via tldap_msg_destructor. Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Sun Mar 20 11:26:57 CET 2011 on sn-devel-104
This commit is contained in:
parent
a8eea9e946
commit
4828feddb7
@ -1703,11 +1703,11 @@ static void tldap_search_done(struct tevent_req *subreq)
|
||||
switch (state->result->type) {
|
||||
case TLDAP_RES_SEARCH_ENTRY:
|
||||
case TLDAP_RES_SEARCH_REFERENCE:
|
||||
tevent_req_notify_callback(req);
|
||||
if (!tldap_msg_set_pending(subreq)) {
|
||||
tevent_req_nomem(NULL, req);
|
||||
return;
|
||||
}
|
||||
tevent_req_notify_callback(req);
|
||||
break;
|
||||
case TLDAP_RES_SEARCH_RESULT:
|
||||
TALLOC_FREE(subreq);
|
||||
|
Loading…
Reference in New Issue
Block a user