From 7a57e8a67a4f3fdbd50faa51fb05fba573f3cd2a Mon Sep 17 00:00:00 2001 From: Olivier Houchard Date: Tue, 27 Nov 2018 17:36:33 +0100 Subject: [PATCH] MEDIUM: mux-h2: Implement h2_attach(). Implement h2_attach(), so that we can have multiple streams in one outgoin h2 connection. --- src/mux_h2.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/mux_h2.c b/src/mux_h2.c index 64dbc5adc..b5bef0323 100644 --- a/src/mux_h2.c +++ b/src/mux_h2.c @@ -2721,7 +2721,19 @@ static struct task *h2_timeout_task(struct task *t, void *context, unsigned shor */ static struct conn_stream *h2_attach(struct connection *conn) { - return NULL; + struct conn_stream *cs; + struct h2s *h2s; + struct h2c *h2c = conn->mux_ctx; + + cs = cs_new(conn); + if (!cs) + return NULL; + h2s = h2c_bck_stream_new(h2c, cs); + if (!h2s) { + cs_free(cs); + return NULL; + } + return cs; } /* Retrieves the first valid conn_stream from this connection, or returns NULL.