Author: rhuijben
Date: Tue Oct 20 23:07:17 2015
New Revision: 1709703
URL: http://svn.apache.org/viewvc?rev=1709703&view=rev
Log:
* protocols/http2_protocol.c
(http2_protocol_teardown): Separate two windows. Move comment
to the right location.
(serf_http2_procotol_state_t): Separate two windows.
Modified:
serf/trunk/protocols/http2_protocol.c
Modified: serf/trunk/protocols/http2_protocol.c
URL:
http://svn.apache.org/viewvc/serf/trunk/protocols/http2_protocol.c?rev=1709703&r1=1709702&r2=1709703&view=diff
==============================================================================
--- serf/trunk/protocols/http2_protocol.c (original)
+++ serf/trunk/protocols/http2_protocol.c Tue Oct 20 23:07:17 2015
@@ -44,7 +44,6 @@ http2_protocol_teardown(serf_connection_
typedef struct serf_http2_stream_t
{
- /* -1 until allocated. Odd is client side initiated, even server side */
struct serf_http2_procotol_state_t *ctx;
/* Linked list of currently existing streams */
@@ -53,7 +52,10 @@ typedef struct serf_http2_stream_t
serf_request_t *request; /* May be NULL as streams may outlive requests */
- apr_int64_t stream_window;
+ apr_int64_t lr_window; /* local->remote */
+ apr_int64_t rl_window; /* remote->local */
+
+ /* -1 until allocated. Odd is client side initiated, even server side */
apr_int32_t streamid;
enum
@@ -74,7 +76,9 @@ typedef struct serf_http2_procotol_state
{
apr_pool_t *pool;
serf_bucket_t *ostream;
- apr_int64_t connection_window;
+
+ apr_int64_t lr_window; /* local->remote */
+ apr_int64_t rl_window; /* remote->local */
apr_int32_t next_local_streamid;
apr_int32_t next_remote_streamid;
@@ -110,7 +114,8 @@ void serf__http2_protocol_init(serf_conn
ctx = apr_pcalloc(protocol_pool, sizeof(*ctx));
ctx->pool = protocol_pool;
ctx->ostream = conn->ostream_tail;
- ctx->connection_window = HTTP2_DEFAULT_WINDOW_SIZE;
+ ctx->lr_window = HTTP2_DEFAULT_WINDOW_SIZE;
+ ctx->rl_window = HTTP2_DEFAULT_WINDOW_SIZE;
ctx->next_local_streamid = 1; /* 2 if we would be the server */
ctx->next_remote_streamid = 2; /* 1 if we would be the client */