From ecb9dcdf932034f0a8aa084609f1e385a94a40db Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Thu, 3 Jan 2019 12:00:17 +0100 Subject: [PATCH] MINOR: mux-h2: add a new dummy stream : h2_error_stream This dummy stream will be used to send stream errors that must not be retried, such as undecodable headers frames. --- src/mux_h2.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/mux_h2.c b/src/mux_h2.c index 2278a4918..d7cf2379d 100644 --- a/src/mux_h2.c +++ b/src/mux_h2.c @@ -29,8 +29,9 @@ #include -/* dummy streams returned for closed, refused, idle and states */ +/* dummy streams returned for closed, error, refused, idle and states */ static const struct h2s *h2_closed_stream; +static const struct h2s *h2_error_stream; static const struct h2s *h2_refused_stream; static const struct h2s *h2_idle_stream; @@ -230,6 +231,16 @@ static const struct h2s *h2_closed_stream = &(const struct h2s){ .id = 0, }; +/* a dmumy closed stream returning a PROTOCOL_ERROR error */ +static const struct h2s *h2_error_stream = &(const struct h2s){ + .cs = NULL, + .h2c = NULL, + .st = H2_SS_CLOSED, + .errcode = H2_ERR_PROTOCOL_ERROR, + .flags = 0, + .id = 0, +}; + /* a dmumy closed stream returning a REFUSED_STREAM error */ static const struct h2s *h2_refused_stream = &(const struct h2s){ .cs = NULL,