OLD | NEW |
1 Name: Network Security Services (NSS) | 1 Name: Network Security Services (NSS) |
2 URL: http://www.mozilla.org/projects/security/pki/nss/ | 2 URL: http://www.mozilla.org/projects/security/pki/nss/ |
3 Version: 3.15.1 | 3 Version: 3.15.4 |
4 Security Critical: Yes | 4 Security Critical: Yes |
5 License: MPL 2 | 5 License: MPL 2 |
6 License File: NOT_SHIPPED | 6 License File: NOT_SHIPPED |
7 | 7 |
8 This directory includes a copy of NSS's libssl from the hg repo at: | 8 This directory includes a copy of NSS's libssl from the hg repo at: |
9 https://hg.mozilla.org/projects/nss | 9 https://hg.mozilla.org/projects/nss |
10 | 10 |
11 The same module appears in crypto/third_party/nss (and third_party/nss on some | 11 The same module appears in crypto/third_party/nss (and third_party/nss on some |
12 platforms), so we don't repeat the license file here. | 12 platforms), so we don't repeat the license file here. |
13 | 13 |
14 The snapshot was updated to the hg tag: NSS_3_15_1_RTM | 14 The snapshot was updated to the hg tag: NSS_3_15_4_RTM |
15 | 15 |
16 Patches: | 16 Patches: |
17 | 17 |
18 * Commenting out a couple of functions because they need NSS symbols | |
19 which may not exist in the system NSS library. | |
20 patches/versionskew.patch | |
21 | |
22 * Send empty renegotiation info extension instead of SCSV unless TLS is | |
23 disabled. | |
24 patches/renegoscsv.patch | |
25 https://bugzilla.mozilla.org/show_bug.cgi?id=549042 | |
26 | |
27 * Cache the peer's intermediate CA certificates in session ID, so that | 18 * Cache the peer's intermediate CA certificates in session ID, so that |
28 they're available when we resume a session. | 19 they're available when we resume a session. |
29 patches/cachecerts.patch | 20 patches/cachecerts.patch |
30 https://bugzilla.mozilla.org/show_bug.cgi?id=731478 | 21 https://bugzilla.mozilla.org/show_bug.cgi?id=731478 |
31 | 22 |
32 * Add the SSL_PeerCertificateChain function | 23 * Add support for client auth with native crypto APIs on Mac and Windows. |
33 patches/peercertchain.patch | |
34 patches/peercertchain2.patch | |
35 https://bugzilla.mozilla.org/show_bug.cgi?id=731485 | |
36 | |
37 * Add support for client auth with native crypto APIs on Mac and Windows | |
38 patches/clientauth.patch | 24 patches/clientauth.patch |
39 ssl/sslplatf.c | 25 ssl/sslplatf.c |
40 | 26 |
41 * Add a function to export whether the last handshake on a socket resumed a | 27 * Add a function to export whether the last handshake on a socket resumed a |
42 previous session. | 28 previous session. |
43 patches/didhandshakeresume.patch | 29 patches/didhandshakeresume.patch |
44 https://bugzilla.mozilla.org/show_bug.cgi?id=731798 | 30 https://bugzilla.mozilla.org/show_bug.cgi?id=731798 |
45 | 31 |
46 * Allow SSL_HandshakeNegotiatedExtension to be called before the handshake | |
47 is finished. | |
48 https://bugzilla.mozilla.org/show_bug.cgi?id=681839 | |
49 patches/negotiatedextension.patch | |
50 | |
51 * Add function to retrieve TLS client cert types requested by server. | 32 * Add function to retrieve TLS client cert types requested by server. |
52 https://bugzilla.mozilla.org/show_bug.cgi?id=51413 | 33 https://bugzilla.mozilla.org/show_bug.cgi?id=51413 |
53 patches/getrequestedclientcerttypes.patch | 34 patches/getrequestedclientcerttypes.patch |
54 | 35 |
55 * Add a function to restart a handshake after a client certificate request. | 36 * Add a function to restart a handshake after a client certificate request. |
56 patches/restartclientauth.patch | 37 patches/restartclientauth.patch |
57 | 38 |
58 * Add support for TLS Channel IDs | 39 * Add support for TLS Channel IDs |
59 patches/channelid.patch | 40 patches/channelid.patch |
60 patches/channelid2.patch | |
61 | 41 |
62 * Add support for extracting the tls-unique channel binding value | 42 * Add support for extracting the tls-unique channel binding value |
63 patches/tlsunique.patch | 43 patches/tlsunique.patch |
64 https://bugzilla.mozilla.org/show_bug.cgi?id=563276 | 44 https://bugzilla.mozilla.org/show_bug.cgi?id=563276 |
65 | 45 |
66 * Define the EC_POINT_FORM_UNCOMPRESSED macro. In NSS 3.13.2 the macro | |
67 definition was moved from the internal header ec.h to blapit.h. When | |
68 compiling against older system NSS headers, we need to define the macro. | |
69 patches/ecpointform.patch | |
70 | |
71 * SSL_ExportKeyingMaterial should get the RecvBufLock and SSL3HandshakeLock. | 46 * SSL_ExportKeyingMaterial should get the RecvBufLock and SSL3HandshakeLock. |
72 This change was made in https://chromiumcodereview.appspot.com/10454066. | 47 This change was made in https://chromiumcodereview.appspot.com/10454066. |
73 patches/secretexporterlocks.patch | 48 patches/secretexporterlocks.patch |
74 | 49 |
75 * Allow the constant-time CBC processing code to be compiled against older | |
76 NSS that doesn't contain the CBC constant-time changes. | |
77 patches/cbc.patch | |
78 https://code.google.com/p/chromium/issues/detail?id=172658#c12 | |
79 TODO(wtc): remove this patch now that NSS 3.14.3 is the minimum | |
80 compile-time and run-time version. | |
81 | |
82 * Change ssl3_SuiteBOnly to always return PR_TRUE. The softoken in NSS | 50 * Change ssl3_SuiteBOnly to always return PR_TRUE. The softoken in NSS |
83 versions older than 3.15 report an EC key size range of 112 bits to 571 | 51 versions older than 3.15 report an EC key size range of 112 bits to 571 |
84 bits, even when it is compiled to support only the NIST P-256, P-384, and | 52 bits, even when it is compiled to support only the NIST P-256, P-384, and |
85 P-521 curves. Remove this patch when all system NSS softoken packages are | 53 P-521 curves. Remove this patch when all system NSS softoken packages are |
86 NSS 3.15 or later. | 54 NSS 3.15 or later. |
87 patches/suitebonly.patch | 55 patches/suitebonly.patch |
88 | 56 |
89 * Define the SECItemArray type and declare the SECItemArray handling | 57 * Define the SECItemArray type and declare the SECItemArray handling |
90 functions, which were added in NSS 3.15. Remove this patch when all system | 58 functions, which were added in NSS 3.15. Remove this patch when all system |
91 NSS packages are NSS 3.15 or later. | 59 NSS packages are NSS 3.15 or later. |
92 patches/secitemarray.patch | 60 patches/secitemarray.patch |
93 | 61 |
94 * Update Chromium-specific code for TLS 1.2. | 62 * Update Chromium-specific code for TLS 1.2. |
95 patches/tls12chromium.patch | 63 patches/tls12chromium.patch |
96 | 64 |
97 * Add the Application Layer Protocol Negotiation extension. | 65 * Add the Application Layer Protocol Negotiation extension. |
98 patches/alpn.patch | 66 patches/alpn.patch |
99 | 67 |
100 * Fix an issue with allocating an SSL socket when under memory pressure. | |
101 https://bugzilla.mozilla.org/show_bug.cgi?id=903565 | |
102 patches/sslsock_903565.patch | |
103 | |
104 * Implement the AES GCM cipher suites. | |
105 https://bugzilla.mozilla.org/show_bug.cgi?id=880543 | |
106 patches/aesgcm.patch | |
107 | |
108 * Add Chromium-specific code to detect AES GCM support in the system NSS | 68 * Add Chromium-specific code to detect AES GCM support in the system NSS |
109 libraries at run time. | 69 libraries at run time. Remove this patch when all system NSS packages are |
| 70 NSS 3.15 or later. |
110 patches/aesgcmchromium.patch | 71 patches/aesgcmchromium.patch |
111 | 72 |
112 * Support generating SHA-1 signatures for TLS 1.2 client authentication. Use | |
113 SHA-1 instead of SHA-256 if the server's preferences do not allow for | |
114 SHA-256 or if the client private key may only support SHA-1 signatures. The | |
115 latter happens when the key is in a CAPI service provider on Windows or if | |
116 it is a 1024-bit RSA or DSA key. | |
117 patches/tls12backuphash.patch | |
118 patches/tls12backuphash2.patch | |
119 | |
120 * Support ChaCha20+Poly1305 ciphersuites | 73 * Support ChaCha20+Poly1305 ciphersuites |
121 http://tools.ietf.org/html/draft-agl-tls-chacha20poly1305-01 | 74 http://tools.ietf.org/html/draft-agl-tls-chacha20poly1305-01 |
122 patches/chacha20poly1305.patch | 75 patches/chacha20poly1305.patch |
123 | 76 |
124 * Fix session cache lock creation race. | 77 * Fix session cache lock creation race. |
125 patches/cachelocks.patch | 78 patches/cachelocks.patch |
126 https://bugzilla.mozilla.org/show_bug.cgi?id=764646 | 79 https://bugzilla.mozilla.org/show_bug.cgi?id=764646 |
127 | 80 |
128 * Don't advertise TLS 1.2-only cipher suites in a TLS 1.1 ClientHello. | |
129 https://bugzilla.mozilla.org/show_bug.cgi?id=919677 | |
130 patches/ciphersuiteversion.patch | |
131 | |
132 * Don't use record versions greater than 0x0301 in resumption ClientHello | |
133 records either. | |
134 https://bugzilla.mozilla.org/show_bug.cgi?id=923696 | |
135 https://code.google.com/p/chromium/issues/detail?id=303398 | |
136 patches/resumeclienthelloversion.patch | |
137 | |
138 * Make SSL False Start work with asynchronous certificate validation. | |
139 https://bugzilla.mozilla.org/show_bug.cgi?id=713933 | |
140 patches/canfalsestart.patch | |
141 | |
142 * Have the Null Cipher limit output to the maximum allowed | |
143 https://bugzilla.mozilla.org/show_bug.cgi?id=934016 | |
144 patches/nullcipher_934016.patch | |
145 | |
146 * In the case that a ClientHello record is between 256 and 511 bytes long, | 81 * In the case that a ClientHello record is between 256 and 511 bytes long, |
147 add an extension to make it 512 bytes. This works around a bug in F5 | 82 add an extension to make it 512 bytes. This works around a bug in F5 |
148 terminators. | 83 terminators. |
149 patches/paddingextension.patch | 84 patches/paddingextension.patch |
150 patches/paddingextensionall.patch | 85 patches/paddingextensionall.patch |
| 86 https://bugzilla.mozilla.org/show_bug.cgi?id=944157 |
151 | 87 |
152 * Support the Certificate Transparency (RFC 6962) TLS extension | 88 * Support the Certificate Transparency (RFC 6962) TLS extension |
153 signed_certificate_timestamp (client only). | 89 signed_certificate_timestamp (client only). |
154 patches/signedcertificatetimestamps.patch | 90 patches/signedcertificatetimestamps.patch |
| 91 https://bugzilla.mozilla.org/show_bug.cgi?id=944175 |
155 | 92 |
156 * Add a function to allow the cipher suites preference order to be set. | 93 * Add a function to allow the cipher suites preference order to be set. |
157 patches/cipherorder.patch | 94 patches/cipherorder.patch |
158 | 95 |
159 * Add TLS_FALLBACK_SCSV cipher suite to version fallback connections. | 96 * Add TLS_FALLBACK_SCSV cipher suite to version fallback connections. |
160 patches/fallbackscsv.patch | 97 patches/fallbackscsv.patch |
161 | 98 |
162 * Disable session ticket renewal. | |
163 https://bugzilla.mozilla.org/show_bug.cgi?id=930857 | |
164 patches/disableticketrenewal.patch | |
165 | |
166 * Add explicit functions for managing the SSL/TLS session cache. | 99 * Add explicit functions for managing the SSL/TLS session cache. |
167 This is a temporary workaround until Chromium migrates to NSS's | 100 This is a temporary workaround until Chromium migrates to NSS's |
168 asynchronous certificate verification. | 101 asynchronous certificate verification. |
169 patches/sessioncache.patch | 102 patches/sessioncache.patch |
170 | 103 |
171 * Remove static storage qualifier from variables in sslnonce.c. Due to | 104 * Remove static storage qualifier from variables in sslnonce.c. Due to |
172 a clang codegen bug on Mac, this caused an infinite loop. | 105 a clang codegen bug on Mac, this caused an infinite loop. |
173 https://code.google.com/p/chromium/issues/detail?id=326011 | 106 https://code.google.com/p/chromium/issues/detail?id=326011 |
174 patches/sslnoncestatics.patch | 107 patches/sslnoncestatics.patch |
175 | 108 |
176 Apply the patches to NSS by running the patches/applypatches.sh script. Read | 109 Apply the patches to NSS by running the patches/applypatches.sh script. Read |
177 the comments at the top of patches/applypatches.sh for instructions. | 110 the comments at the top of patches/applypatches.sh for instructions. |
178 | 111 |
179 The ssl/bodge directory contains files taken from the NSS repo that we required | 112 The ssl/bodge directory contains files taken from the NSS repo that we required |
180 for building libssl outside of its usual build environment. | 113 for building libssl outside of its usual build environment. |
OLD | NEW |