2 OpenSSL STATUS Last modified at
3 ______________ $Date: 1999/04/13 00:58:49 $
7 o OpenSSL 0.9.3: Under development...
8 o OpenSSL 0.9.2b: Released on March 22th, 1999
9 o OpenSSL 0.9.1c: Released on December 23th, 1998
13 o Compilation warnings: ctype-related int vs. char
14 o Compilation error: "unsigned long*" and "int*" under AIX
15 o Undefined BN symbols in assembler stuff on Solaris
16 (see posting "openssl-SNAP-19990308-2130 on Solaris-2.6 SC4" in openssl-dev)
17 o BN assembler code in r3000.s, mips*.s and pa-risc*.s is broken
18 o BSD/OS: assembler functions must not have leading underscores
19 o Niels Poppe reports that RSA fails with alpha.s
20 o exptest fails with irix64-*
21 (Don Badrak <dbadrak@geo.census.gov>: "Re: Problems to compile openssl
22 on IRIX 6.2", openssl-users)
23 o BN_add test fails on Caldera OpenLinux 1.3
24 (Marc Christensen <Marc.Christensen@m.cc.utah.edu>
25 "Compiles but fails big number test?", openssl-users)
29 o OCSP (titchenert@certco.com)
30 o unsigned vs. non-unsigned (levitte@stacken.kth.se)
31 o Install prefix for packagers (dharris@drh.net)
32 o getenv in ca.c and x509_def.c (jaltman@watsun.cc.columbia.edu)
33 o linux dynamic libs (colin@field.medicine.adelaide.edu.au)
34 o MingW support (niklas@canit.se)
35 o SPARC v9, SPARC v8 assembler implementations of bn_asm.c
36 (appro@fy.chalmers.se)
40 o Steve is currently working on (in no particular order):
41 Proper (or at least usable) certificate chain verification.
42 Documentation on X509 V3 extension code.
43 PKCS#12 code cleanup and enhancement.
45 o Mark is currently working on:
46 Folding in any changes that are in the C2Net code base that were
47 not in the original SSLeay-0.9.1.b release. Plus other minor
50 o Ralf is currently working on:
51 1. Support for SSL_set_default_verify_paths(),
52 SSL_load_verify_locations(), SSL_get_cert_store() and
53 SSL_set_cert_store() functions which work like their existing
54 SSL_CTX_xxx() variants but on a per connection basis. That's needed
55 to let us provide full-featured per-URL client verification in
56 mod_ssl or Apache-SSL.
57 => It still dumps core, so I suspend this and investigate
58 again for OpenSSL 0.9.3.
59 2. The perl/ stuff to make it really work the first time ;-)
60 => I'll investigate a few more hours for OpenSSL 0.9.2
61 3. The new documentation set in POD format under doc/
62 => I'll investigate a few more hours for OpenSSL 0.9.2
63 4. More cleanups to get rid of obsolete/old/ugly files in the
64 source tree which are not really needed.
65 => Done all which were possible with my personal knowledge
67 o Ben is currently working on:
68 1. Function Prototype Thought Police issues.
69 2. Integrated documentation.
70 3. New TLS Ciphersuites.
71 4. Anything else that takes his fancy.
76 o salzr@certco.com (Rich Salz): Bug in X509_name_print
77 <29E0A6D39ABED111A36000A0C99609CA2C2BA4@macertco-srv1.ma.certco.com>
78 o autogenerated code in pem.h
79 o Jean-Hugues ROYER <jhroyer@joher.com>: rsa_oaep.c with Watcom C
80 o $(PERL) in */Makefile.ssl
81 o "Sign the certificate?" - "n" creates empty certificate file
82 o dubious declaration of crypt() in des.h
86 o The Makefile hierarchy and build mechanism is still not a round thing:
88 1. The config vs. Configure scripts
89 It's the same nasty situation as for Apache with APACI vs.
90 src/Configure. It confuses.
91 Suggestion: Merge Configure and config into a single configure
92 script with a Autoconf style interface ;-) and remove
93 Configure and config. Or even let us use GNU Autoconf
94 itself. Then we can avoid a lot of those platform checks
95 which are currently in Configure.
97 2. The xxx.org -> xxx.h generation:
98 It's not obvious for which file xxx.org is the source.
99 Suggestion: Rename xxx.org to xxx.h.in (Autoconf style), this way
100 one sees that xxx.h.in is the input for xxx.h
104 o The installation under "make install" produces a very
105 installation layout: $prefix/certs and $prefix/private dirs. That's
106 not nice. Ralf suggests to move the two certs and private dirs either
107 to $prefix/etc/, $prefix/lib/ or $prefix/share. Alternatively
108 we could also not install the certs at all.
110 Status: Ralf +1 for both not installing the certs at all and
111 moving it to $prefix/etc/. +0 for $prefix/lib/
113 Paul: why is it not nice?
114 Ralf: because it messes up the install dir when
115 $prefix is not a dedicated area like /usr/local/ssl.
116 When we move them to a standard subdir like
117 etc/ lib/ or share/ we don't mess up things
118 when $prefix is /usr or /usr/local, etc.
119 Additionally it makes package vendors life
122 o Support for Shared Libraries has to be added at least
123 for the major Unix platforms. The details we can rip from the stuff
124 Ralf has done for the Apache src/Configure script. Ben wants the
125 solution to be really simple.
127 Status: Ralf will look how we can easily incorporate the
128 compiler PIC and linker DSO flags from Apache
129 into the OpenSSL Configure script.
131 o The perl/ stuff needs a major overhaul. Currently it's
132 totally obsolete. Either we clean it up and enhance it to be up-to-date
133 with the C code or we also could replace it with the really nice
134 Net::SSLeay package we can find under
135 http://www.neuronio.pt/SSLeay.pm.html. Ralf uses this package for a
136 longer time and it works fine and is a nice Perl module. Best would be
137 to convince the author to work for the OpenSSL project and create a
138 Net::OpenSSL or Crypt::OpenSSL package out of it and maintains it for
141 Status: Ralf thinks we should both contact the author of Net::SSLeay
142 and look how much effort it is to bring Eric's perl/ stuff up
146 o The EVP and ASN1 stuff is a mess. Currently you have one EVP_CIPHER
147 structure for each cipher. This may make sense for things like DES but
148 for variable length ciphers like RC2 and RC4 it is NBG. Need a way to
149 use the EVP interface and set up the cipher parameters. The ASN1 stuff
150 is also foo wrt ciphers whose AlgorithmIdentifier has more than just
151 an IV in it (e.g. RC2, RC5). This also means that EVP_Seal and EVP_Open
152 don't work unless the key length matches the fixed value (some vendors
153 use a key length decided by the size of the RSA encrypted key and expect
156 o Properly initialize the PRNG in the absence of /dev/random.
158 o > NO_RSA (ejs@bfd.com)
159 > ./Configure -DNO_IDEA -DNO_RC5 -DNO_RC4 -DNO_RC2 -DNO_RSA -DNO_ERR linux-elf
160 > I tried for a whole day to do this and could not get it to work. Linux
161 > machine, kernel 2.0.36 and 2.2.1, redhat 5.2 latest, gcc and egcs , no
162 > go. I also noticed the even with -DNO_IDEA, _DNO_RC2, etc. the make
163 > still goes into those subdirectories and 'makes'.
165 o The "exported" header files should not use #include "foo.h", but
166 #include <foo.h> or even better #include <ssl/foo.h> or
167 #include <openssl/foo.h> in order to avoid filename clashes.
169 o ERR_error_string(..., buf) does not know how large buf is,
170 there should be ERR_error_string_n(..., buf, bufsize)
176 "How about making the each of the locations compile-time defined. I
177 would like to (for example) put binaries in /usr/bin, configuration
178 data, certs and keys in /etc/openssl/certs and /etc/openssl/keys, etc.
179 This would also be a great boon to binary package makers. The
180 SSLeay-0.9.1b RPM already includes some patches which do some of this.
181 I can forward them if you wish."
183 o Mats Nilsson <mats.nilsson@xware.se>:
184 "Add reference counting to all substructures of X509 etc. For instance,
185 X509_NAME lacks a reference counter, while EVP_PKEY has one. I'm
186 making COM-wrappers for selected parts of SSLeay for a project of ours,
187 and has found this inconsistency in copy semantics annoying."