diff options
author | Stefan Eissing <icing@apache.org> | 2023-06-13 16:36:43 +0200 |
---|---|---|
committer | Stefan Eissing <icing@apache.org> | 2023-06-13 16:36:43 +0200 |
commit | ccf4365117ef1df09334d02a3ee9e3bb329b8360 (patch) | |
tree | 9d26ee90546de433f0c7847a6902c3c64936685c /modules/http2/h2_stream.h | |
parent | Arrange ap_h1_response_out_filter() according to include/mod_core.h. (diff) | |
download | apache2-ccf4365117ef1df09334d02a3ee9e3bb329b8360.tar.xz apache2-ccf4365117ef1df09334d02a3ee9e3bb329b8360.zip |
*) mod_http2: fixed a bug that could lead to a crash in main connection
output handling. This occured only when the last request on a HTTP/2
connection had been processed and the session decided to shut down.
This could lead to an attempt to send a final GOAWAY while the previous
write was still in progress. See PR 66646.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1910386 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'modules/http2/h2_stream.h')
-rw-r--r-- | modules/http2/h2_stream.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/modules/http2/h2_stream.h b/modules/http2/h2_stream.h index 695d56ac5e..638dbdac0d 100644 --- a/modules/http2/h2_stream.h +++ b/modules/http2/h2_stream.h @@ -63,7 +63,22 @@ typedef struct h2_stream_monitor { trigger a state change */ } h2_stream_monitor; +#ifdef AP_DEBUG +#define H2_STRM_MAGIC_OK 0x5354524d +#define H2_STRM_MAGIC_SDEL 0x5344454c +#define H2_STRM_MAGIC_PDEL 0x5044454c + +#define H2_STRM_ASSIGN_MAGIC(s,m) ((s)->magic = m) +#define H2_STRM_ASSERT_MAGIC(s,m) ap_assert((s)->magic == m) +#else +#define H2_STRM_ASSIGN_MAGIC(s,m) ((void)0) +#define H2_STRM_ASSERT_MAGIC(s,m) ((void)0) +#endif + struct h2_stream { +#ifdef AP_DEBUG + uint32_t magic; +#endif int id; /* http2 stream identifier */ int initiated_on; /* initiating stream id (PUSH) or 0 */ apr_pool_t *pool; /* the memory pool for this stream */ |