mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-08-07 23:56:57 +02:00
[BUG] http_process_res_common() must not skip the forward analyser
By default this function returned 0 indicating an end of analysis. This was not a problem as long as it was the last analyser in the chain but becomes quite a big one now since it skips the forwarder with auto_close enabled, causing some data to pass under the nose of the last one undetected.
This commit is contained in:
parent
610ecceef9
commit
e3fa6e5bd7
@ -4267,10 +4267,9 @@ int http_wait_for_response(struct session *s, struct buffer *rep, int an_bit)
|
||||
}
|
||||
|
||||
/* This function performs all the processing enabled for the current response.
|
||||
* It normally returns zero, but may return 1 if it absolutely needs to be
|
||||
* called again after other functions. It relies on buffers flags, and updates
|
||||
* t->rep->analysers. It might make sense to explode it into several other
|
||||
* functions. It works like process_request (see indications above).
|
||||
* It normally returns 1 unless it wants to break. It relies on buffers flags,
|
||||
* and updates t->rep->analysers. It might make sense to explode it into several
|
||||
* other functions. It works like process_request (see indications above).
|
||||
*/
|
||||
int http_process_res_common(struct session *t, struct buffer *rep, int an_bit, struct proxy *px)
|
||||
{
|
||||
@ -4644,9 +4643,9 @@ int http_process_res_common(struct session *t, struct buffer *rep, int an_bit, s
|
||||
* otherwise we would not let the client side wake up.
|
||||
*/
|
||||
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* This function is an analyser which forwards response body (including chunk
|
||||
|
Loading…
Reference in New Issue
Block a user