Backport ALPN to v4.x LTS
Checklist
-
make -j4 test
(UNIX), orvcbuild test
(Windows) passes -
tests and/or benchmarks are included -
documentation is changed or added -
commit message follows commit guidelines
Affected core subsystem(s)
tls,crypto
As listed in https://github.com/nodejs/LTS/issues/177, this backports the ALPN feature to v4.x LTS by cherry-picking four commits of 802a2e79, 7eee3725, 65030c77 and c26b9af1 from v6-staging with resolving several conflicts.
/CC @nodejs/crypto @MylesBorins