1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-09 00:00:04 +01:00

h2: make sure we see END_STREAM with END_HEADERS on client

This commit is contained in:
Andy Green 2021-01-15 19:53:55 +00:00
parent c403b129ad
commit 9be508bdd7
2 changed files with 8 additions and 7 deletions

View file

@ -1300,6 +1300,13 @@ lws_h2_parse_frame_header(struct lws *wsi)
assert(w->mux.sibling_list != w);
} lws_end_foreach_ll(w, mux.sibling_list);
h2n->cont_exp = !(h2n->flags & LWS_H2_FLAG_END_HEADERS);
h2n->cont_exp_sid = h2n->sid;
h2n->cont_exp_headers = 1;
// lws_header_table_reset(h2n->swsi, 0);
update_end_headers:
if (lws_check_opt(h2n->swsi->a.vhost->options,
LWS_SERVER_OPTION_VH_H2_HALF_CLOSED_LONG_POLL)) {
@ -1319,12 +1326,6 @@ lws_h2_parse_frame_header(struct lws *wsi)
h2n->swsi->h2.END_STREAM);
}
h2n->cont_exp = !(h2n->flags & LWS_H2_FLAG_END_HEADERS);
h2n->cont_exp_sid = h2n->sid;
h2n->cont_exp_headers = 1;
// lws_header_table_reset(h2n->swsi, 0);
update_end_headers:
/* no END_HEADERS means CONTINUATION must come */
h2n->swsi->h2.END_HEADERS =
!!(h2n->flags & LWS_H2_FLAG_END_HEADERS);

View file

@ -493,7 +493,7 @@ callback_ss_proxy(struct lws *wsi, enum lws_callback_reasons reason,
n = 8;
lws_ser_wu32be((uint8_t *)&s[4], conn->ss->policy->client_buflen);
lws_ser_wu32be((uint8_t *)&s[4], conn->ss ? conn->ss->policy->client_buflen : 0);
/*
* If there's rideshare sequencing, it's added after the