From: Arran Cudbard-Bell Date: Thu, 14 Oct 2021 17:42:47 +0000 (-0500) Subject: ldap: It's fine if the request goes into the backlog X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1b4e46cf674131abf0a87bdd9494e7e6fd41b51c;p=thirdparty%2Ffreeradius-server.git ldap: It's fine if the request goes into the backlog --- diff --git a/src/lib/ldap/base.c b/src/lib/ldap/base.c index c379f944839..b10e4d41b83 100644 --- a/src/lib/ldap/base.c +++ b/src/lib/ldap/base.c @@ -859,9 +859,15 @@ unlang_action_t fr_ldap_trunk_search(rlm_rcode_t *p_result, query = fr_ldap_search_alloc(ctx, base_dn, scope, filter, attrs, serverctrls, clientctrls); - if (fr_trunk_request_enqueue(&query->treq, ttrunk->trunk, request, query, NULL) != FR_TRUNK_ENQUEUE_OK) { + switch (fr_trunk_request_enqueue(&query->treq, ttrunk->trunk, request, query, NULL)) { + case FR_TRUNK_ENQUEUE_OK: + case FR_TRUNK_ENQUEUE_IN_BACKLOG: + break; + + default: error: *p_result = RLM_MODULE_FAIL; + *out = NULL; talloc_free(query); return UNLANG_ACTION_FAIL; } @@ -917,8 +923,14 @@ unlang_action_t fr_ldap_trunk_modify(rlm_rcode_t *p_result, query = fr_ldap_modify_alloc(ctx, dn, mods, serverctrls, clientctrls); - if (fr_trunk_request_enqueue(&query->treq, ttrunk->trunk, request, query, NULL) != FR_TRUNK_ENQUEUE_OK) { + switch (fr_trunk_request_enqueue(&query->treq, ttrunk->trunk, request, query, NULL)) { + case FR_TRUNK_ENQUEUE_OK: + case FR_TRUNK_ENQUEUE_IN_BACKLOG: + break; + + default: error: + *out = NULL; *p_result = RLM_MODULE_FAIL; talloc_free(query); return UNLANG_ACTION_FAIL;