]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: h2: create the h2s struct and the associated pool
authorWilly Tarreau <w@1wt.eu>
Wed, 11 Oct 2017 05:57:07 +0000 (07:57 +0200)
committerWilly Tarreau <w@1wt.eu>
Tue, 31 Oct 2017 17:03:24 +0000 (18:03 +0100)
commit183126488b7b749ab60f5e4963fc854f5f680981
tree60a6f34746345a4b1c95202c2c8e4753a19ace99
parent5ab6b57c6f35f33be594b8137847e25e07222ff2
MINOR: h2: create the h2s struct and the associated pool

This describes an HTTP/2 stream with its relation to the connection
and to the conn_stream on the other side.

For now we also allocate request and response state for HTTP/1 because
the internal HTTP representation is HTTP/1 at the moment. Later this
should evolve towards a version-agnostic representation and this H1
message state will disappear.

It's important to consider that the streams are necessarily polarized
depending on h2c : if the connection is incoming, streams initiated by
the connection receive requests and send responses. Otherwise it's the
other way around. Such information is known during the connection
instanciation by h2c_frt_init() and will normally be reflected in the
stream ID (odd=demux from client, even=demux from server). The initial
H2_CS_PREFACE state will also depend on the direction. The current h2c
state machine doesn't allow for outgoing connections as it uses a single
state for both (rx state only). It should be the demux state only.
src/mux_h2.c