diff options
author | Daniel Stenberg <daniel@haxx.se> | 2020-08-03 12:19:09 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2020-08-03 23:43:24 +0200 |
commit | 7f187d897c000ea64d38aa29026a7837a88427df (patch) | |
tree | 7ff19bfbdcf179d426539bf10e033e6de537cd8e /lib/http.h | |
parent | 8297978c21646588711000c20aa3f7eaef677e03 (diff) | |
download | curl-7f187d897c000ea64d38aa29026a7837a88427df.tar.gz |
h2: repair trailer handling
The previous h2 trailer fix in 54a2b63 was wrong and caused a
regression: it cannot deal with trailers immediately when read since
they may be read off the connection by the wrong 'data' owner.
This change reverts the logic back to gathering all trailers into a
single buffer, like before 54a2b63.
Reported-by: Tadej Vengust
Fixes #5663
Closes #5769
Diffstat (limited to 'lib/http.h')
-rw-r--r-- | lib/http.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/http.h b/lib/http.h index 641bc0b93..9ea3eb283 100644 --- a/lib/http.h +++ b/lib/http.h @@ -148,6 +148,7 @@ struct HTTP { struct dynbuf header_recvbuf; size_t nread_header_recvbuf; /* number of bytes in header_recvbuf fed into upper layer */ + struct dynbuf trailer_recvbuf; int status_code; /* HTTP status code */ const uint8_t *pausedata; /* pointer to data received in on_data_chunk */ size_t pauselen; /* the number of bytes left in data */ |