Bodo Möller [Thu, 20 May 1999 01:43:28 +0000 (01:43 +0000)]
Change self-description (mklink.pl is not just faster than the last
released version of mklink.sh -- the latter couldn't even handle
the ../../include/openssl case).
Bodo Möller [Wed, 19 May 1999 16:50:16 +0000 (16:50 +0000)]
Convert gcc version detection (for solaris-usparc-gcc) into a form
better suited for finding what went wrong in case that some compiler
versions create an output we can't parse.
Bodo Möller [Wed, 19 May 1999 16:35:21 +0000 (16:35 +0000)]
Bugfix: GCCVAR contains two lines ("Reading specs ..." and the actual
version), so we need
echo $GCCVAR | sed ...
instead of
echo "$GCCVAR" | sed ...
to process it as intended.
Bodo Möller [Wed, 19 May 1999 12:27:33 +0000 (12:27 +0000)]
For Solaris with old gcc versions (that don't understand
-mcpu=ultrasparc), don't silently step to solaris-sparc-gcc, which
would unnecessarily use less efficient assembler code.
Instead, use new configuration variant solaris-usparc-oldgcc;
this also means that someone who reads the output of ./config will
notice that it may be advantegeous to upgrade gcc.
Bodo Möller [Mon, 17 May 1999 11:15:49 +0000 (11:15 +0000)]
Additional, more descriptive error message for rejection of a session ID
because of missing session ID context (so that application programmers
are directly pointed to what they should do differently).
Fix various less obvious bugs in PKCS#7 handling: such as not zeroing
the secret key before we've encrypted it and using the right NID for RC2-64.
Add various arguments to the experimental programs 'dec' and 'enc' to make
testing less painful.
This stuff has now been tested against Netscape Messenger and it can encrypt
and decrypt S/MIME messages with RC2 (128, 64 and 40 bit) DES and triple DES.
Bodo Möller [Sun, 16 May 1999 12:26:16 +0000 (12:26 +0000)]
Change type of various DES function arguments from des_cblock
(meaning pointer to char) to des_cblock * (meaning pointer to
array with 8 char elements), which allows the compiler to
do more typechecking. (The changed argument types were of type
des_cblock * back in SSLeay, and a lot of ugly casts were
used then to turn them into pointers to elements; but it can be
done without those casts.)
Introduce new type const_des_cblock -- before, the pointers rather
than the elements pointed to were declared const, and for
some reason gcc did not complain about this (but some other
compilers did).
Fix some obvious bugs in the PKCS#7 library handling. It didn't try to
find the right RecipientInfo based on the recipient certificate (so would
fail a lot of the time) and fixup cipher structures to correctly (maybe)
modify the AlgorithmIdentifiers. Largely untested at present... this will be
fixed in due course. Well the stuff was broken to begin with so if its broken
now then you haven't lost anything :-)
Various Win32 fixes. Change args in do_ms.bat to put platform last. Fix
unsigned/signed cmp error in asn1parse. Change various pem_all.c args to
use pem_password_cb.
The encoding of negative ASN1 INTEGERs and the conversion of BNs to negative
integers was completely broken. Also added a NEG_PUBKEY_BUG compilation option
to compensate for public keys improperly encoded as negative integers.
Bodo Möller [Fri, 14 May 1999 12:40:39 +0000 (12:40 +0000)]
Various bugfixes: Uses locking for some more of the stuff that is not
thread-safe (where thread-safe counterparts are not available on all
platforms), and don't memcpy to NULL-pointers
Submitted by: Anonymous
Reviewed by: Bodo Moeller
Bodo Möller [Fri, 14 May 1999 11:52:49 +0000 (11:52 +0000)]
Introduce and use function typedef pem_password_cb so that we don't call
those functions without having a parameter list declaration.
(There are various similar cases left ...)
Bodo Möller [Thu, 13 May 1999 17:51:35 +0000 (17:51 +0000)]
Don't use reserved name "_encrypt" for parameters;
instead I've picked "enc", because that's what's in the prototypes.
("_encrypt" is reserved only as an external name, but still
using it in an application doesn't look like good style to me --
and it certainly isn't if the point is just avoiding shadowing,
which is apparently why the previous name "encrypt" was changed.)
Bodo Möller [Thu, 13 May 1999 15:09:38 +0000 (15:09 +0000)]
New structure type SESS_CERT used instead of CERT inside SSL_SESSION.
While modifying the sources, I found some inconsistencies on the use of
s->cert vs. s->session->sess_cert; I don't know if those could
really have caused problems, but possibly this is a proper bug-fix
and not just a clean-up.
Bodo Möller [Thu, 13 May 1999 10:32:04 +0000 (10:32 +0000)]
First tiny changes in preparation of changing of "sess_cert" handling.
Also I've subsituted real tabs for 8-spaces sequences in some lines so that
things don't look that weird with a tab-width of 4.
Add new -out option to asn1parse to allow the parsed data to be output.
Fixed -strparse option: it didn't work if used more than once (this was due
to the d2i_ASN1_TYPE call parsing a freed buffer). On Win32 the file wincrypt.h
#define's X509_NAME and PKCS7_SIGNER_INFO causing clashes so these are #undef'ed