MINOR: connection: and new flag to mark end of input (EOI)
authorChristopher Faulet <cfaulet@haproxy.com>
Fri, 22 Mar 2019 13:05:52 +0000 (14:05 +0100)
committerWilly Tarreau <w@1wt.eu>
Mon, 25 Mar 2019 05:24:25 +0000 (06:24 +0100)
commit5311a9255d70d5121418a02dce0dbb2e24f9935c
tree30d2936a5b69cba4ed69f0e91b60530c7dce6c57
parent3ab07c35b449faaea11fadf7891a24d71258d37d
MINOR: connection: and new flag to mark end of input (EOI)

Since the begining, in the H2 multiplexer, when the end of a message is reached,
the flag CS_FL_(R)EOS is set on the conn_stream to notify the upper layer that
all data were received and consumed and there is no longer any expected. The
stream-interface converts it into a shutdown read. But it leads to some
ambiguities with the real shutr. Once it was reported at the end of the message,
there is no way to report it when the read0 is received. For this reason, aborts
after the message was fully received cannot be reported. And on the channel
side, it is hard to make the difference between a shutr because the end of the
message was reached and a shutr because of an abort.

For these reasons, there is now a flag to mark the end of the message. It is
called CS_FL_EOI (end-of-input) because it is only used on the receipt path.
This flag is only declared and not used yet.

This patch will be used by future bug fixes and will have to be backported
to 1.9.
include/types/connection.h