diff -r -u python-nss-0.16.0.orig/doc/examples/ssl_version_range.py python-nss-0.16.0/doc/examples/ssl_version_range.py
--- python-nss-0.16.0.orig/doc/examples/ssl_version_range.py 2014-11-25 12:20:58.744325434 -0500
+++ python-nss-0.16.0/doc/examples/ssl_version_range.py 2014-11-25 14:50:42.530189512 -0500
@@ -96,13 +96,12 @@
names = [
'ssl2', 'ssl3',
- 'tls1.0', 'tls1.1', 'tls1.2', 'tls1.3',
+ 'tls1.0', 'tls1.1', 'tls1.2',
'SSL_LIBRARY_VERSION_2',
'SSL_LIBRARY_VERSION_3_0',
'SSL_LIBRARY_VERSION_TLS_1_0',
'SSL_LIBRARY_VERSION_TLS_1_1',
'SSL_LIBRARY_VERSION_TLS_1_2',
- 'SSL_LIBRARY_VERSION_TLS_1_3',
]
print
diff -r -u python-nss-0.16.0.orig/src/py_ssl.c python-nss-0.16.0/src/py_ssl.c
--- python-nss-0.16.0.orig/src/py_ssl.c 2014-11-25 12:20:58.766325459 -0500
+++ python-nss-0.16.0/src/py_ssl.c 2014-11-25 14:49:47.032128344 -0500
@@ -193,9 +193,11 @@
case 3:
version_enum = SSL_LIBRARY_VERSION_TLS_1_2;
break;
+#if (NSS_VMAJOR > 3) || (NSS_VMAJOR == 3 && NSS_VMINOR >= 17)
case 4:
version_enum = SSL_LIBRARY_VERSION_TLS_1_3;
break;
+#endif
default:
PyErr_Format(PyExc_ValueError,
"Verson %d.%d has unkown minor version",
@@ -4411,7 +4413,9 @@
ExportConstant(SSL_LIBRARY_VERSION_TLS_1_0);
ExportConstant(SSL_LIBRARY_VERSION_TLS_1_1);
ExportConstant(SSL_LIBRARY_VERSION_TLS_1_2);
+#if (NSS_VMAJOR > 3) || (NSS_VMAJOR == 3 && NSS_VMINOR >= 17)
ExportConstant(SSL_LIBRARY_VERSION_TLS_1_3);
+#endif
if ((ssl_library_version_alias_to_value = PyDict_New()) == NULL) {
@@ -4430,7 +4434,9 @@
ExportConstantAlias(SSL_LIBRARY_VERSION_TLS_1_0, "tls1.0");
ExportConstantAlias(SSL_LIBRARY_VERSION_TLS_1_1, "tls1.1");
ExportConstantAlias(SSL_LIBRARY_VERSION_TLS_1_2, "tls1.2");
+#if (NSS_VMAJOR > 3) || (NSS_VMAJOR == 3 && NSS_VMINOR >= 17)
ExportConstantAlias(SSL_LIBRARY_VERSION_TLS_1_3, "tls1.3");
+#endif
#undef ExportConstant
@@ -4639,7 +4645,9 @@
/* TLS_FALLBACK_SCSV is a signaling cipher suite value that indicates that a
* handshake is the result of TLS version fallback.
*/
+#if (NSS_VMAJOR > 3) || (NSS_VMAJOR == 3 && NSS_VMINOR >= 17)
ExportConstant(TLS_FALLBACK_SCSV);
+#endif
/* Cipher Suite Values starting with 0xC000 are defined in informational
* RFCs.
diff -r -u python-nss-0.16.0.orig/src/SSLerrs.h python-nss-0.16.0/src/SSLerrs.h
--- python-nss-0.16.0.orig/src/SSLerrs.h 2014-11-25 12:20:58.766325459 -0500
+++ python-nss-0.16.0/src/SSLerrs.h 2014-11-25 14:49:47.033128345 -0500
@@ -419,6 +419,8 @@
ER3(SSL_ERROR_NEXT_PROTOCOL_NO_PROTOCOL, (SSL_ERROR_BASE + 130),
"The server supports no protocols that the client advertises in the ALPN extension.")
+#if (NSS_VMAJOR > 3) || (NSS_VMAJOR == 3 && NSS_VMINOR >= 17)
ER3(SSL_ERROR_INAPPROPRIATE_FALLBACK_ALERT, (SSL_ERROR_BASE + 131),
"The server rejected the handshake because the client downgraded to a lower "
"TLS version than the server supports.")
+#endif