mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-17 17:04:35 +00:00
BUG/MEDIUM: http: 100-continue responses must process the next part immediately
Since commit d7ad9f5
("MAJOR: channel: add a new flag CF_WAKE_WRITE to
notify the task of writes"), we got another bug with 100-continue responses.
If the final response comes in the same packet as the 100, then the rest of
the buffer is not processed since there is no wake-up event.
In fact the change above uncoverred the real culprit which is more
likely session.c which should detect that an earlier analyser was set
and should loop back to it.
A cleaner fix would be better, but setting the flag works fine.
This issue was introduced in 1.5-dev22, no backport is needed.
This commit is contained in:
parent
efdf094df2
commit
4d1f128a18
@ -5932,6 +5932,7 @@ int http_process_res_common(struct session *t, struct channel *rep, int an_bit,
|
||||
txn->status = 0;
|
||||
t->logs.t_data = -1; /* was not a response yet */
|
||||
rep->analysers |= AN_RES_WAIT_HTTP | an_bit;
|
||||
rep->flags |= CF_WAKE_WRITE;
|
||||
return 1;
|
||||
}
|
||||
else if (unlikely(txn->status < 200))
|
||||
|
Loading…
Reference in New Issue
Block a user