]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
docs/DEPRECATE: remove NPN support in August 2022
authorDaniel Stenberg <daniel@haxx.se>
Wed, 16 Feb 2022 10:22:25 +0000 (11:22 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 17 Feb 2022 07:25:35 +0000 (08:25 +0100)
Closes #8458

docs/DEPRECATE.md

index 02c48bce5160545d01d701dcb9d951afdba8f7ca..8b7e37dfa3d8096d88829f63f855fc4c9b199cd2 100644 (file)
@@ -19,6 +19,26 @@ We remove support for building curl with the NSS TLS library in August 2022.
 Starting in 7.82.0, building curl to use NSS configure requires the additional
 flag --with-nss-deprecated in an attempt to highlight these plans.
 
+## NPN
+
+We make selecting NPN a no-op starting in August 2022.
+
+**Next Protocol Negotiation** is a TLS extension that was created and used for
+agreeing to use the SPDY protocol (the precursor to HTTP/2) for HTTPS. In the
+early days of HTTP/2, before the spec was finalized and shipped, the protocol
+could be enabled using this extension with some servers.
+
+curl supports the NPN extension with some TLS backends since then, with a
+command line option `--npn` and in libcurl with `CURLOPT_SSL_ENABLE_NPN`.
+
+HTTP/2 proper is made to use the ALPN (Application-Layer Protocol Negotiation)
+extension and the NPN extension has no purposes anymore. The HTTP/2 spec was
+published in May 2015.
+
+Today, use of NPN in the wild should be extremely rare and most likely totally
+extinct. Chrome removed NPN support in Chrome 51, shipped in
+June 2016. Removed in Firefox 53, April 2017.
+
 ## past removals
 
  - Pipelining