mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-21 13:51:26 +02:00
MINOR: mux-h1: Set hdrs_bytes on the SL when an HTX message is produced
This commit is contained in:
parent
33543e73a2
commit
a39d8ad086
11
src/mux_h1.c
11
src/mux_h1.c
@ -956,9 +956,11 @@ static void h1_handle_1xx_response(struct h1s *h1s, struct h1m *h1m)
|
||||
static size_t h1_process_headers(struct h1s *h1s, struct h1m *h1m, struct htx *htx,
|
||||
struct buffer *buf, size_t *ofs, size_t max)
|
||||
{
|
||||
struct htx_sl *sl;
|
||||
struct http_hdr hdrs[MAX_HTTP_HDR];
|
||||
union h1_sl h1sl;
|
||||
unsigned int flags = HTX_SL_F_NONE;
|
||||
size_t used;
|
||||
int ret = 0;
|
||||
|
||||
if (!max || !b_data(buf))
|
||||
@ -1065,9 +1067,8 @@ static size_t h1_process_headers(struct h1s *h1s, struct h1m *h1m, struct htx *h
|
||||
flags |= HTX_SL_F_BODYLESS;
|
||||
}
|
||||
|
||||
used = htx_used_space(htx);
|
||||
if (!(h1m->flags & H1_MF_RESP)) {
|
||||
struct htx_sl *sl;
|
||||
|
||||
if (h1_eval_htx_req_size(h1m, &h1sl, hdrs) > max)
|
||||
goto error;
|
||||
|
||||
@ -1077,8 +1078,6 @@ static size_t h1_process_headers(struct h1s *h1s, struct h1m *h1m, struct htx *h
|
||||
sl->info.req.meth = h1s->meth;
|
||||
}
|
||||
else {
|
||||
struct htx_sl *sl;
|
||||
|
||||
if (h1_eval_htx_res_size(h1m, &h1sl, hdrs) > max)
|
||||
goto error;
|
||||
|
||||
@ -1089,6 +1088,10 @@ static size_t h1_process_headers(struct h1s *h1s, struct h1m *h1m, struct htx *h
|
||||
sl->info.res.status = h1s->status;
|
||||
}
|
||||
|
||||
/* Set bytes used in the HTX mesage for the headers now */
|
||||
sl->hdrs_bytes = htx_used_space(htx) - used;
|
||||
|
||||
|
||||
if (h1m->state == H1_MSG_DONE) {
|
||||
if (!htx_add_endof(htx, HTX_BLK_EOM))
|
||||
goto error;
|
||||
|
Loading…
x
Reference in New Issue
Block a user