BUG/MINOR: tarpit: fix condition to return the HTTP 500 message

Commit fa7e1025 (1.3.16-rc1) introduced a minor bug by comparing req->flags
with BF_READ_ERROR instead of checking for the bit. The result is that the
error message is always returned even in case of client error. This has no
real impact but this must be fixed.

It may be backported to 1.4 and 1.3.
This commit is contained in:
Willy Tarreau 2012-07-23 10:55:43 +02:00
parent 65c1796c4a
commit dae2a8a5a5

View File

@ -3540,7 +3540,7 @@ int http_process_tarpit(struct session *s, struct buffer *req, int an_bit)
s->logs.t_queue = tv_ms_elapsed(&s->logs.tv_accept, &now); s->logs.t_queue = tv_ms_elapsed(&s->logs.tv_accept, &now);
txn->status = 500; txn->status = 500;
if (req->flags != BF_READ_ERROR) if (!(req->flags & BF_READ_ERROR))
stream_int_retnclose(req->prod, error_message(s, HTTP_ERR_500)); stream_int_retnclose(req->prod, error_message(s, HTTP_ERR_500));
req->analysers = 0; req->analysers = 0;