]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MEDIUM: stream-int: always mark pending outgoing SI_ST_CON
authorWilly Tarreau <w@1wt.eu>
Wed, 23 Jan 2019 14:15:09 +0000 (15:15 +0100)
committerWilly Tarreau <w@1wt.eu>
Thu, 24 Jan 2019 18:06:43 +0000 (19:06 +0100)
commitbf66bd1b8baf4e35d9be3655fe61eb6d017b0cfd
treeb94a58c32699dadfd2f6a2770d375e50dead1f7f
parente9634bdc224c9c56854766647207e4f1b000f713
MEDIUM: stream-int: always mark pending outgoing SI_ST_CON

Before the first send() attempt, we should be in SI_ST_CON, not
SI_ST_EST, since we have not yet attempted to send and we are
allowed to retry. This is particularly important with complex
outgoing muxes which can fail during the first send attempt (e.g.
failed stream ID allocation).

It only requires that sess_update_st_con_tcp() knows about this
possibility, as we must not forcefully close a reused connection
when facing an error in this case, this will be handled later.

This may be backported to 1.9 with care after some observation period.
include/proto/stream_interface.h
src/stream.c