diff options
author | Vladimir Homutov <vl@nginx.com> | 2021-10-15 10:02:15 +0300 |
---|---|---|
committer | Vladimir Homutov <vl@nginx.com> | 2021-10-15 10:02:15 +0300 |
commit | 1db517fb71aed6d6fffc8347086f89eb29b83dea (patch) | |
tree | ac2416b0a3d2f2416e570cd3e1fe003f76185814 /src/http/ngx_http_request.c | |
parent | dde319ee0c9de26a6f104feb062cfffaa32c16c0 (diff) | |
download | nginx-1db517fb71aed6d6fffc8347086f89eb29b83dea.tar.gz nginx-1db517fb71aed6d6fffc8347086f89eb29b83dea.zip |
HTTP/2: removed support for NPN.
NPN was replaced with ALPN, published as RFC 7301 in July 2014.
It used to negotiate SPDY (and, in transition, HTTP/2).
NPN supported appeared in OpenSSL 1.0.1. It does not work with TLSv1.3 [1].
ALPN is supported since OpenSSL 1.0.2.
The NPN support was dropped in Firefox 53 [2] and Chrome 51 [3].
[1] https://github.com/openssl/openssl/issues/3665.
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=1248198
[3] https://www.chromestatus.com/feature/5767920709795840
Diffstat (limited to 'src/http/ngx_http_request.c')
-rw-r--r-- | src/http/ngx_http_request.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c index bf931bf35..76bbcd67c 100644 --- a/src/http/ngx_http_request.c +++ b/src/http/ngx_http_request.c @@ -806,8 +806,7 @@ ngx_http_ssl_handshake_handler(ngx_connection_t *c) c->ssl->no_wait_shutdown = 1; #if (NGX_HTTP_V2 \ - && (defined TLSEXT_TYPE_application_layer_protocol_negotiation \ - || defined TLSEXT_TYPE_next_proto_neg)) + && defined TLSEXT_TYPE_application_layer_protocol_negotiation) { unsigned int len; const unsigned char *data; @@ -817,19 +816,8 @@ ngx_http_ssl_handshake_handler(ngx_connection_t *c) if (hc->addr_conf->http2) { -#ifdef TLSEXT_TYPE_application_layer_protocol_negotiation SSL_get0_alpn_selected(c->ssl->connection, &data, &len); -#ifdef TLSEXT_TYPE_next_proto_neg - if (len == 0) { - SSL_get0_next_proto_negotiated(c->ssl->connection, &data, &len); - } -#endif - -#else /* TLSEXT_TYPE_next_proto_neg */ - SSL_get0_next_proto_negotiated(c->ssl->connection, &data, &len); -#endif - if (len == 2 && data[0] == 'h' && data[1] == '2') { ngx_http_v2_init(c->read); return; |