﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	uname	nginx_version
2325	Server chooses hq-interop instead of h3	David Hu		"When compiled with `-DNGX_HTTP_V3_HQ=1`
And specified the directives 
{{{
    listen              0.0.0.0:443 http3 reuseport;
    listen              0.0.0.0:443 http2 ssl reuseport;
    listen              [::]:443 http3;
    listen              [::]:443 http2 ssl reuseport;
}}}
in the virtual host block
and
{{{
quic_retry on;
http3_hq on;
http3_push on;
}}}
in the `http` block
Some clients are unable to connect to the server
Debug logs

{{{
2022/02/22 02:41:27 [debug] 27685#0: *99 SSL ALPN supported by client: h3
2022/02/22 02:41:27 [debug] 27685#0: *99 quic ngx_quic_send_alert() level:init alert:120
2022/02/22 02:41:27 [debug] 27685#0: *99 quic SSL_quic_read_level:0 SSL_quic_write_level:0
2022/02/22 02:41:27 [debug] 27685#0: *99 SSL_do_handshake: -1
2022/02/22 02:41:27 [debug] 27685#0: *99 SSL_get_error: 1
2022/02/22 02:41:27 [error] 27685#0: *99 SSL_do_handshake() failed (SSL: error:0A0000EB:SSL routines::no application protocol) while handling frames, client: [REDACTED], server: [::]:443
2022/02/22 02:41:27 [debug] 27685#0: *99 quic packet done rc:-1 level:init decr:1 pn:1 perr:0
2022/02/22 02:41:27 [debug] 27685#0: *99 quic close initiated rc:-1
2022/02/22 02:41:27 [debug] 27685#0: *99 quic close immediate due to error: 376 handshake failed
}}}"	defect	closed	minor		http/3		invalid	http3	David Hu	Linux [REDACTED] 5.16.10-arch1-1 #1 SMP PREEMPT Wed, 16 Feb 2022 19:35:18 +0000 x86_64 GNU/Linux	"nginx version: nginx/1.21.7
built with OpenSSL 3.0.1+quic 14 Dec 2021
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-debug --with-http_ssl_module --with-http_v2_module --with-stream_quic_module --with-http_v3_module --with-cc-opt='-I/usr/local/include/openssl -O0 -DNGX_HTTP_V3_HQ=1' --with-ld-opt=-L/usr/local/lib64"
