Richard Levitte [Sun, 19 Nov 2000 14:11:03 +0000 (14:11 +0000)]
I wonder if I do too much...
Richard Levitte [Sun, 19 Nov 2000 14:10:07 +0000 (14:10 +0000)]
Add news items early. Please fill in with what I have forgotten.
Richard Levitte [Sat, 18 Nov 2000 22:58:26 +0000 (22:58 +0000)]
Remove two bn_wexpand() from BN_mul(), which is a step toward getting
BN_mul() correctly constified, avoids two realloc()'s that aren't
really necessary and saves memory to boot. This required a small
change in bn_mul_part_recursive() and the addition of variants of
bn_cmp_words(), bn_add_words() and bn_sub_words() that can take arrays
with differing sizes.
The test results show a performance that very closely matches the
original code from before my constification. This may seem like a
very small win from a performance point of view, but if one remembers
that the variants of bn_cmp_words(), bn_add_words() and bn_sub_words()
are not at all optimized for the moment (and there's no corresponding
assembler code), and that their use may be just as non-optimal, I'm
pretty confident there are possibilities...
This code needs reviewing!
Richard Levitte [Sat, 18 Nov 2000 20:52:14 +0000 (20:52 +0000)]
Remove a declaration for a function that does not exist.
Richard Levitte [Sat, 18 Nov 2000 20:49:02 +0000 (20:49 +0000)]
Make the definition of bn_add_words() match the definition.
Richard Levitte [Sat, 18 Nov 2000 20:44:25 +0000 (20:44 +0000)]
I might want to debug the assembler modules...
Bodo Möller [Fri, 17 Nov 2000 14:42:49 +0000 (14:42 +0000)]
Increase permissible ClientKeyExchange message length.
Bodo Möller [Fri, 17 Nov 2000 13:08:57 +0000 (13:08 +0000)]
include 'err' label only when it is actually used
Richard Levitte [Fri, 17 Nov 2000 12:01:55 +0000 (12:01 +0000)]
Make sure BN_DIV2W is not defining when defining it, and remove the
declarations of bn_add_part_words() and bn_sub_part_words() since they
do not exist.
Bodo Möller [Fri, 17 Nov 2000 11:49:29 +0000 (11:49 +0000)]
tag SSL_peek bugs
Bodo Möller [Fri, 17 Nov 2000 10:25:46 +0000 (10:25 +0000)]
Documentation on using the SSL library with non-blocking I/O.
Bodo Möller [Fri, 17 Nov 2000 09:03:02 +0000 (09:03 +0000)]
Improve usability of 'openssl passwd' by including
password verification where it makes sense.
Bodo Möller [Fri, 17 Nov 2000 08:36:10 +0000 (08:36 +0000)]
Constify bn_dump1 implementation so that it matches the prototype
in bn.h
Richard Levitte [Thu, 16 Nov 2000 22:43:32 +0000 (22:43 +0000)]
More constification of the BN library.
Richard Levitte [Thu, 16 Nov 2000 22:42:39 +0000 (22:42 +0000)]
Make sure to print the BN counting (BN_COUNT) to stderr instead of
stdout. bc gets so confused by bean counts.
Richard Levitte [Thu, 16 Nov 2000 22:41:26 +0000 (22:41 +0000)]
Oops, when I clean, I should do it thoroughly.
Richard Levitte [Thu, 16 Nov 2000 21:35:41 +0000 (21:35 +0000)]
I've checked again and again. There really is no need to expand a to
4 times it's size when bn_sqr_recursive() won't look farther than the
original length. Thereby, constification is no longer a problem.
Richard Levitte [Thu, 16 Nov 2000 18:59:02 +0000 (18:59 +0000)]
/proc/cpuinfo can have several lines containing the word "type". We want the one that is "type", plain and simple. Caught by Raoul Borenius <borenius@shuttle.de>
Geoff Thorpe [Thu, 16 Nov 2000 00:17:11 +0000 (00:17 +0000)]
I have no idea how this comment got there, but it's certainly not
applicable to ENGINE_ctrl()
Geoff Thorpe [Thu, 16 Nov 2000 00:15:50 +0000 (00:15 +0000)]
Many applications that use OpenSSL with ENGINE support might face a
situation where they've initialised the ENGINE, loaded keys (which are then
linked to that ENGINE), and performed other checks (such as verifying
certificate chains etc). At that point, if the application goes
multi-threaded or multi-process it creates problems for any ENGINE
implementations that are either not thread/process safe or that perform
optimally when they do not have to perform locking and other contention
management tasks at "run-time".
This defines a new ENGINE_ctrl() command that can be supported by engines
at their discretion. If ENGINE_ctrl(..., ENGINE_CTRL_HUP,...) returns an
error then the caller should check if the *_R_COMMAND_NOT_IMPLEMENTED error
reason was set - it may just be that the engine doesn't support or need the
HUP command, or it could be that the attempted reinitialisation failed. A
crude alternative is to ignore the return value from ENGINE_ctrl() (and
clear any errors with ERR_clear_error()) and perform a test operation
immediately after the "HUP". Very crude indeed.
ENGINEs can support this command to close and reopen connections, files,
handles, or whatever as an alternative to run-time locking when such things
would otherwise be needed. In such a case, it's advisable for the engine
implementations to support locking by default but disable it after the
arrival of a HUP command, or any other indication by the application that
locking is not required. NB: This command exists to allow an ENGINE to
reinitialise without the ENGINE's functional reference count having to sink
down to zero and back up - which is what is normally required for the
finish() and init() handlers to get invoked. It would also be a bad idea
for engine_lib to catch this command itself and interpret it by calling the
engine's init() and finish() handlers directly, because reinitialisation
may need special handling on a case-by-case basis that is distinct from a
finish/init pair - eg. calling a finish() handler may invalidate the state
stored inside individual keys that have already loaded for this engine.
Lutz Jänicke [Wed, 15 Nov 2000 18:42:41 +0000 (18:42 +0000)]
Fill in missing information about the string returned from
SSL_CIPHER_description(), as there is no other API function to find
out details about the cipher used besides the number of bits or protocol used.
Ulf Möller [Tue, 14 Nov 2000 19:18:31 +0000 (19:18 +0000)]
ignore
Richard Levitte [Tue, 14 Nov 2000 15:33:06 +0000 (15:33 +0000)]
Modify () to (void), since that's what is actually defined in the
engine structure, and some ANSI C compilers will complain otherwise.
Richard Levitte [Tue, 14 Nov 2000 13:50:42 +0000 (13:50 +0000)]
Two OCSP functions that aren't yet implemented.
Richard Levitte [Tue, 14 Nov 2000 13:39:38 +0000 (13:39 +0000)]
make update
Richard Levitte [Tue, 14 Nov 2000 13:24:06 +0000 (13:24 +0000)]
Get the Rijndael function declarations.
Richard Levitte [Tue, 14 Nov 2000 13:20:10 +0000 (13:20 +0000)]
Detect and mark functions that no longer exist.
Lutz Jänicke [Tue, 14 Nov 2000 11:05:10 +0000 (11:05 +0000)]
Some platforms (namely HP-UX) require the 'x' bit set for shared libraries.
For performance reasons, it is also recommended to make the (mmap'ed)
shared library 'read-only'.
-> New permissions for installed shared libraries = 555
This doesn't hurt anybody, provided the installation is performed with
'cp -f' :-)
Richard Levitte [Tue, 14 Nov 2000 10:52:16 +0000 (10:52 +0000)]
Typo, was "time" instead of "tim".
Caught by Jeffrey Altman <jaltman@columbia.edu>
Richard Levitte [Tue, 14 Nov 2000 10:51:00 +0000 (10:51 +0000)]
Add Rijndael as things to look through.
Lutz Jänicke [Mon, 13 Nov 2000 14:40:07 +0000 (14:40 +0000)]
HP-UX shared libraries do not build any longer, as EX_LIBS contains
"-Wl,+s" instead of +s:
* Hardcoded necessary references to -ldld/-ldl into the build rules and
removed EX_LIBS.
HP-UX records the pathnames of dependent libraries when the shared libs
are built, so that ./libcrypto.sl... is recorded in libssl.sl..., with
"./" not being resolvable when running an application linked against -lssl:
* Build libssl without explicit reference to libcrypto, applications will
be linked with "-lssl -lcrypto" anyway.
Document these informations in Makefile.org.
Ulf Möller [Sun, 12 Nov 2000 22:32:18 +0000 (22:32 +0000)]
in some new file names the first 8 characters were not unique
Richard Levitte [Sun, 12 Nov 2000 20:24:30 +0000 (20:24 +0000)]
For a long time, I've wanted to be able to easily run one or a few
individual tests. I finally got myself to implement it...
Bodo Möller [Sun, 12 Nov 2000 19:17:22 +0000 (19:17 +0000)]
Additional explanations for SSL_ERROR_WANT_READ/WRITE.
Richard Levitte [Sun, 12 Nov 2000 18:25:30 +0000 (18:25 +0000)]
Enhance granularity on what I want to debug for the moment by changing
LEVITTE_DEBUG to LEVITTE_DEBUG_MEM.
Richard Levitte [Sun, 12 Nov 2000 16:20:40 +0000 (16:20 +0000)]
Update my own debugging configuration entry
Ben Laurie [Sun, 12 Nov 2000 02:13:38 +0000 (02:13 +0000)]
Make Rijndael work! Those long flights have some good points.
Ben Laurie [Sun, 12 Nov 2000 02:11:13 +0000 (02:11 +0000)]
Make this stuff compile.
Bodo Möller [Fri, 10 Nov 2000 07:50:18 +0000 (07:50 +0000)]
Point to SSL_set_bio(3) early because that manpage provides
information that is essential for using BIO pairs.
Bodo Möller [Fri, 10 Nov 2000 07:46:11 +0000 (07:46 +0000)]
add missing word
Bodo Möller [Thu, 9 Nov 2000 16:39:01 +0000 (16:39 +0000)]
tmp2 is not used in BN_mod_mul_montgomery.
Richard Levitte [Wed, 8 Nov 2000 18:10:35 +0000 (18:10 +0000)]
Really stupid glitch (a comment not properly ended) fixed.
Richard Levitte [Wed, 8 Nov 2000 17:51:37 +0000 (17:51 +0000)]
Remove references to RSAref. The glue library is but a memory to fade
away now...
Bodo Möller [Wed, 8 Nov 2000 10:05:34 +0000 (10:05 +0000)]
BN_CTX-related fixes.
Richard Levitte [Tue, 7 Nov 2000 23:43:21 +0000 (23:43 +0000)]
Constification of LHASH. Contributed by "Paul D. Smith" <psmith@gnu.org>
I didn't apply all his patches yet, since I have some hesitance about
unconstifying. To be pondered.
Richard Levitte [Tue, 7 Nov 2000 14:31:53 +0000 (14:31 +0000)]
Document that the Nuron hardware has been added and remove the
requirement for an engine utility since we now have that.
Richard Levitte [Tue, 7 Nov 2000 14:30:37 +0000 (14:30 +0000)]
Constify DH-related code.
Richard Levitte [Tue, 7 Nov 2000 13:54:39 +0000 (13:54 +0000)]
Constify DSA-related code.
Richard Levitte [Tue, 7 Nov 2000 13:53:21 +0000 (13:53 +0000)]
Make sure ERR_get_error() is declared.
Richard Levitte [Tue, 7 Nov 2000 13:49:46 +0000 (13:49 +0000)]
A few more constifications of some RSA routines that I forgot
yesterday.
Richard Levitte [Tue, 7 Nov 2000 13:23:16 +0000 (13:23 +0000)]
Lutz tells me HP cc uses the same syntax for flags that should be
passed down to ld as GNU cc.
Richard Levitte [Tue, 7 Nov 2000 13:21:09 +0000 (13:21 +0000)]
When ENGINE_by_id() couldn't find the given engine id, it generates an
error. When checking like engine_add() is, those errors are actually
good, so remove them.
Richard Levitte [Tue, 7 Nov 2000 11:25:26 +0000 (11:25 +0000)]
shl_load() also needs to load along a path given through an
environment variable, SHLIB_PATH. This change makes that possible.
Bodo Möller [Tue, 7 Nov 2000 09:39:51 +0000 (09:39 +0000)]
Handle BN_copy failure after successful BN_new.
Bodo Möller [Tue, 7 Nov 2000 09:35:19 +0000 (09:35 +0000)]
handle the case when BN_new returns NULL
Richard Levitte [Mon, 6 Nov 2000 23:29:52 +0000 (23:29 +0000)]
Document recent constifications.
Richard Levitte [Mon, 6 Nov 2000 23:24:59 +0000 (23:24 +0000)]
Constification of CRYPTO_get_ex_data() needed for the sake of
RSA_get_ext_data().
Richard Levitte [Mon, 6 Nov 2000 23:16:04 +0000 (23:16 +0000)]
The consequence of constification is that to pass the address to a
pointer to a const double pointe parameter, the pointer must point to
const data as well.
Richard Levitte [Mon, 6 Nov 2000 23:15:03 +0000 (23:15 +0000)]
Constify the RSAref glue code.
Richard Levitte [Mon, 6 Nov 2000 23:04:15 +0000 (23:04 +0000)]
Constify the RSA parts of the ASN.1 library. Note some ugly casts
that are needed in the ASN.1 macros. Hopefully, we can get rid of
those in an elegant way in the future.
Richard Levitte [Mon, 6 Nov 2000 22:49:05 +0000 (22:49 +0000)]
Constify the RSA library.
Richard Levitte [Mon, 6 Nov 2000 22:34:17 +0000 (22:34 +0000)]
Constify the RSA library.
Richard Levitte [Mon, 6 Nov 2000 22:15:50 +0000 (22:15 +0000)]
As a consequence of the BIGNUM constification, the ENGINE code needs a
few small constifying changes, and why not throw in a couple of extras
while I'm at it?
Richard Levitte [Mon, 6 Nov 2000 22:03:00 +0000 (22:03 +0000)]
Make all engines available in the openssl application.
Ulf Möller [Mon, 6 Nov 2000 21:28:38 +0000 (21:28 +0000)]
looks like a cut&paste error
Richard Levitte [Mon, 6 Nov 2000 21:15:54 +0000 (21:15 +0000)]
Constify the BIGNUM routines a bit more. The only trouble were the
two functions that did expansion on in parameters (BN_mul() and
BN_sqr()). The problem was solved by making bn_dup_expand() which is
a mix of bn_expand2() and BN_dup().
Richard Levitte [Mon, 6 Nov 2000 21:12:21 +0000 (21:12 +0000)]
mode used too early in EVP_PKEY_save_parameters.
Spotted by Ken Lalonde <ken@torus.ca>
Richard Levitte [Mon, 6 Nov 2000 06:52:47 +0000 (06:52 +0000)]
Make sure that shared libraries get the internal name engine with the
full version number and not just 0. This should mark the shared
libraries as not backward compatible. Of course, this should be
changed again when we can guarantee backward binary compatibility.
Ulf Möller [Sat, 4 Nov 2000 03:33:26 +0000 (03:33 +0000)]
Set the CryptoAPI randomness estimate back to 0.
The randomness may not actually be very good (we don't know).
Ulf Möller [Fri, 3 Nov 2000 23:07:01 +0000 (23:07 +0000)]
increase the value a bit
Geoff Thorpe [Fri, 3 Nov 2000 17:09:19 +0000 (17:09 +0000)]
Richard moved hw_nuron.c over to DSO-land recently, so this include isn't
needed now.
Ulf Möller [Fri, 3 Nov 2000 16:35:31 +0000 (16:35 +0000)]
Minor corrections (HPUX).
From: Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE>
Bodo Möller [Fri, 3 Nov 2000 15:40:10 +0000 (15:40 +0000)]
avoid memory leak
Richard Levitte [Fri, 3 Nov 2000 00:59:49 +0000 (00:59 +0000)]
Instead of just STACK, use STACK_OF(ASN1_OBJECT).
Richard Levitte [Thu, 2 Nov 2000 22:55:14 +0000 (22:55 +0000)]
Update the standards list to the current status
Richard Levitte [Thu, 2 Nov 2000 20:33:04 +0000 (20:33 +0000)]
Change the engine library so the application writer has to explicitely
load the "external" built-in engines (those that require DSO). This
makes linking with libdl or other dso libraries non-mandatory.
Change 'openssl engine' accordingly.
Change the engine header files so some declarations (that differed at
that!) aren't duplicated, and make sure engine_int.h includes
engine.h. That way, there should be no way of missing the needed
info.
Richard Levitte [Thu, 2 Nov 2000 19:24:48 +0000 (19:24 +0000)]
'openssl engine' can now list engine capabilities. The current
implementation is contained in the application, and the capability
string building part should really be part of the engine library.
This is therefore an experimental hack, and will be changed in the
near future.
Richard Levitte [Thu, 2 Nov 2000 18:58:43 +0000 (18:58 +0000)]
Better error reporting in 'openssl engine'
Richard Levitte [Thu, 2 Nov 2000 18:53:25 +0000 (18:53 +0000)]
make update
Bodo Möller [Thu, 2 Nov 2000 10:35:10 +0000 (10:35 +0000)]
Never call load_dh_param(NULL) because this leads to an illegal
fopen(NULL).
Richard Levitte [Wed, 1 Nov 2000 23:55:45 +0000 (23:55 +0000)]
-t is supported, so display some help about it.
Geoff Thorpe [Wed, 1 Nov 2000 23:14:19 +0000 (23:14 +0000)]
oops, remove comments that are no longer true.
Geoff Thorpe [Wed, 1 Nov 2000 23:12:01 +0000 (23:12 +0000)]
Explanation, tips, etc.
Geoff Thorpe [Wed, 1 Nov 2000 23:11:19 +0000 (23:11 +0000)]
This is a demo that performs SSL tunneling (client and/or server) and is
built using an abstracted state machine with a non-blocking IP wrapper
around it. README will follow in the next commit.
Richard Levitte [Wed, 1 Nov 2000 02:57:35 +0000 (02:57 +0000)]
Add application to enumerate, list and test engines with.
Richard Levitte [Wed, 1 Nov 2000 00:05:04 +0000 (00:05 +0000)]
Add support for shared libraries under Irix.
Submitted by Albert Chin-A-Young <china@thewrittenword.com>
Richard Levitte [Tue, 31 Oct 2000 23:39:08 +0000 (23:39 +0000)]
Rename true64 to the correct tru64.
Suggested by Albert Chin-A-Young <china@thewrittenword.com>
Richard Levitte [Tue, 31 Oct 2000 23:26:32 +0000 (23:26 +0000)]
Improvements to openssl.spec.
Submitted by Damien Miller <djm@mindrot.org>
This change has been CC:ed to crypt@bxa.doc.gov
Richard Levitte [Tue, 31 Oct 2000 23:14:19 +0000 (23:14 +0000)]
Add configuration option to build on Linux on both big-endian and
little-endian MIPS.
Submitted by Ralf Baechle <ralf@uni-koblenz.de>
Richard Levitte [Tue, 31 Oct 2000 11:58:56 +0000 (11:58 +0000)]
Make flag variables int instead of char. This avoids getting into trouble on systems where char is unsigned by default
Ulf Möller [Mon, 30 Oct 2000 20:14:27 +0000 (20:14 +0000)]
_lrotl() is a call to the C runtime library!
Geoff Thorpe [Mon, 30 Oct 2000 18:47:27 +0000 (18:47 +0000)]
DSO_load() should also work when it is passed a NULL - a new DSO is created
automatically, however some code was still referring to the original
pointer rather than the internal one (and thus to NULL instead of the
created pointer).
Richard Levitte [Sat, 28 Oct 2000 22:44:03 +0000 (22:44 +0000)]
Document the change.
Richard Levitte [Sat, 28 Oct 2000 22:40:40 +0000 (22:40 +0000)]
Add the possibility to use keys handled by engines in more
applications.
Richard Levitte [Sat, 28 Oct 2000 22:21:04 +0000 (22:21 +0000)]
Small documentation change
Ulf Möller [Fri, 27 Oct 2000 20:43:18 +0000 (20:43 +0000)]
-engine is gone.
Richard Levitte [Fri, 27 Oct 2000 20:28:37 +0000 (20:28 +0000)]
NetBSD doesn't use ftime().
Richard Levitte [Fri, 27 Oct 2000 11:22:17 +0000 (11:22 +0000)]
Document the OCSP addition.
Richard Levitte [Fri, 27 Oct 2000 11:09:52 +0000 (11:09 +0000)]
make update
Richard Levitte [Fri, 27 Oct 2000 11:05:35 +0000 (11:05 +0000)]
The majority of the OCSP code from CertCo.