]> git.kaiwu.me - haproxy.git/commit
BUG/MEDIUM: acme: Set HTTPCLIENT_O_RES_ACCUM option on the http-client
authorChristopher Faulet <cfaulet@haproxy.com>
Wed, 16 Sep 2026 07:19:21 +0000 (09:19 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Fri, 18 Sep 2026 14:50:30 +0000 (16:50 +0200)
commit37b48cb0923e4a5b413eac3fd52328acc6493d53
treee113c58ecaa0534d8c96e3867dd79c799b086dbe
parent31d6f02eba69b72db747ca5296319cb2da349e01
BUG/MEDIUM: acme: Set HTTPCLIENT_O_RES_ACCUM option on the http-client

The ACME task does not consume the response payload on the fly. It waits for
the end of the response to parse the JSON object stored in the http-client
response buffer.

Thus, since commit b24260ec9 ("BUG/MEDIUM: http-client: Only consume input
buffer when hc one is empty"), the http-client applet stops to consume data
as soon as the first part of the payload is stored in its response buffer,
waiting for the caller to consume it. But it never happens. So, when the
response is not received in one time, the ACME task is stuck till the server
timeout expiration.

The HTTPCLIENT_O_RES_ACCUM option is now set to instruct the http-client to
continue to fill its response buffer.

This patch depends on :

  * BUG/MEDIUM: http-client: Don't use the httpclient context if it was released
  * MINOR: http-client: Add an option to not stop the reception of the response

It must be backported as far as 3.3 with commit b24260ec9.
src/acme.c