Hi Christopher, On 21/10/2026 at 21:47, Christopher Faulet wrote: > Yes, you can add http_reset() call into do_l7_retry() and update the > doc. Thanks ! Good point about calls to channel_start_analyze() on > each retry. I guess we must keep it because it is performed after the > connection is established.
Thanks, I will send a patch which calls http_reset() in do_l7_retry(), for the response only, as described in my previous mail, and which updates the filters documentation. It will also mention that channel_start_analyze() is called again on the response channel after a L7 retry, so that a filter is not surprised by it. > At first glance, back_handle_st_req() is better because on retry, it > will not be called again, except on redispatch. And I prefer to not > add more dependencies on the stream in connect_server(). Thanks for the explanation. In the meantime, the cloudauth filter moved to its own repository and no longer needs a new callback: it signs the request in its http_headers callback, once the HTTP rules were evaluated. The signature does not depend on the server, since the filter sets the Host header itself, so it remains valid on redispatches and on L7 retries, where the request is sent again as is. A failure stops the request there with a 503. So I would drop the http_pre_send callback for now. If a filter which needs the selected server comes later, I will keep in mind back_handle_st_req() after srv_redispatch_connect(), and your remark about the channel output when the HTX message is altered there. > I saw your repository. It is a good idea to work in a dedicated > repository for now indeed. Great, I will continue there: https://github.com/git001/haproxy-cloudauth It builds against an unmodified master as an addon (EXTRA_MAKE), and uses the new filter-config API. Regards, Aleks

