aboutsummaryrefslogtreecommitdiff
path: root/src/stream/ngx_stream_handler.c
diff options
context:
space:
mode:
authorRoman Arutyunyan <arut@nginx.com>2020-07-21 23:08:39 +0300
committerRoman Arutyunyan <arut@nginx.com>2020-07-21 23:08:39 +0300
commit36f2873f6b0d8512c053935614fcc6ae9d969858 (patch)
tree5d50f945509b360aeeca15487cb9d28f6a9b09e1 /src/stream/ngx_stream_handler.c
parentb813b9ec358862a2a94868bc057420d6eca5c05d (diff)
downloadnginx-36f2873f6b0d8512c053935614fcc6ae9d969858.tar.gz
nginx-36f2873f6b0d8512c053935614fcc6ae9d969858.zip
QUIC: added "quic" listen parameter in Stream.
Also, introduced ngx_stream_quic_module.
Diffstat (limited to 'src/stream/ngx_stream_handler.c')
-rw-r--r--src/stream/ngx_stream_handler.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/stream/ngx_stream_handler.c b/src/stream/ngx_stream_handler.c
index 669b6a18d..672de85ac 100644
--- a/src/stream/ngx_stream_handler.c
+++ b/src/stream/ngx_stream_handler.c
@@ -115,6 +115,27 @@ ngx_stream_init_connection(ngx_connection_t *c)
}
}
+#if (NGX_STREAM_QUIC)
+
+ if (addr_conf->quic) {
+ ngx_quic_conf_t *qcf;
+ ngx_stream_ssl_conf_t *scf;
+
+ if (c->qs == NULL) {
+ c->log->connection = c->number;
+
+ qcf = ngx_stream_get_module_srv_conf(addr_conf->ctx,
+ ngx_stream_quic_module);
+ scf = ngx_stream_get_module_srv_conf(addr_conf->ctx,
+ ngx_stream_ssl_module);
+
+ ngx_quic_run(c, &scf->ssl, qcf, ngx_stream_init_connection);
+ return;
+ }
+ }
+
+#endif
+
s = ngx_pcalloc(c->pool, sizeof(ngx_stream_session_t));
if (s == NULL) {
ngx_stream_close_connection(c);