summaryrefslogtreecommitdiffhomepage
path: root/src/event/ngx_event_quic.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/event/ngx_event_quic.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/event/ngx_event_quic.c b/src/event/ngx_event_quic.c
index d72052c82..16035bfb5 100644
--- a/src/event/ngx_event_quic.c
+++ b/src/event/ngx_event_quic.c
@@ -413,20 +413,20 @@ ngx_quic_add_handshake_data(ngx_ssl_conn_t *ssl_conn,
*/
#if defined(TLSEXT_TYPE_application_layer_protocol_negotiation)
- {
- unsigned int len;
- const unsigned char *data;
+ if (qc->conf->require_alpn) {
+ unsigned int len;
+ const unsigned char *data;
- SSL_get0_alpn_selected(c->ssl->connection, &data, &len);
+ SSL_get0_alpn_selected(c->ssl->connection, &data, &len);
- if (len == 0) {
- qc->error = 0x100 + SSL_AD_NO_APPLICATION_PROTOCOL;
- qc->error_reason = "unsupported protocol in ALPN extension";
+ if (len == 0) {
+ qc->error = 0x100 + SSL_AD_NO_APPLICATION_PROTOCOL;
+ qc->error_reason = "unsupported protocol in ALPN extension";
- ngx_log_error(NGX_LOG_INFO, c->log, 0,
- "quic unsupported protocol in ALPN extension");
- return 0;
- }
+ ngx_log_error(NGX_LOG_INFO, c->log, 0,
+ "quic unsupported protocol in ALPN extension");
+ return 0;
+ }
}
#endif
@@ -3882,6 +3882,7 @@ ngx_quic_create_stream(ngx_connection_t *c, uint64_t id, size_t rcvbuf_size)
}
sn->c->qs = sn;
+ sn->c->type = SOCK_STREAM;
sn->c->pool = pool;
sn->c->ssl = c->ssl;
sn->c->sockaddr = c->sockaddr;