oweals/openssl.git
24 years agoA few corrections with the shared library support:
Richard Levitte [Wed, 2 Aug 2000 03:03:17 +0000 (03:03 +0000)]
A few corrections with the shared library support:

1. make sure libssl.so becomes dependent on libcrypto.so
2. correct a number of silly bugs in the solaris-shared target, and make
   sure lib*.so also depends on libc.so.

24 years agoMake it so we can dynamically enable memory allocation debugging through the
Richard Levitte [Tue, 1 Aug 2000 17:15:36 +0000 (17:15 +0000)]
Make it so we can dynamically enable memory allocation debugging through the
environment variable OPENSSL_DEBUG_MEMORY (existence is sufficient).  At the
same time, it makes sure that CRYPTO_malloc_debug_init() gets expanded some-
where and thereby tested for compilation.

24 years agoRemove casts that are no longer needed.
Richard Levitte [Tue, 1 Aug 2000 08:41:13 +0000 (08:41 +0000)]
Remove casts that are no longer needed.

24 years agoIf a ip address is successfully parsed, the WSA structure under Win32 wasn't
Richard Levitte [Mon, 31 Jul 2000 22:49:27 +0000 (22:49 +0000)]
If a ip address is successfully parsed, the WSA structure under Win32 wasn't
properly initialised.  Fixed.
Bug reported by DeJuan Jackson <djackson@inverge.com>

24 years agoUpdate 'openssl passwd' documentation on selection of algorithms.
Bodo Möller [Mon, 31 Jul 2000 12:27:44 +0000 (12:27 +0000)]
Update 'openssl passwd' documentation on selection of algorithms.

24 years agoDocument the new DN printing options.
Dr. Stephen Henson [Sun, 30 Jul 2000 01:27:59 +0000 (01:27 +0000)]
Document the new DN printing options.

Change a few names to be more meaningful.

Fix typos in CA.pl docs.

24 years agoDocument rollback issues.
Bodo Möller [Sat, 29 Jul 2000 19:27:20 +0000 (19:27 +0000)]
Document rollback issues.

24 years agoFix SSL 2.0 rollback checking: The previous implementation of the
Bodo Möller [Sat, 29 Jul 2000 18:50:41 +0000 (18:50 +0000)]
Fix SSL 2.0 rollback checking: The previous implementation of the
test was never triggered due to an off-by-one error.

In s23_clnt.c, don't use special rollback-attack detection padding
(RSA_SSLV23_PADDING) if SSL 2.0 is the only protocol enabled in the
client; similarly, in s23_srvr.c, don't do the rollback check if
SSL 2.0 is the only protocol enabled in the server.

24 years agoNew ASN1_STRING_print_ex() and X509_NAME_print_ex()
Dr. Stephen Henson [Fri, 28 Jul 2000 01:58:15 +0000 (01:58 +0000)]
New ASN1_STRING_print_ex() and X509_NAME_print_ex()
functions. These are intended to be replacements
for the ancient ASN1_STRING_print() and X509_NAME_print()
functions.

The new functions support RFC2253 and various pretty
printing options. It is also possible to display
international characters if the terminal properly handles
UTF8 encoding (Linux seems to tolerate this if the
"unicode_start" script is run).

Still needs to be documented, integrated into other
utilities and extensively tested.

24 years agoThere's a slight possibility that a is 0 in BN_sub_word(), and might
Richard Levitte [Thu, 27 Jul 2000 21:32:23 +0000 (21:32 +0000)]
There's a slight possibility that a is 0 in BN_sub_word(), and might
therefore have unallocated parts.  Therefore, a check for the 0 case
is needed, resulting with the same thing as when a is negative.

24 years agoIn the case where a < 0 and |a| < w, the result (assigned to a) from
Richard Levitte [Thu, 27 Jul 2000 21:17:14 +0000 (21:17 +0000)]
In the case where a < 0 and |a| < w, the result (assigned to a) from
BN_add_word becomes wrongly negative...
This was discovered by Darrel Hankerson <dhankers@cacr.math.uwaterloo.ca>

24 years agoLooks like Win32 builds do not define THREADS. However, they're still
Richard Levitte [Thu, 27 Jul 2000 20:14:39 +0000 (20:14 +0000)]
Looks like Win32 builds do not define THREADS.  However, they're still
supporting threads, which means that th assertion is supperbly
dangerous, so make sure it's not compiled under Win32, period.

24 years agoAdd the possibility to get hexdumps of unprintable data when using
Richard Levitte [Thu, 27 Jul 2000 17:28:25 +0000 (17:28 +0000)]
Add the possibility to get hexdumps of unprintable data when using
'openssl asn1parse'.  As a side effect, the functions ASN1_parse_dump
and BIO_dump_indent are added.

24 years agoFix a bug in the new i2d_{ENUMERATED,INTEGER} that
Dr. Stephen Henson [Thu, 27 Jul 2000 01:27:22 +0000 (01:27 +0000)]
Fix a bug in the new i2d_{ENUMERATED,INTEGER} that
didn't recognise NULL to mean 'don't output anything'

24 years agoWhen data are written out in very small blocks (less than 3 bytes in
Richard Levitte [Wed, 26 Jul 2000 16:53:58 +0000 (16:53 +0000)]
When data are written out in very small blocks (less than 3 bytes in
size) through the base64 filter, b64_write() messes up it's parameters
in such a way that instead of writing correct base64 output, the first
4 characters of that output is repeated over and over.  This fix
corrects that problem.

24 years agoThere's a deadlock when ssleay_rand_bytes is called the first time, since
Richard Levitte [Wed, 26 Jul 2000 08:32:00 +0000 (08:32 +0000)]
There's a deadlock when ssleay_rand_bytes is called the first time, since
it wants to stir the pool using ssleay_rand_add.  This fix provides the
possibility to call ssleay_rand_add inside a locked state by simply telling
it not to do any locking through a static variable.  This isn't the most
elegant way one could do this, but it does retain thread safety during the
stirring process.

24 years agoFix warnings.
Dr. Stephen Henson [Wed, 26 Jul 2000 01:39:23 +0000 (01:39 +0000)]
Fix warnings.

In crypto/err/err.c need to initialise p to
NULL in case thread_hash is NULL. Otherwise
p will be uninitialized.

24 years agoMake NEG_PUBKEY_BUG on by default.
Dr. Stephen Henson [Wed, 26 Jul 2000 01:18:37 +0000 (01:18 +0000)]
Make NEG_PUBKEY_BUG on by default.

ASN1_TIME fixes.

New function c2i_ASN1_OBJECT().

24 years agoDarrel Hankerson <dhankers@cacr.math.uwaterloo.ca> correctly discovered
Richard Levitte [Wed, 26 Jul 2000 01:14:16 +0000 (01:14 +0000)]
Darrel Hankerson <dhankers@cacr.math.uwaterloo.ca> correctly discovered
that of the result pointer to bn_mul was the same as one of the two arguments,
That argument might have it's sign destroyed.  He provided this fix.

24 years agoAvoid a race condition if another thread happens to remove the error
Richard Levitte [Tue, 25 Jul 2000 16:56:39 +0000 (16:56 +0000)]
Avoid a race condition if another thread happens to remove the error
state at the same time.

24 years agoAdd support for solaris shared libraries, currently just experimental
Richard Levitte [Mon, 24 Jul 2000 20:50:21 +0000 (20:50 +0000)]
Add support for solaris shared libraries, currently just experimental
(there's no way to get it through configuration yet).

24 years agoAvoid loops, and make sure that it's possible to still build shared
Richard Levitte [Mon, 24 Jul 2000 20:36:46 +0000 (20:36 +0000)]
Avoid loops, and make sure that it's possible to still build shared
libraries even if the "shared" configuration option wasn't chosen.

24 years agoThis isn't entirely necessary if you do everything right from the
Richard Levitte [Mon, 24 Jul 2000 20:34:29 +0000 (20:34 +0000)]
This isn't entirely necessary if you do everything right from the
start, but can save you some trouble.  Just ignore "shared" if it
comes up among the given options, at least for now...

24 years ago"make update"
Richard Levitte [Mon, 24 Jul 2000 10:02:47 +0000 (10:02 +0000)]
"make update"

24 years agoAdd a note on installation under Win32.
Richard Levitte [Mon, 24 Jul 2000 09:57:02 +0000 (09:57 +0000)]
Add a note on installation under Win32.

24 years agoShow the running line count and definition cont in debug mode. That
Richard Levitte [Mon, 24 Jul 2000 07:01:57 +0000 (07:01 +0000)]
Show the running line count and definition cont in debug mode.  That
has helped me a bit when I ran into trouble.

24 years agoProfiling option for mk1mf.pl
Ulf Möller [Fri, 21 Jul 2000 19:00:38 +0000 (19:00 +0000)]
Profiling option for mk1mf.pl

24 years agocrypto/err.c bugfix
Bodo Möller [Fri, 21 Jul 2000 15:17:04 +0000 (15:17 +0000)]
crypto/err.c bugfix

24 years agoRedo and enhance the support for building shared libraries. Currently
Richard Levitte [Fri, 21 Jul 2000 15:08:53 +0000 (15:08 +0000)]
Redo and enhance the support for building shared libraries.  Currently
there's support for building under Linux and True64 (using examples
from the programming manuals), including versioning that is currently
the same as OpenSSL versions but should really be a different series.

With this change, it's up to the users to decide if they want shared
libraries as well as the static ones.  This decision now has to be
done at configuration time (well, not really, those who know what they
do can still do it the same way as before).

The OpenSSL programs (openssl and the test programs) are currently
always linked statically, but this may change in the future in a
configurable manner.  The necessary makefile variables to enable this
are in place.

Also note that I have done absolutely nothing about the Windows target
to get something similar.  On the other hand, DLLs are already the
default there, but without versioning, and I've no idea what the
possibilities for such a thing are there...

24 years agoBugfix: use write locks, not just read locks
Bodo Möller [Fri, 21 Jul 2000 15:07:56 +0000 (15:07 +0000)]
Bugfix: use write locks, not just read locks

24 years agoWe do PKCS8 as well
Richard Levitte [Fri, 21 Jul 2000 12:50:06 +0000 (12:50 +0000)]
We do PKCS8 as well

24 years agooops.
Ulf Möller [Fri, 21 Jul 2000 02:14:15 +0000 (02:14 +0000)]
oops.

24 years agodon't print debug output
Ulf Möller [Fri, 21 Jul 2000 01:13:26 +0000 (01:13 +0000)]
don't print debug output

24 years agoMove RNG initialization to RAND_poll(), and shared definitions to
Ulf Möller [Wed, 19 Jul 2000 21:43:23 +0000 (21:43 +0000)]
Move RNG initialization to RAND_poll(), and shared definitions to
rand_lcl.h

24 years agoRandomness polling function for Win9x.
Ulf Möller [Wed, 19 Jul 2000 21:35:35 +0000 (21:35 +0000)]
Randomness polling function for Win9x.

24 years agoDocument -purpose option in usage string.
Bodo Möller [Sat, 15 Jul 2000 18:10:35 +0000 (18:10 +0000)]
Document -purpose option in usage string.

24 years agoMake req seed the PRNG if signing with
Dr. Stephen Henson [Wed, 12 Jul 2000 23:55:30 +0000 (23:55 +0000)]
Make req seed the PRNG if signing with
an already existing DSA key.

Document the new smime options.

24 years agoFAQ about ar "missing" on Solaris.
Richard Levitte [Tue, 11 Jul 2000 21:44:53 +0000 (21:44 +0000)]
FAQ about ar "missing" on Solaris.

24 years agoAdd an early reference to BN_CTX_new so that the usage of BN_CTX_start
Bodo Möller [Tue, 11 Jul 2000 20:35:45 +0000 (20:35 +0000)]
Add an early reference to BN_CTX_new so that the usage of BN_CTX_start
is easier to grasp.

24 years agoFix some typose in the i2d/d2i functions that
Dr. Stephen Henson [Mon, 10 Jul 2000 18:33:05 +0000 (18:33 +0000)]
Fix some typose in the i2d/d2i functions that
call the i2c/c2i (they were not using the
content length for the headers).

Fix ASN1 long form tag encoding. This never
worked but it was never tested since it is
only used for tags > 30.

New options to smime program to allow the
PKCS#7 format to be specified and the content
supplied externally.

24 years agoCorrected small bug that could add ',L' when it shouldn't
Richard Levitte [Sat, 8 Jul 2000 07:56:12 +0000 (07:56 +0000)]
Corrected small bug that could add ',L' when it shouldn't

24 years agoNew ASN1 functions that just deal with
Dr. Stephen Henson [Fri, 7 Jul 2000 13:24:36 +0000 (13:24 +0000)]
New ASN1 functions that just deal with
content octets, not tag+length.

24 years agoMore experiments show that you can set your data segment size soft
Richard Levitte [Wed, 5 Jul 2000 17:46:58 +0000 (17:46 +0000)]
More experiments show that you can set your data segment size soft
limit higher and thereby get through compilation of sha_dgst.c.

24 years agoChange the FAQ entry a bit, giving the details as I observed them.
Richard Levitte [Wed, 5 Jul 2000 16:39:04 +0000 (16:39 +0000)]
Change the FAQ entry a bit, giving the details as I observed them.

24 years agoDocument the change.
Richard Levitte [Wed, 5 Jul 2000 02:52:47 +0000 (02:52 +0000)]
Document the change.

24 years agoI got sick and tired of having to keep track of NIDs when such a thing
Richard Levitte [Wed, 5 Jul 2000 02:45:36 +0000 (02:45 +0000)]
I got sick and tired of having to keep track of NIDs when such a thing
could be done automagically, much like the numbering in libeay.num and
ssleay.num.  The solution works as follows:

  - New object identifiers are inserted in objects.txt, following the
    syntax given in objects.README.
  - objects.pl is used to process obj_mac.num and create a new
    obj_mac.h.
  - obj_dat.pl is used to create a new obj_dat.h, using the data in
    obj_mac.h.

This is currently kind of a hack, and the perl code in objects.pl
isn't very elegant, but it works as I intended.  The simplest way to
check that it worked correctly is to look in obj_dat.h and check the
array nid_objs and make sure the objects haven't moved around (this is
important!).  Additions are OK, as well as consistent name changes.

24 years agoBeautification
Richard Levitte [Wed, 5 Jul 2000 02:23:55 +0000 (02:23 +0000)]
Beautification

24 years agoAdd a blurb on how to solve the problem with failing compiltaion of sha_dgst.c on...
Richard Levitte [Tue, 4 Jul 2000 14:02:36 +0000 (14:02 +0000)]
Add a blurb on how to solve the problem with failing compiltaion of sha_dgst.c on Alpha True64 Unix

24 years agoAdd PRNGD link.
Ulf Möller [Mon, 3 Jul 2000 17:26:51 +0000 (17:26 +0000)]
Add PRNGD link.

24 years agoUpdate STATUS.
Dr. Stephen Henson [Sun, 2 Jul 2000 21:11:11 +0000 (21:11 +0000)]
Update STATUS.

24 years agoReturn bignum '0' when BN_rand is asked for a 0 bit random number.
Bodo Möller [Sun, 2 Jul 2000 19:42:19 +0000 (19:42 +0000)]
Return bignum '0' when BN_rand is asked for a 0 bit random number.

24 years agoFix code structure (if ... else if ... where both parts
Bodo Möller [Sun, 2 Jul 2000 19:40:44 +0000 (19:40 +0000)]
Fix code structure (if ... else if ... where both parts
may be disabled by preprocessor symbols)

24 years agoDon't dereference NULL pointers.
Bodo Möller [Sun, 2 Jul 2000 18:16:38 +0000 (18:16 +0000)]
Don't dereference NULL pointers.
Submitted by: bowe@chip.ma.certco.com

24 years agoDon't let top go below zero!
Ben Laurie [Sat, 1 Jul 2000 16:30:27 +0000 (16:30 +0000)]
Don't let top go below zero!

24 years agoUse up-to-date functions.
Ben Laurie [Sat, 1 Jul 2000 16:25:20 +0000 (16:25 +0000)]
Use up-to-date functions.

24 years agoGive the user the option to measure real time instead of user CPU time.
Richard Levitte [Fri, 30 Jun 2000 17:16:46 +0000 (17:16 +0000)]
Give the user the option to measure real time instead of user CPU time.

24 years agoUndo the changes I just made. I'm not sure what I was thinking of.
Richard Levitte [Wed, 28 Jun 2000 16:47:45 +0000 (16:47 +0000)]
Undo the changes I just made.  I'm not sure what I was thinking of.
The message to everyone is "Do not hack OpenSSL when stressed"...

24 years agoDocument my latest changes.
Richard Levitte [Wed, 28 Jun 2000 16:24:29 +0000 (16:24 +0000)]
Document my latest changes.

24 years agoMake it possible for users of the openssl applications to specify the
Richard Levitte [Wed, 28 Jun 2000 16:10:56 +0000 (16:10 +0000)]
Make it possible for users of the openssl applications to specify the
EGD should be used as seeding input, and where the named socket is.

24 years agoMake it possible for people to tell where the EGD socket is through
Richard Levitte [Wed, 28 Jun 2000 16:09:54 +0000 (16:09 +0000)]
Make it possible for people to tell where the EGD socket is through
the RANDEGD environment variable.

24 years agoThat's it, I've seen questions about this one time too many for
Richard Levitte [Wed, 28 Jun 2000 14:32:12 +0000 (14:32 +0000)]
That's it, I've seen questions about this one time too many for
today.  Time to add extra info so the poor users know where to
go with their troubles.

24 years agoMake sure we use /usr/sbin/sysctl, especially since /usr/sbin is not
Richard Levitte [Wed, 28 Jun 2000 10:33:37 +0000 (10:33 +0000)]
Make sure we use /usr/sbin/sysctl, especially since /usr/sbin is not
always in the users $PATH...

24 years agoAdded references to RFCs 1421 to 1424, that describe PEM.
Richard Levitte [Mon, 26 Jun 2000 16:12:01 +0000 (16:12 +0000)]
Added references to RFCs 1421 to 1424, that describe PEM.
Suggested by Randolph Bentson <bentson@grieg.holmsjoen.com>

24 years agoBSD-style MD5-based password algorithm in 'openssl passwd'.
Bodo Möller [Fri, 23 Jun 2000 18:00:16 +0000 (18:00 +0000)]
BSD-style MD5-based password algorithm in 'openssl passwd'.
(Still needs to be tested against the original using sample passwords
of different length.)

24 years agoSteve fixed up some strange errors introduced into dso_win32.c, and I'm
Geoff Thorpe [Fri, 23 Jun 2000 17:29:05 +0000 (17:29 +0000)]
Steve fixed up some strange errors introduced into dso_win32.c, and I'm
just converting some spaces to tabs from his fix. :-)

24 years agoActually comment out the parts of BN_MOD_MUL_WORD that I inteded to
Bodo Möller [Fri, 23 Jun 2000 08:10:28 +0000 (08:10 +0000)]
Actually comment out the parts of BN_MOD_MUL_WORD that I inteded to
comment out in the previous commit

24 years agoIn BN_mod_exp_mont_word, avoid one application of BN_MOD_MUL_WORD,
Bodo Möller [Fri, 23 Jun 2000 05:51:37 +0000 (05:51 +0000)]
In BN_mod_exp_mont_word, avoid one application of BN_MOD_MUL_WORD,
and for small 'a' also a couple of calls to
BN_mod_mul_montgomery(r, r, r, ...).

24 years agoMove add_oid_section to apps.c, so it can be shared by several
Richard Levitte [Thu, 22 Jun 2000 22:07:27 +0000 (22:07 +0000)]
Move add_oid_section to apps.c, so it can be shared by several
applications.  Also, have it and the certificate and key loading
functions take a BIO argument for error output.

24 years agoDocument the change in req.
Richard Levitte [Thu, 22 Jun 2000 21:17:46 +0000 (21:17 +0000)]
Document the change in req.

24 years agoChange req so the new parameter '-rand file' uses the given file in
Richard Levitte [Thu, 22 Jun 2000 21:16:01 +0000 (21:16 +0000)]
Change req so the new parameter '-rand file' uses the given file in
addition to the file given through the RANDFILE option or environment
variable.

24 years agoOn case-insensitive systems, the 'install' target gets matched against
Richard Levitte [Thu, 22 Jun 2000 18:02:23 +0000 (18:02 +0000)]
On case-insensitive systems, the 'install' target gets matched against
the 'INSTALL' file, which means that 9 times of 10, the BlowFish
headers won't get installed.  Avoid this in the same way it's done in
crypto/des/Makefile.ssl, where someone apparently has thought of this...

24 years agoMove the certificate and key loading functions to apps.c, so they can
Richard Levitte [Thu, 22 Jun 2000 17:42:50 +0000 (17:42 +0000)]
Move the certificate and key loading functions to apps.c, so they can
be shared by several applications.

24 years agoForgot the self-documentation within req.
Richard Levitte [Thu, 22 Jun 2000 09:59:21 +0000 (09:59 +0000)]
Forgot the self-documentation within req.

24 years agoDocument the change in req.
Richard Levitte [Thu, 22 Jun 2000 09:19:59 +0000 (09:19 +0000)]
Document the change in req.

24 years agoSmall change to accept the command line parameter '-rand file'. This
Richard Levitte [Thu, 22 Jun 2000 09:13:43 +0000 (09:13 +0000)]
Small change to accept the command line parameter '-rand file'.  This
parameter takes precedence over the RANDFILE option in the
configuration file.

24 years agoChange mkstack.pl so it now sorts each group
Dr. Stephen Henson [Thu, 22 Jun 2000 00:34:27 +0000 (00:34 +0000)]
Change mkstack.pl so it now sorts each group
into lexical order. Previously it depended on
the order of files in the directory.

This should now mean that all systems will
agree on the order of safestack.h and will
not change it needlessly and avoid massive
needless commits to safestack.h in future.

It wont however avoid this one :-(

24 years agouse faster version
Ulf Möller [Wed, 21 Jun 2000 21:20:46 +0000 (21:20 +0000)]
use faster version

24 years ago* This adds some checking to the 'dlfcn' DSO_METHOD that at least lets
Geoff Thorpe [Wed, 21 Jun 2000 14:12:25 +0000 (14:12 +0000)]
* This adds some checking to the 'dlfcn' DSO_METHOD that at least lets
  it cope with OpenBSD which doesn't understand "RTLD_NOW".
* Added the dso_scheme config string entry for OpenBSD-x86 to give it
  DSO support.
* 'make update' that has also absorbed some of Steve's mkstack changes
  for the ASN-related macros.

24 years agoFixes for Win32 build.
Dr. Stephen Henson [Wed, 21 Jun 2000 02:25:30 +0000 (02:25 +0000)]
Fixes for Win32 build.

This is mostly a work around for the old VC++ problem
that it treats func() as func(void).

Various prototypes had been added to 'compare' function
pointers that triggered this. This could be fixed by removing
the prototype, adding function pointer casts to every call or
changing the passed function to use the expected arguments.
I mostly did the latter.

The mkdef.pl script was modified to remove the typesafe
functions which no longer exist.

Oh and some functions called OPENSSL_freeLibrary() were
changed back to FreeLibrary(), wonder how that happened :-)

24 years agoHandle ASN1_SET_OF and PKCS12_STACK_OF using function
Dr. Stephen Henson [Tue, 20 Jun 2000 18:45:28 +0000 (18:45 +0000)]
Handle ASN1_SET_OF and PKCS12_STACK_OF using function
casts in the same way as STACK_OF.

24 years ago'make update'
Geoff Thorpe [Tue, 20 Jun 2000 14:06:06 +0000 (14:06 +0000)]
'make update'

24 years agoAvoid unnecessary links and incomplete program file in apps/.
Bodo Möller [Mon, 19 Jun 2000 17:38:22 +0000 (17:38 +0000)]
Avoid unnecessary links and incomplete program file in apps/.

24 years ago'make update'
Richard Levitte [Mon, 19 Jun 2000 16:51:41 +0000 (16:51 +0000)]
'make update'

24 years agoAdd the missing callback pointer handling functions.
Richard Levitte [Mon, 19 Jun 2000 16:38:27 +0000 (16:38 +0000)]
Add the missing callback pointer handling functions.
Also, make sure empty slots of the dynamic lock stack are used.
Actually, I'm not really sure this is the right thing to do, and may
remove it, with an endlessly growing stack as result...

24 years agoThe dynamic thread API changed, and so does the documentation.
Richard Levitte [Mon, 19 Jun 2000 15:28:36 +0000 (15:28 +0000)]
The dynamic thread API changed, and so does the documentation.

24 years agoAdd OPENSSL_free at the end of CRYPTO_destroy_dynlockid.
Bodo Möller [Mon, 19 Jun 2000 13:53:15 +0000 (13:53 +0000)]
Add OPENSSL_free at the end of CRYPTO_destroy_dynlockid.

24 years agoRedo the support for dynamic locks. First of all, it was terribly
Richard Levitte [Mon, 19 Jun 2000 13:38:09 +0000 (13:38 +0000)]
Redo the support for dynamic locks.  First of all, it was terribly
insecure, so a static lock is added to isolate the sensitive parts.
Also, to avoid one thread freeing a lock that is used by another, a
reference counter is added.

24 years agoWith the new stack hack macros, there's no need to shorten the names
Richard Levitte [Sun, 18 Jun 2000 16:07:41 +0000 (16:07 +0000)]
With the new stack hack macros, there's no need to shorten the names
any more.

24 years agoModifications for VMS.
Richard Levitte [Sun, 18 Jun 2000 16:06:44 +0000 (16:06 +0000)]
Modifications for VMS.

24 years agoAdd support for dynamically created and destroyed mutexes. This will
Richard Levitte [Sun, 18 Jun 2000 15:59:04 +0000 (15:59 +0000)]
Add support for dynamically created and destroyed mutexes.  This will
be needed in some ENGINE code, and might serve elsewhere as well.
Note that it's implemented in such a way that the locking itself is
done through the same CRYPTO_lock function as the static locks.

WARNING: This is currently experimental and untested code (it will get
tested soon, though :-)).

24 years agoFirst of all, with the current macros, we should never get any
Richard Levitte [Sun, 18 Jun 2000 14:06:40 +0000 (14:06 +0000)]
First of all, with the current macros, we should never get any
type-specific stack function.  Second, even when we don't build any of
those functions, DECLARE_STACK_OF lines should not find themselves
into $def.

24 years agoUsing speaking "variable" names in macros so that e.g. grepping for
Bodo Möller [Sat, 17 Jun 2000 23:41:44 +0000 (23:41 +0000)]
Using speaking "variable" names in macros so that e.g. grepping for
sk_whatever_insert and sk_whatever_set immediately reveals the subtle
difference in parameter order.

Change mkstack.pl so that safestack.h is not rewritten when
nothing has changed.

24 years agoSafe stack reorganisation in terms of function casts.
Dr. Stephen Henson [Fri, 16 Jun 2000 23:29:26 +0000 (23:29 +0000)]
Safe stack reorganisation in terms of function casts.

After some messing around this seems to work but needs
a few more tests. Working out the syntax for sk_set_cmp_func()
(cast it to a function that itself returns a function pointer)
was painful :-(

Needs some testing to see what other compilers think of this
syntax.

Also needs similar stuff for ASN1_SET_OF etc etc.

24 years agoChange to have a single library that works on both Win9x and WinNT.
Richard Levitte [Fri, 16 Jun 2000 15:25:41 +0000 (15:25 +0000)]
Change to have a single library that works on both Win9x and WinNT.
As far as I understand, it still needs to be compiled on NT...
Contributed by Arne Ansper <arne@ats.cyber.ee>

24 years agotypo
Bodo Möller [Fri, 16 Jun 2000 14:35:05 +0000 (14:35 +0000)]
typo

24 years agoIn EVP_BytesToKey, replace explicit "8" by "PKCS5_SALT_LEN".
Bodo Möller [Fri, 16 Jun 2000 14:29:51 +0000 (14:29 +0000)]
In EVP_BytesToKey, replace explicit "8" by "PKCS5_SALT_LEN".

24 years agoThere are compilers that complain if a variable has the same name as a
Bodo Möller [Fri, 16 Jun 2000 14:24:37 +0000 (14:24 +0000)]
There are compilers that complain if a variable has the same name as a
label. (Reported by Alexei Bakharevski.)

24 years agoCurrently the DSO_METHOD interface has one entry point to bind all
Geoff Thorpe [Fri, 16 Jun 2000 10:45:36 +0000 (10:45 +0000)]
Currently the DSO_METHOD interface has one entry point to bind all
"symbols" including functions (of all prototypes( and variables. Whilst
casting any function type to another violates ANSI C (I believe), it is
a necessary evil in shared-library APIs. However, it is quite
conceivable that functions in general and data symbols could very well
be represented differently to each other on some systems, as Bodo said;

> Since the function/object distinction is a lot more likely to be
> important on real-life platforms supporting DSO *and* it can be quite
> easily done *and* it will silence compilers that don't like
> assignments from void pointers to function pointer variables, why
> not do it?

I agree. So this change splits the "dso_bind" handler in DSO_METHOD
into "dso_bind_var" and "dso_bind_func". Similarly the exported
function DSO_bind() has been split in two. I've also put together
changes for the various DSO_METHOD implementations, but so far only
DSO_dlfcn() has been tested. BTW: The prototype for dso_bind had been
a bit strange so I've taken the opportunity to change its shape (in
both variations).

Also, the README has been updated - particularly with a note about
using customised native name-translation for shared libraries (and that
you can't do it yet).

24 years agoAdd support for the modified SGC key format used in IIS.
Dr. Stephen Henson [Thu, 15 Jun 2000 23:48:05 +0000 (23:48 +0000)]
Add support for the modified SGC key format used in IIS.

24 years agoThis seems to work better with enums...
Richard Levitte [Thu, 15 Jun 2000 20:57:25 +0000 (20:57 +0000)]
This seems to work better with enums...