-
Notifications
You must be signed in to change notification settings - Fork 562
ALPN Status
David Benjamin edited this page Feb 16, 2016
·
33 revisions
This page tracks implementation status of ALPN.
| Language | Library | Status | Notes |
|---|---|---|---|
| C | OpenSSL | released | as of 1.0.2 |
| C | GnuTLS | released | as of 3.2.0 |
| C | NSS | released | client and server support |
| C | PolarSSL | released | since 1.3.6 |
| Python | native | in 3.5 and 2.7.10 | OpenSSL based |
| Python | tlslite | requested | |
| Python | pyOpenSSL | released | 0.15.0, with cryptography 0.9 |
| Go | native | released | as of 1.4 |
| C++ | yaSSL | requested | |
| JavaScript | NodeJS | released | as of 5.0.0 |
| Ruby | native | released | as of 2.3.0, OpenSSL-based |
| C | SChannel | released | Added in Windows 8.1 / Server 2012 R2 |
| Java | android | released | Added in Android 4.4 |
| Java | jetty | released | |
| Haskell | warp hackage | released | |
| Lua | luaossl | released | Added in 20150422 |
Note that some client implementations deal very poorly if a server sends both ALPN and NPN in the ServerHello. When a server responds negotiating a protocol via ALPN in the ServerHello, it must not also send a list of protocols for NPN negotiation as well.
NOTE: All contributions are made under these terms.