]> git.ipfire.org Git - thirdparty/openssl.git/blame - CHANGES
minor signed/unsigned warning fixes
[thirdparty/openssl.git] / CHANGES
CommitLineData
81a6c781 1
f1c236f8 2 OpenSSL CHANGES
651d0aff
RE
3 _______________
4
beab098d 5 Changes between 0.9.7c and 0.9.8 [xx XXX xxxx]
4d94ae00 6
d870740c
GT
7 *) An audit of the BIGNUM code is underway, for which debugging code is
8 enabled when BN_DEBUG is defined. This makes stricter enforcements on what
9 is considered valid when processing BIGNUMs, and causes execution to
10 assert() when a problem is discovered. If BN_DEBUG_RAND is defined,
11 further steps are taken to deliberately pollute unused data in BIGNUM
12 structures to try and expose faulty code further on. For now, openssl will
13 (in its default mode of operation) continue to tolerate the inconsistent
14 forms that it has tolerated in the past, but authors and packagers should
15 consider trying openssl and their own applications when compiled with
16 these debugging symbols defined. It will help highlight potential bugs in
17 their own code, and will improve the test coverage for OpenSSL itself. At
18 some point, these tighter rules will become openssl's default to improve
19 maintainability, though the assert()s and other overheads will remain only
20 in debugging configurations. See bn.h for more details.
21 [Geoff Thorpe]
22
2ce90b9b
GT
23 *) BN_CTX_init() has been deprecated, as BN_CTX is an opaque structure
24 that can only be obtained through BN_CTX_new() (which implicitly
25 initialises it). The presence of this function only made it possible
26 to overwrite an existing structure (and cause memory leaks).
27 [Geoff Thorpe]
28
8dc344cc
GT
29 *) Because of the callback-based approach for implementing LHASH as a
30 template type, lh_insert() adds opaque objects to hash-tables and
31 lh_doall() or lh_doall_arg() are typically used with a destructor callback
32 to clean up those corresponding objects before destroying the hash table
33 (and losing the object pointers). So some over-zealous constifications in
34 LHASH have been relaxed so that lh_insert() does not take (nor store) the
35 objects as "const" and the lh_doall[_arg] callback wrappers are not
36 prototyped to have "const" restrictions on the object pointers they are
37 given (and so aren't required to cast them away any more).
38 [Geoff Thorpe]
39
0991f070
GT
40 *) The tmdiff.h API was so ugly and minimal that our own timing utility
41 (speed) prefers to use its own implementation. The two implementations
42 haven't been consolidated as yet (volunteers?) but the tmdiff API has had
43 its object type properly exposed (MS_TM) instead of casting to/from "char
44 *". This may still change yet if someone realises MS_TM and "ms_time_***"
45 aren't necessarily the greatest nomenclatures - but this is what was used
46 internally to the implementation so I've used that for now.
47 [Geoff Thorpe]
48
9d473aa2 49 *) Ensure that deprecated functions do not get compiled when
2aaec9cc
GT
50 OPENSSL_NO_DEPRECATED is defined. Some "openssl" subcommands and a few of
51 the self-tests were still using deprecated key-generation functions so
52 these have been updated also.
9d473aa2
GT
53 [Geoff Thorpe]
54
c5a55463
DSH
55 *) Reorganise PKCS#7 code to separate the digest location functionality
56 into PKCS7_find_digest(), digest addtion into PKCS7_bio_add_digest().
57 New function PKCS7_set_digest() to set the digest type for PKCS#7
58 digestedData type. Add additional code to correctly generate the
59 digestedData type and add support for this type in PKCS7 initialization
60 functions.
8d9086df
DSH
61 [Steve Henson]
62
c5a55463
DSH
63 *) New function PKCS7_set0_type_other() this initializes a PKCS7
64 structure of type "other".
8d9086df
DSH
65 [Steve Henson]
66
6bd27f86
RE
67 *) Fix prime generation loop in crypto/bn/bn_prime.pl by making
68 sure the loop does correctly stop and breaking ("division by zero")
69 modulus operations are not performed. The (pre-generated) prime
70 table crypto/bn/bn_prime.h was already correct, but it could not be
71 re-generated on some platforms because of the "division by zero"
72 situation in the script.
73 [Ralf S. Engelschall]
74
968766ca
BM
75 *) Update support for ECC-based TLS ciphersuites according to
76 draft-ietf-tls-ecc-03.txt: the KDF1 key derivation function with
77 SHA-1 now is only used for "small" curves (where the
78 representation of a field element takes up to 24 bytes); for
79 larger curves, the field element resulting from ECDH is directly
80 used as premaster secret.
81 [Douglas Stebila (Sun Microsystems Laboratories)]
82
652ae06b
BM
83 *) Add code for kP+lQ timings to crypto/ec/ectest.c, and add SEC2
84 curve secp160r1 to the tests.
85 [Douglas Stebila (Sun Microsystems Laboratories)]
86
e666c459
RL
87 *) Add the possibility to load symbols globally with DSO.
88