]> git.ipfire.org Git - thirdparty/openssl.git/blame - CHANGES
Move s_server -dcert and -dkey options out of the undocumented feature area
[thirdparty/openssl.git] / CHANGES
CommitLineData
651d0aff 1
f1c236f8 2 OpenSSL CHANGES
651d0aff
RE
3 _______________
4
5
9cb0969f 6 Changes between 0.9.1c and 0.9.2
0172f988 7
ea14a91f
RE
8 *) Move s_server -dcert and -dkey options out of the undocumented feature
9 area because they are useful for the DSA situation and should be
10 recognized by the users.
11 [Ralf S. Engelschall]
12
90a52cec
RE
13 *) Fix the cipher decision scheme for export ciphers: the export bits are
14 *not* within SSL_MKEY_MASK or SSL_AUTH_MASK, they are within
15 SSL_EXP_MASK. So, the original variable has to be used instead of the
16 already masked variable.
17 [Richard Levitte <levitte@stacken.kth.se>]
18
def9f431
RE
19 *) Fix 'port' variable from `int' to `unsigned int' in crypto/bio/b_sock.c
20 [Richard Levitte <levitte@stacken.kth.se>]
21
8aef252b
RE
22 *) Change type of another md_len variable in pk7_doit.c:PKCS7_dataFinal()
23 from `int' to `unsigned int' because it's a length and initialized by
24 EVP_DigestFinal() which expects an `unsigned int *'.
25 [Richard Levitte <levitte@stacken.kth.se>]
26
a4ed5532
RE
27 *) Don't hard-code path to Perl interpreter on shebang line of Configure
28 script. Instead use the usual Shell->Perl transition trick.
29 [Ralf S. Engelschall]
30
7be304ac
RE
31 *) Make `openssl x509 -noout -modulus' functional also for DSA certificates
32 (in addition to RSA certificates) to match the behaviour of `openssl dsa
33 -noout -modulus' as it's already the case for `openssl rsa -noout
34 -modulus'. For RSA the -modulus is the real "modulus" while for DSA
35 currently the public key is printed (a decision which was already done by
36 `openssl dsa -modulus' in the past) which serves a similar purpose.
37 Additionally the NO_RSA no longer completely removes the whole -modulus
38 option; it now only avoids using the RSA stuff. Same applies to NO_DSA
39 now, too.
40 [Ralf S. Engelschall]
41
55ab3bf7
BL
42 *) Add Arne Ansper's reliable BIO - this is an encrypted, block-digested
43 BIO. See the source (crypto/evp/bio_ok.c) for more info.
44 [Arne Ansper <arne@ats.cyber.ee>]
45
a43aa73e
DSH
46 *) Dump the old yucky req code that tried (and failed) to allow raw OIDs
47 to be added. Now both 'req' and 'ca' can use new objects defined in the
48 config file.
49 [Steve Henson]
50
0849d138
BL
51 *) Add cool BIO that does syslog (or event log on NT).
52 [Arne Ansper <arne@ats.cyber.ee>, integrated by Ben Laurie]
53
06ab81f9
BL
54 *) Add support for new TLS ciphersuites, TLS_RSA_EXPORT56_WITH_RC4_56_MD5,
55 TLS_RSA_EXPORT56_WITH_RC2_CBC_56_MD5 and
56 TLS_RSA_EXPORT56_WITH_DES_CBC_SHA, as specified in "56-bit Export Cipher
57 Suites For TLS", draft-ietf-tls-56-bit-ciphersuites-00.txt.
58 [Ben Laurie]
59
deff75b6
DSH
60 *) Add preliminary config info for new extension code.
61 [Steve Henson]
62
0c8a1281
DSH
63 *) Make RSA_NO_PADDING really use no padding.
64 [Ulf Moeller <ulf@fitug.de>]
65
4004dbb7
BL
66 *) Generate errors when private/public key check is done.
67 [Ben Laurie]
68
0ca5f8b1
DSH
69 *) Overhaul for 'crl' utility. New function X509_CRL_print. Partial support
70 for some CRL extensions and new objects added.
71 [Steve Henson]
72
3d8accc3
DSH
73 *) Really fix the ASN1 IMPLICIT bug this time... Partial support for private
74 key usage extension and fuller support for authority key id.
75 [Steve Henson]
76
a4949896
BL
77 *) Add OAEP encryption for the OpenSSL crypto library. OAEP is the improved
78 padding method for RSA, which is recommended for new applications in PKCS
79 #1 v2.0 (RFC 2437, October 1998).
80 OAEP (Optimal Asymmetric Encryption Padding) has better theoretical
81 foundations than the ad-hoc padding used in PKCS #1 v1.5. It is secure
82 against Bleichbacher's attack on RSA.
83 [Ulf Moeller <ulf@fitug.de>, reformatted, corrected and integrated by
84 Ben Laurie]
85
413c4f45
MC
86 *) Updates to the new SSL compression code
87 [Eric A. Young, (from changes to C2Net SSLeay, integrated by Mark Cox)]
88
89 *) Fix so that the version number in the master secret, when passed
90 via RSA, checks that if TLS was proposed, but we roll back to SSLv3
91 (because the server will not accept higher), that the version number
92 is 0x03,0x01, not 0x03,0x00
93 [Eric A. Young, (from changes to C2Net SSLeay, integrated by Mark Cox)]
94
a8236c8c
DSH
95 *) Run extensive memory leak checks on SSL apps. Fixed *lots* of memory
96 leaks in ssl/ relating to new X509_get_pubkey() behaviour. Also fixes
3d8accc3 97 in apps/ and an unrelated leak in crypto/dsa/dsa_vrf.c
a8236c8c
DSH
98 [Steve Henson]
99
388ff0b0
DSH
100 *) Support for RAW extensions where an arbitrary extension can be
101 created by including its DER encoding. See apps/openssl.cnf for
102 an example.
a8236c8c 103 [Steve Henson]
388ff0b0 104
6013fa83
RE
105 *) Make sure latest Perl versions don't interpret some generated C array
106 code as Perl array code in the crypto/err/err_genc.pl script.
107 [Lars Weber <3weber@informatik.uni-hamburg.de>]
108
5c00879e
DSH
109 *) Modify ms/do_ms.bat to not generate assembly language makefiles since
110 not many people have the assembler. Various Win32 compilation fixes and
111 update to the INSTALL.W32 file with (hopefully) more accurate Win32
112 build instructions.
113 [Steve Henson]
114
9becf666
DSH
115 *) Modify configure script 'Configure' to automatically create crypto/date.h
116 file under Win32 and also build pem.h from pem.org. New script
117 util/mkfiles.pl to create the MINFO file on environments that can't do a
118 'make files': perl util/mkfiles.pl >MINFO should work.
119 [Steve Henson]
120
4e31df2c
BL
121 *) Major rework of DES function declarations, in the pursuit of correctness
122 and purity. As a result, many evil casts evaporated, and some weirdness,
123 too. You may find this causes warnings in your code. Zapping your evil
124 casts will probably fix them. Mostly.
125 [Ben Laurie]
126
e4119b93
DSH
127 *) Fix for a typo in asn1.h. Bug fix to object creation script
128 obj_dat.pl. It considered a zero in an object definition to mean
129 "end of object": none of the objects in objects.h have any zeros
130 so it wasn't spotted.
131 [Steve Henson, reported by Erwann ABALEA <eabalea@certplus.com>]
132
4a71b90d
BL
133 *) Add support for Triple DES Cipher Block Chaining with Output Feedback
134 Masking (CBCM). In the absence of test vectors, the best I have been able
135 to do is check that the decrypt undoes the encrypt, so far. Send me test
136 vectors if you have them.
137 [Ben Laurie]
138
436d318c
BL
139 *) Correct caclulation of key length for export ciphers (too much space was
140 allocated for null ciphers). This has not been tested!
141 [Ben Laurie]
142
55a9cc6e
DSH
143 *) Modifications to the mkdef.pl for Win32 DEF file creation. The usage
144 message is now correct (it understands "crypto" and "ssl" on its
145 command line). There is also now an "update" option. This will update
146 the util/ssleay.num and util/libeay.num files with any new functions.
147 If you do a:
148 perl util/mkdef.pl crypto ssl update
149 it will update them.
e4119b93 150 [Steve Henson]
55a9cc6e 151
8073036d
RE
152 *) Overhauled the Perl interface (perl/*):
153 - ported BN stuff to OpenSSL's different BN library
154 - made the perl/ source tree CVS-aware
155 - renamed the package from SSLeay to OpenSSL (the files still contain
156 their history because I've copied them in the repository)
157 - removed obsolete files (the test scripts will be replaced
158 by better Test::Harness variants in the future)
159 [Ralf S. Engelschall]
160
483fdf18
RE
161 *) First cut for a very conservative source tree cleanup:
162 1. merge various obsolete readme texts into doc/ssleay.txt
163 where we collect the old documents and readme texts.
164 2. remove the first part of files where I'm already sure that we no
165 longer need them because of three reasons: either they are just temporary
166 files which were left by Eric or they are preserved original files where
167 I've verified that the diff is also available in the CVS via "cvs diff
168 -rSSLeay_0_8_1b" or they were renamed (as it was definitely the case for
169 the crypto/md/ stuff).
170 [Ralf S. Engelschall]
171
175b0942
DSH
172 *) More extension code. Incomplete support for subject and issuer alt
173 name, issuer and authority key id. Change the i2v function parameters
174 and add an extra 'crl' parameter in the X509V3_CTX structure: guess
175 what that's for :-) Fix to ASN1 macro which messed up
176 IMPLICIT tag and add f_enum.c which adds a2i, i2a for ENUMERATED.
177 [Steve Henson]
178
bceacf93
DSH
179 *) Preliminary support for ENUMERATED type. This is largely copied from the
180 INTEGER code.
181 [Steve Henson]
182
351d8998
MC
183 *) Add new function, EVP_MD_CTX_copy() to replace frequent use of memcpy.
184 [Eric A. Young, (from changes to C2Net SSLeay, integrated by Mark Cox)]
185
b621d772
RE
186 *) Make sure `make rehash' target really finds the `openssl' program.
187 [Ralf S. Engelschall, Matthias Loepfe <Matthias.Loepfe@adnovum.ch>]
188
a96e7810
BL
189 *) Squeeze another 7% of speed out of MD5 assembler, at least on a P2. I'd
190 like to hear about it if this slows down other processors.
191 [Ben Laurie]
192
e04a6c2b
RE
193 *) Add CygWin32 platform information to Configure script.
194 [Alan Batie <batie@aahz.jf.intel.com>]
195
0172f988
RE
196 *) Fixed ms/32all.bat script: `no_asm' -> `no-asm'
197 [Rainer W. Gerling <gerling@mpg-gv.mpg.de>]
79dfa975
DSH
198
199 *) New program nseq to manipulate netscape certificate sequences
200 [Steve Henson]
320a14cb 201
9fe84296
DSH
202 *) Modify crl2pkcs7 so it supports multiple -certfile arguments. Fix a
203 few typos.
204 [Steve Henson]
205
a0a54079
MC
206 *) Fixes to BN code. Previously the default was to define BN_RECURSION
207 but the BN code had some problems that would cause failures when
208 doing certificate verification and some other functions.
209 [Eric A. Young, (from changes to C2Net SSLeay, integrated by Mark Cox)]
210
92c046ca
DSH
211 *) Add ASN1 and PEM code to support netscape certificate sequences.
212 [Steve Henson]
213
79dfa975
DSH
214 *) Add ASN1 and PEM code to support netscape certificate sequences.
215 [Steve Henson]
216
a27598bf
DSH
217 *) Add several PKIX and private extended key usage OIDs.
218 [Steve Henson]
219
b2347661
DSH
220 *) Modify the 'ca' program to handle the new extension code. Modify
221 openssl.cnf for new extension format, add comments.
222 [Steve Henson]
223
f317aa4c
DSH
224 *) More X509 V3 changes. Fix typo in v3_bitstr.c. Add support to 'req'
225 and add a sample to openssl.cnf so req -x509 now adds appropriate
226 CA extensions.
227 [Steve Henson]
228
834eeef9
DSH
229 *) Continued X509 V3 changes. Add to other makefiles, integrate with the
230 error code, add initial support to X509_print() and x509 application.
f317aa4c 231 [Steve Henson]
834eeef9 232
9aeaf1b4
DSH
233 *) Takes a deep breath and start addding X509 V3 extension support code. Add
234 files in crypto/x509v3. Move original stuff to crypto/x509v3/old. All this
235 stuff is currently isolated and isn't even compiled yet.
236 [Steve Henson]
237
9b5cc156
DSH
238 *) Continuing patches for GeneralizedTime. Fix up certificate and CRL
239 ASN1 to use ASN1_TIME and modify print routines to use ASN1_TIME_print.
240 Removed the versions check from X509 routines when loading extensions:
241 this allows certain broken certificates that don't set the version
242 properly to be processed.
243 [Steve Henson]
244
8039257d
BL
245 *) Deal with irritating shit to do with dependencies, in YAAHW (Yet Another
246 Ad Hoc Way) - Makefile.ssls now all contain local dependencies, which
247 can still be regenerated with "make depend".
248 [Ben Laurie]
249
b13a1554
BL
250 *) Spelling mistake in C version of CAST-128.
251 [Ben Laurie, reported by Jeremy Hylton <jeremy@cnri.reston.va.us>]
252
6c8abdd7
DSH
253 *) Changes to the error generation code. The perl script err-code.pl
254 now reads in the old error codes and retains the old numbers, only
255 adding new ones if necessary. It also only changes the .err files if new
256 codes are added. The makefiles have been modified to only insert errors
257 when needed (to avoid needlessly modifying header files). This is done
258 by only inserting errors if the .err file is newer than the auto generated
259 C file. To rebuild all the error codes from scratch (the old behaviour)
260 either modify crypto/Makefile.ssl to pass the -regen flag to err_code.pl
261 or delete all the .err files.
9b5cc156 262 [Steve Henson]
6c8abdd7 263
649cdb7b
BL
264 *) CAST-128 was incorrectly implemented for short keys. The C version has
265 been fixed, but is untested. The assembler versions are also fixed, but
266 new assembler HAS NOT BEEN GENERATED FOR WIN32 - the Makefile needs fixing
267 to regenerate it if needed.
268 [Ben Laurie, reported (with fix for C version) by Jun-ichiro itojun
269 Hagino <itojun@kame.net>]
270
271 *) File was opened incorrectly in randfile.c.
272