OpenSSL STATUS Last modified at
- ______________ $Date: 1999/01/21 13:01:20 $
+ ______________ $Date: 1999/05/18 08:52:01 $
DEVELOPMENT STATE
- o OpenSSL 0.9.2: Under development.
+ o OpenSSL 0.9.3: Freezed... only bugfixes and cleanups allowed!
+ Proposed release date: Mon May 24th, 1999
+ Release manager: Ben Laurie <ben@openssl.org>
+ !! Important: Any non-bugfix, non-cleanup
+ !! and non-documentation commits should
+ !! be approved by Ben, first.
+
+ o OpenSSL 0.9.2b: Released on March 22th, 1999
o OpenSSL 0.9.1c: Released on December 23th, 1998
+ [ Proposed new numbering scheme: <major>.<minor>[<patchlevel>]
+ 0.9.1c is 0913
+ 1.0 is 010000
+ 1.0 a is 010001
+ 1.8 z is 01081a ]
+
RELEASE SHOWSTOPPERS
+ o BSD/OS: assembler functions must not have leading underscores
+ o exptest and rsa_oaep_test fail with irix64-*
+ (Don Badrak <dbadrak@geo.census.gov>: "Re: Problems to compile openssl
+ on IRIX 6.2", openssl-users)
+
AVAILABLE PATCHES
+ o OCSP (titchenert@certco.com)
+ o getenv in ca.c and x509_def.c (jaltman@watsun.cc.columbia.edu)
+
IN PROGRESS
- o Ben is folding in his patches
+ o Steve is currently working on (in no particular order):
+ Proper (or at least usable) certificate chain verification.
+ Documentation on X509 V3 extension code.
+ PKCS #8 and PKCS#5 v2.0 support.
+ Private key, certificate and CRL API and implementation.
+ Checking and bugfixing PKCS#7 (S/MIME code).
+
+ o Mark is currently working on:
+ Folding in any changes that are in the C2Net code base that were
+ not in the original SSLeay-0.9.1.b release. Plus other minor
+ tidying.
+
+ o Ralf is currently working on:
+ 1. Support for SSL_set_default_verify_paths(),
+ SSL_load_verify_locations(), SSL_get_cert_store() and
+ SSL_set_cert_store() functions which work like their existing
+ SSL_CTX_xxx() variants but on a per connection basis. That's needed
+ to let us provide full-featured per-URL client verification in
+ mod_ssl or Apache-SSL.
+ => It still dumps core, so I suspend this and investigate
+ again for OpenSSL 0.9.3.
+ 2. The perl/ stuff to make it really work the first time ;-)
+ => I'll investigate a few more hours for OpenSSL 0.9.2
+ 3. The new documentation set in POD format under doc/
+ => I'll investigate a few more hours for OpenSSL 0.9.2
+ 4. More cleanups to get rid of obsolete/old/ugly files in the
+ source tree which are not really needed.
+ => Done all which were possible with my personal knowledge
+
+ o Ben is currently working on:
+ 1. Function Prototype Thought Police issues.
+ 2. Integrated documentation.
+ 3. New TLS Ciphersuites.
+ 4. Anything else that takes his fancy.
NEEDS PATCH
+ o broken demos
+ o salzr@certco.com (Rich Salz): Bug in X509_name_print
+ <29E0A6D39ABED111A36000A0C99609CA2C2BA4@macertco-srv1.ma.certco.com>
+ o [ Compilation warnings: ctype-related int vs. char ]
+ => now casts (unsigned char), maybe those arrays should have
+ members of that type rather than plain char (i.e.
+ unsigned char *p; ....; if (isspace(*p)) ...; where it's now
+ char *p; ....; if (isspace((unsigned char)*p)) ...;)
+ o $(PERL) in */Makefile.ssl
+ o "Sign the certificate?" - "n" creates empty certificate file
+ o dubious declaration of crypt() in des.h
+
OPEN ISSUES
o The Makefile hierarchy and build mechanism is still not a round thing:
itself. Then we can avoid a lot of those platform checks
which are currently in Configure.
- 2. The massive symlinking of Makefile.ssl -> Makefile:
- First the `make -f Makefile.ssl links' command is nasty, second the
- whole process is slow and third it seems to be done without real
- need. And forth, the dependecies are currently missing. And fifth,
- it's complicated to always go to the top-level in order to get the
- local variables overriden.
- Suggestion: Rename Makefile.ssl to Makefile.in, add
- dependencies to Makefile.in and change the build process
- to _generate_ Makefile out of Makefile.in by
- substituting variables like CC, etc. This solves the
- above problems.
-
- 3. The xxx.org -> xxx.h generation:
- It's not obvious for which file xxx.org is the source.
- Suggestion: Rename xxx.org to xxx.h.in (Autoconf style), this way
- one sees that xxx.h.in is the input for xxx.h
-
- o The installation under "make install" produces a very
- installation layout: $prefix/certs and $prefix/private dirs. That's
- not nice. Ralf suggests to move the two certs and private dirs either
- to $prefix/etc/, $prefix/lib/ or $prefix/share. Alternatively
- we could also not install the certs at all.
-
- Status: Ralf +1 for both not installing the certs at all and
- moving it to $prefix/etc/. +0 for $prefix/lib/
- and $prefix/share.
- Paul: why is it not nice?
- Ralf: because it messes up the install dir when
- $prefix is not a dedicated area like /usr/local/ssl.
- When we move them to a standard subdir like
- etc/ lib/ or share/ we don't mess up things
- when $prefix is /usr or /usr/local, etc.
- Additionally it makes package vendors life
- easier....
-
o Support for Shared Libraries has to be added at least
for the major Unix platforms. The details we can rip from the stuff
Ralf has done for the Apache src/Configure script. Ben wants the
to date.
Paul +1
- o Ralf has ported Stephen's pkcs12 program to OpenSSL (the
- ASN.1 stuff Eric recently changed :-( ), but needs some help from
- Stephen at two source locations. Stephen itself also has ported his
- internal pkcs12 0.53 version to OpenSSL, but thinks we still shouldn't
- incorporate it into OpenSSL because it needs more cleanups. Ralf still
- thinks pkcs12 should be incorporated better now than later because it's
- nasty to not have it in the core - one always has to install it
- manually and a lot of people use it. So, should we incorporate it?
- BTW, we have to be carefully because of the pkcs12 license: There are
- some things which don't match the OpenSSL license, so Stephen has to
- change it for us when we want to incorporate the code.
+ o The EVP and ASN1 stuff is a mess. Currently you have one EVP_CIPHER
+ structure for each cipher. This may make sense for things like DES but
+ for variable length ciphers like RC2 and RC4 it is NBG. Need a way to
+ use the EVP interface and set up the cipher parameters. The ASN1 stuff
+ is also foo wrt ciphers whose AlgorithmIdentifier has more than just
+ an IV in it (e.g. RC2, RC5). This also means that EVP_Seal and EVP_Open
+ don't work unless the key length matches the fixed value (some vendors
+ use a key length decided by the size of the RSA encrypted key and expect
+ RC2 to adapt).
+
+ o Properly initialize the PRNG in the absence of /dev/random.
- Status: Ralf +1, Stephen -0
+ o ERR_error_string(..., buf) does not know how large buf is,
+ there should be ERR_error_string_n(..., buf, bufsize)
+ or similar.
WISHES
- o Damien Miller:
- "How about making the each of the locations compile-time defined. I
- would like to (for example) put binaries in /usr/bin, configuration
- data, certs and keys in /etc/openssl/certs and /etc/openssl/keys, etc.
- This would also be a great boon to binary package makers. The
- SSLeay-0.9.1b RPM already includes some patches which do some of this.
- I can forward them if you wish."
+ o Mats Nilsson <mats.nilsson@xware.se>:
+ "Add reference counting to all substructures of X509 etc. For instance,
+ X509_NAME lacks a reference counter, while EVP_PKEY has one. I'm
+ making COM-wrappers for selected parts of SSLeay for a project of ours,
+ and has found this inconsistency in copy semantics annoying."