STATUS 7.7 KB
Newer Older
1 2

  OpenSSL STATUS                           Last modified at
B
Bodo Möller 已提交
3
  ______________                           $Date: 1999/04/08 20:29:19 $
4 5 6

  DEVELOPMENT STATE

R
Ralf S. Engelschall 已提交
7 8
    o  OpenSSL 0.9.3:  Under development...
    o  OpenSSL 0.9.2b: Released on March    22th, 1999
R
Ralf S. Engelschall 已提交
9
    o  OpenSSL 0.9.1c: Released on December 23th, 1998
10 11 12

  RELEASE SHOWSTOPPERS

R
Ralf S. Engelschall 已提交
13 14
    o Compilation warnings: ctype-related int vs. char
    o Compilation error: "unsigned long*" and "int*" under AIX
R
Update  
Ralf S. Engelschall 已提交
15 16
    o Undefined BN symbols in assembler stuff on Solaris
      (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
R
Ralf S. Engelschall 已提交
18

19 20
  AVAILABLE PATCHES

21
    o OCSP (titchenert@certco.com) 
22 23 24
    o getenv in ca.c and x509_def.c (jaltman@watsun.cc.columbia.edu)
    o linux dynamic libs (colin@field.medicine.adelaide.edu.au)
    o MingW support (niklas@canit.se)
25 26
    o SPARC v9, SPARC v8 assembler implementations of bn_asm.c
      (appro@fy.chalmers.se)
27

28 29
  IN PROGRESS

30 31 32
    o Steve is currently working on (in no particular order):
        Proper (or at least usable) certificate chain verification.
        Documentation on X509 V3 extension code.
33
        PKCS#12 code cleanup and enhancement.
34

M
Mark J. Cox 已提交
35 36 37 38 39
    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.

R
Ralf S. Engelschall 已提交
40 41 42 43 44 45 46
    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.
47 48
           => It still dumps core, so I suspend this and investigate
              again for OpenSSL 0.9.3.
R
Ralf S. Engelschall 已提交
49
        2. The perl/ stuff to make it really work the first time ;-)
50
           => I'll investigate a few more hours for OpenSSL 0.9.2
R
typo  
Ralf S. Engelschall 已提交
51
        3. The new documentation set in POD format under doc/
52
           => I'll investigate a few more hours for OpenSSL 0.9.2
R
Ralf S. Engelschall 已提交
53 54
        4. More cleanups to get rid of obsolete/old/ugly files in the
           source tree which are not really needed.
55
           => Done all which were possible with my personal knowledge
R
Ralf S. Engelschall 已提交
56

57
    o Ben is currently working on:
B
Ben Laurie 已提交
58 59 60 61
	1. Function Prototype Thought Police issues.
	2. Integrated documentation.
	3. New TLS Ciphersuites.
	4. Anything else that takes his fancy.
62

63 64 65 66
  NEEDS PATCH

  OPEN ISSUES

67 68 69 70 71 72 73 74 75 76 77
    o  The Makefile hierarchy and build mechanism is still not a round thing:

       1. The config vs. Configure scripts
          It's the same nasty situation as for Apache with APACI vs.
          src/Configure. It confuses.
          Suggestion: Merge Configure and config into a single configure
                      script with a Autoconf style interface ;-) and remove
                      Configure and config. Or even let us use GNU Autoconf
                      itself. Then we can avoid a lot of those platform checks
                      which are currently in Configure.

R
Update  
Ralf S. Engelschall 已提交
78
       2. The xxx.org -> xxx.h generation:
79 80 81
          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
82

M
Mark J. Cox 已提交
83 84
          Status: Mark +1

R
Ralf S. Engelschall 已提交
85 86 87 88 89 90 91 92 93
    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.
P
Paul C. Sutton 已提交
94
               Paul: why is it not nice?
95 96 97 98 99 100 101
               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....
R
Ralf S. Engelschall 已提交
102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124

    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
       solution to be really simple.

       Status: Ralf will look how we can easily incorporate the
               compiler PIC and linker DSO flags from Apache
               into the OpenSSL Configure script.

    o  The perl/ stuff needs a major overhaul. Currently it's
       totally obsolete. Either we clean it up and enhance it to be up-to-date
       with the C code or we also could replace it with the really nice
       Net::SSLeay package we can find under
       http://www.neuronio.pt/SSLeay.pm.html.  Ralf uses this package for a
       longer time and it works fine and is a nice Perl module. Best would be
       to convince the author to work for the OpenSSL project and create a
       Net::OpenSSL or Crypt::OpenSSL package out of it and maintains it for
       us.

       Status: Ralf thinks we should both contact the author of Net::SSLeay
               and look how much effort it is to bring Eric's perl/ stuff up
               to date.
P
Paul C. Sutton 已提交
125
               Paul +1
R
Ralf S. Engelschall 已提交
126

127 128 129 130 131 132 133 134 135
    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).
136

137 138 139 140 141 142 143 144 145
    o Properly initialize the PRNG in the absence of /dev/random.

    o > NO_RSA (ejs@bfd.com)
      > ./Configure -DNO_IDEA -DNO_RC5 -DNO_RC4 -DNO_RC2 -DNO_RSA -DNO_ERR linux-elf
      > I tried for a whole day to do this and could not get it to work.  Linux
      > machine, kernel 2.0.36 and 2.2.1, redhat 5.2 latest, gcc and egcs , no
      > go.  I also noticed the even with -DNO_IDEA, _DNO_RC2, etc. the make
      > still goes into those subdirectories and 'makes'.

146 147 148 149
    o The "exported" header files should not use #include "foo.h", but
      #include <foo.h> or even better #include <ssl/foo.h> or
      #include <openssl/foo.h> in order to avoid filename clashes.

B
Bodo Möller 已提交
150 151 152 153
    o ERR_error_string(..., buf) does not know how large buf is,
      there should be ERR_error_string_n(..., buf, bufsize)
      or similar.

154 155 156 157 158 159 160 161 162 163
  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."

164 165 166 167 168 169
    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."