BUG/MEDIUM: bwlim: Reset analyse expiration date when then channel analyse ends

The bandwidth limitation filter sets the analyse expiration date on the
channel to restart the data forwarding and thus limit the bandwidth.
However, this expiration date is not reset on abort. So it is possible to
reuse the same expiration date to set the stream one. If it expired before
the end of the stream, this will lead to a spinning loop on process_stream()
because the task expiration date is always set in past.

To fix the issue, when the analyse ends on a channel, the bandwidth
limitation filter reset the corrsponding analyse expiration date.

This patch should fix the issue #2230. It must be backported as far as 2.7.

(cherry picked from commit f1bf0b1a6bafedf807d91643b6a09120d2a57e18)
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
1 file changed