Rationale: NPN has been superseded by ALPN. Chrome dropped support a year ago in Chrome 51. It's not needed for HTTP/2.
Strawman proposal:
- deprecate
tls.convertNPNProtocols() in node 9 (or now - it's undocumented)
- warn on
NPNProtocols option or access of .npnProtocol property in node 9?
- remove in node 10
Backwards compatibility concerns:
- OpenSSL < 1.0.2 supports NPN but not ALPN. Doesn't affect Node.js itself but there might be interoperability issues with TLS-based services that are linked to obsolete versions of OpenSSL.
Chrome already paved the way, though. I don't see it as a serious concern.
cc @nodejs/security
Rationale: NPN has been superseded by ALPN. Chrome dropped support a year ago in Chrome 51. It's not needed for HTTP/2.
Strawman proposal:
tls.convertNPNProtocols()in node 9 (or now - it's undocumented)NPNProtocolsoption or access of.npnProtocolproperty in node 9?Backwards compatibility concerns:
Chrome already paved the way, though. I don't see it as a serious concern.
cc @nodejs/security