]>
Commit | Line | Data |
---|---|---|
651d0aff | 1 | |
f1c236f8 | 2 | OpenSSL CHANGES |
651d0aff RE |
3 | _______________ |
4 | ||
c5e8580e RL |
5 | Changes between 0.9.6 and 0.9.7 [xx XXX 2000] |
6 | ||
ccb9643f RL |
7 | *) Remove all references to RSAref, since there's no more need for it. |
8 | [Richard Levitte] | |
9 | ||
7f7b8d68 BM |
10 | *) Increase BN_CTX_NUM (the number of BIGNUMs in a BN_CTX) to 16. |
11 | The previous value, 12, was not always sufficient for BN_mod_exp(). | |
12 | [Bodo Moeller] | |
13 | ||
e06433d9 RL |
14 | *) Make DSO load along a path given through an environment variable |
15 | (SHLIB_PATH) with shl_load(). | |
16 | [Richard Levitte] | |
17 | ||
10e473e9 | 18 | *) Constify the ENGINE code as a result of BIGNUM constification. |
55b3c877 RL |
19 | Also constify the RSA code and most things related to it. In a |
20 | few places, most notable in the depth of the ASN.1 code, ugly | |
21 | casts back to non-const were required (to be solved at a later | |
22 | time) | |
10e473e9 RL |
23 | [Richard Levitte] |
24 | ||
e7ef1a56 RL |
25 | *) Make it so the openssl application has all engines loaded by default. |
26 | [Richard Levitte] | |
27 | ||
020fc820 RL |
28 | *) Constify the BIGNUM routines a little more. |
29 | [Richard Levitte] | |
30 | ||
6b77e6d7 RL |
31 | *) Make sure that shared libraries get the internal name engine with |
32 | the full version number and not just 0. This should mark the | |
33 | shared libraries as not backward compatible. Of course, this should | |
34 | be changed again when we can guarantee backward binary compatibility. | |
35 | [Richard Levitte] | |
36 | ||
11c0f120 RL |
37 | *) Add the following functions: |
38 | ||
39 | ENGINE_load_cswift() | |
40 | ENGINE_load_chil() | |
41 | ENGINE_load_atalla() | |
42 | ENGINE_load_nuron() | |
43 | ENGINE_load_builtin_engines() | |
44 | ||
45 | That way, an application can itself choose if external engines that | |
46 | are built-in in OpenSSL shall ever be used or not. The benefit is | |
47 | that applications won't have to be linked with libdl or other dso | |
48 | libraries unless it's really needed. | |
49 | ||
50 | Changed 'openssl engine' to load all engines on demand. | |
51 | Changed the engine header files to avoid the duplication of some | |
52 | declarations (they differed!). | |
53 | [Richard Levitte] | |
54 | ||
69e7805f RL |
55 | *) 'openssl engine' can now list capabilities. |
56 | [Richard Levitte] | |
57 | ||
e264cfe1 RL |
58 | *) Better error reporting in 'openssl engine'. |
59 | [Richard Levitte] | |
60 | ||
15d52ddb BM |
61 | *) Never call load_dh_param(NULL) in s_server. |
62 | [Bodo Moeller] | |
63 | ||
14c6d27d RL |
64 | *) Add engine application. It can currently list engines by name and |
65 | identity, and test if they are actually available. | |
66 | [Richard Levitte] | |
67 | ||
dcea8e12 RL |
68 | *) Add support for shared libraries under Irix. |
69 | [Albert Chin-A-Young <china@thewrittenword.com>] | |
70 | ||
501ebf16 RL |
71 | *) Improve RPM specification file by forcing symbolic linking and making |
72 | sure the installed documentation is also owned by root.root. | |
73 | [Damien Miller <djm@mindrot.org>] | |
74 | ||
815c83f7 RL |
75 | *) Add configuration option to build on Linux on both big-endian and |
76 | little-endian MIPS. | |
77 | [Ralf Baechle <ralf@uni-koblenz.de>] | |
78 | ||
3aba98e7 RL |
79 | *) Give the OpenSSL applications more possibilities to make use of |
80 | keys (public as well as private) handled by engines. | |
81 | [Richard Levitte] | |
82 | ||
7c155330 RL |
83 | *) Add OCSP code that comes from CertCo. |
84 | [Richard Levitte] | |
85 | ||
34a14882 | 86 | *) Add VMS support for the Rijndael code. |
5270e702 RL |
87 | [Richard Levitte] |
88 | ||
89 | *) Added untested support for Nuron crypto accelerator. | |
90 | [Ben Laurie] | |
91 | ||
92 | *) Add support for external cryptographic devices. This code was | |
93 | previously distributed separately as the "engine" branch. | |
94 | [Geoff Thorpe, Richard Levitte] | |
95 | ||
1df586be GT |
96 | *) Rework the filename-translation in the DSO code. It is now possible to |
97 | have far greater control over how a "name" is turned into a filename | |
98 | depending on the operating environment and any oddities about the | |
99 | different shared library filenames on each system. | |
100 | [Geoff Thorpe] | |
101 | ||
53400da7 RL |
102 | *) Support threads on FreeBSD-elf in Configure. |
103 | [Richard Levitte] | |
104 | ||
0fd44e2d RL |
105 | *) Add the possibility to create shared libraries on HP-UX |
106 | [Richard Levitte] | |
107 | ||
627ec355 DSH |
108 | *) Fix for SHA1 assembly problem with MASM: it produces |
109 | warnings about corrupt line number information when assembling | |
110 | with debugging information. This is caused by the overlapping | |
111 | of two sections. | |
112 | [Bernd Matthes <mainbug@celocom.de>, Steve Henson] | |
113 | ||
567f17cf RL |
114 | *) NCONF changes. |
115 | NCONF_get_number() has no error checking at all. As a replacement, | |
116 | NCONF_get_number_e() is defined (_e for "error checking") and is | |
117 | promoted strongly. The old NCONF_get_number is kept around for | |
118 | binary backward compatibility. | |
119 | Make it possible for methods to load from something other than a BIO, | |
120 | by providing a function pointer that is given a name instead of a BIO. | |
121 | For example, this could be used to load configuration data from an | |
122 | LDAP server. | |
123 | [Richard Levitte] | |
124 | ||
71d525c9 DSH |
125 | *) Fix typo in get_cert_by_subject() in by_dir.c |
126 | [Jean-Marc Desperrier <jean-marc.desperrier@certplus.com>] | |
127 | ||
a22fb399 RL |
128 | *) Rework the system to generate shared libraries: |
129 | ||
130 | - Make note of the expected extension for the shared libraries and | |
131 | if there is a need for symbolic links from for example libcrypto.so.0 | |
132 | to libcrypto.so.0.9.7. There is extended info in Configure for | |
133 | that. | |
134 | ||
135 | - Make as few rebuilds of the shared libraries as possible. | |
136 | ||
137 | - Still avoid linking the OpenSSL programs with the shared libraries. | |
138 | ||
139 | - When installing, install the shared libraries separately from the | |
140 | static ones. | |
141 | [Richard Levitte] | |
142 | ||
924046ce DSH |
143 | *) Fix for non blocking accept BIOs. Added new I/O special reason |
144 | BIO_RR_ACCEPT to cover this case. Previously use of accept BIOs | |
145 | with non blocking I/O was not possible because no retry code was | |
146 | implemented. Also added new SSL code SSL_WANT_ACCEPT to cover | |
147 | this case. | |
148 | [Steve Henson] | |
149 | ||
3ab56511 RL |
150 | *) Added the beginnings of Rijndael support. |
151 | [Ben Laurie] | |
152 | ||
d0c98589 | 153 | *) Fix for bug in DirectoryString mask setting. Add support for |
8ca533e3 DSH |
154 | X509_NAME_print_ex() in 'req' and X509_print_ex() function |
155 | to allow certificate printing to more controllable, additional | |
156 | 'certopt' option to 'x509' to allow new printing options to be | |
157 | set. | |
d0c98589 DSH |
158 | [Steve Henson] |
159 | ||
ef71cb6d RL |
160 | *) Clean old EAY MD5 hack from e_os.h. |
161 | [Richard Levitte] | |
162 | ||
3a0afe1e BM |
163 | *) Fix SSL_CTX_set_read_ahead macro to actually use its argument. |
164 | ||
165 | Copy SSL_CTX's read_ahead flag to SSL object directly in SSL_new | |
166 | and not in SSL_clear because the latter is also used by the | |
167 | accept/connect functions; previously, the settings made by | |
168 | SSL_set_read_ahead would be lost during the handshake. | |
169 | [Bodo Moeller; problems reported by Anders Gertz <gertz@epact.se>] | |
170 | ||
88aeb646 RL |
171 | *) Correct util/mkdef.pl to be selective about disabled algorithms. |
172 | Previously, it would create entries for disableed algorithms no | |
173 | matter what. | |
174 | [Richard Levitte] | |
c5e8580e | 175 | |
0e8f2fdf | 176 | Changes between 0.9.5a and 0.9.6 [24 Sep 2000] |
bbb72003 | 177 | |
f1192b7f BM |
178 | *) In ssl23_get_client_hello, generate an error message when faced |
179 | with an initial SSL 3.0/TLS record that is too small to contain the | |
180 | first two bytes of the ClientHello message, i.e. client_version. | |
181 | (Note that this is a pathologic case that probably has never happened | |
182 | in real life.) The previous approach was to use the version number | |
5a5accdd | 183 | from the record header as a substitute; but our protocol choice |
f1192b7f BM |
184 | should not depend on that one because it is not authenticated |
185 | by the Finished messages. | |
186 | [Bodo Moeller] | |
187 | ||
d49da3aa UM |
188 | *) More robust randomness gathering functions for Windows. |
189 | [Jeffrey Altman <jaltman@columbia.edu>] | |
190 | ||
dbba890c DSH |
191 | *) For compatibility reasons if the flag X509_V_FLAG_ISSUER_CHECK is |
192 | not set then we don't setup the error code for issuer check errors | |
193 | to avoid possibly overwriting other errors which the callback does | |
194 | handle. If an application does set the flag then we assume it knows | |
195 | what it is doing and can handle the new informational codes | |
196 | appropriately. | |
197 | [Steve Henson] | |
198 | ||
6cffb201 DSH |
199 | *) Fix for a nasty bug in ASN1_TYPE handling. ASN1_TYPE is used for |
200 | a general "ANY" type, as such it should be able to decode anything | |
201 | including tagged types. However it didn't check the class so it would | |
202 | wrongly interpret tagged types in the same way as their universal | |
203 | counterpart and unknown types were just rejected. Changed so that the | |
204 | tagged and unknown types are handled in the same way as a SEQUENCE: | |
205 | that is the encoding is stored intact. There is also a new type | |
206 | "V_ASN1_OTHER" which is used when the class is not universal, in this | |
207 | case we have no idea what the actual type is so we just lump them all | |
208 | together. | |
209 | [Steve Henson] | |
210 | ||
645749ef RL |
211 | *) On VMS, stdout may very well lead to a file that is written to |
212 | in a record-oriented fashion. That means that every write() will | |
213 | write a separate record, which will be read separately by the | |
214 | programs trying to read from it. This can be very confusing. | |
215 | ||
216 | The solution is to put a BIO filter in the way that will buffer | |
217 | text until a linefeed is reached, and then write everything a | |
218 | line at a time, so every record written will be an actual line, | |
219 | not chunks of lines and not (usually doesn't happen, but I've | |
220 | seen it once) several lines in one record. BIO_f_linebuffer() is | |
221 | the answer. | |
222 | ||
223 | Currently, it's a VMS-only method, because that's where it has | |
224 | been tested well enough. | |
225 | [Richard Levitte] | |
226 | ||
fe035197 | 227 | *) Remove 'optimized' squaring variant in BN_mod_mul_montgomery, |
a45bd295 | 228 | it can return incorrect results. |
cb1fbf8e BM |
229 | (Note: The buggy variant was not enabled in OpenSSL 0.9.5a, |
230 | but it was in 0.9.6-beta[12].) | |
a45bd295 BM |
231 | [Bodo Moeller] |
232 | ||
730e37ed DSH |
233 | *) Disable the check for content being present when verifying detached |
234 | signatures in pk7_smime.c. Some versions of Netscape (wrongly) | |
235 | include zero length content when signing messages. | |
236 | [Steve Henson] | |
237 | ||
07fcf422 BM |
238 | *) New BIO_shutdown_wr macro, which invokes the BIO_C_SHUTDOWN_WR |
239 | BIO_ctrl (for BIO pairs). | |
d49da3aa | 240 |