Commit graph

216 commits

Author SHA1 Message Date
Richard Levitte
812cb5638c make update 2001-03-24 12:39:59 +00:00
Richard Levitte
5238fccc15 Use stdlib.h to get size_t. 2001-03-21 18:43:12 +00:00
Richard Levitte
8bf49ea170 New cofiguration for Unixwre and SCO,with slightly better granularity. Contributed by Tim Rice <tim@multitalents.net> 2001-03-18 14:25:01 +00:00
Bodo Möller
8562801137 error codes are longs, not ints 2001-03-15 11:30:55 +00:00
Dr. Stephen Henson
40e15f9d78 Typo. 2001-03-10 01:57:38 +00:00
Bodo Möller
4e20b1a656 Instead of telling both 'make' and the user that ranlib
errors can be tolerated, hide the error from 'make'.
This gives shorter output both if ranlib fails and if
it works.
2001-03-09 14:01:42 +00:00
Ulf Möller
429cf462d0 old MSVC versions don't have rdtsc
use _emit instead

Pointed out by Jeremy Cooper <jeremy@baymoo.org>
2001-03-08 16:46:23 +00:00
Bodo Möller
65e8167079 Move ec.h to ec2.h because it is not compatible with what we will use.
Add EC vaporware: change relevant Makefiles and add some empty source
files.

"make update".
2001-03-05 20:13:37 +00:00
Richard Levitte
d88a26c489 make update
Note that all *_it variables are suddenly non-existant according to
libeay.num.  This is a bug that will be corrected.  Please be patient.
2001-02-26 10:54:08 +00:00
Bodo Möller
a2cf08cc23 undo previous change: "e_os.h" is now the official name for the file
to include (but the OpenSSL_0_9_6-stable branche still has
inconsistencies)
2001-02-22 15:08:30 +00:00
Bodo Möller
d3a73875e2 include e_os.h as "openssl/e_os.h" (as elsewhere) 2001-02-22 14:58:38 +00:00
Richard Levitte
41d2a336ee e_os.h does not belong with the exported headers. Do not put it there
and make all files the depend on it include it without prefixing it
with openssl/.

This means that all Makefiles will have $(TOP) as one of the include
directories.
2001-02-22 14:45:02 +00:00
Richard Levitte
627774fd87 Since RAND_file_name() uses strlen, make sure the number that's
compared to it has the type size_t.  Included the needed headers to
make that happen.
2001-02-22 14:40:15 +00:00
Richard Levitte
4981372d03 Include OpenSSL header files earlier so macros like OPENSSL_SYS_VMS
get a chance to be defined.
2001-02-20 12:44:46 +00:00
Richard Levitte
bc36ee6227 Use new-style system-id macros everywhere possible. I hope I haven't
missed any.

This compiles and runs on Linux, and external applications have no
problems with it.  The definite test will be to build this on VMS.
2001-02-20 08:13:47 +00:00
Richard Levitte
4901b41653 Make sure time() is properly declared. 2001-02-19 22:47:40 +00:00
Richard Levitte
cf1b7d9664 Make all configuration macros available for application by making
sure they are available in opensslconf.h, by giving them names starting
with "OPENSSL_" to avoid conflicts with other packages and by making
sure e_os2.h will cover all platform-specific cases together with
opensslconf.h.

I've checked fairly well that nothing breaks with this (apart from
external software that will adapt if they have used something like
NO_KRB5), but I can't guarantee it completely, so a review of this
change would be a good thing.
2001-02-19 16:06:34 +00:00
Ulf Möller
36fafffae2 New function OPENSSL_issetugid(). Needs more work. 2001-02-14 01:35:44 +00:00
Ulf Möller
a71b5abfa4 use <= instead of == 2001-02-08 17:45:32 +00:00
Ulf Möller
928cc3a6de point out that RAND_load_file() etc are only for seed files, not for
entropy devices or sockets.
2001-02-08 17:22:56 +00:00
Lutz Jänicke
a8ebe4697e Modify access to EGD socket to deal with EINTR etc that can appear
during connect() and other calls. First seen on Unixware-7.

Unify access to EGD-socket for all RAND_egd_*() methods.
2001-02-07 22:13:38 +00:00
Ben Laurie
4978361212 Make depend. 2001-02-04 21:06:55 +00:00
Bodo Möller
cc85ec447b Disable RegQueryValueEx() call.
Problem reported by "Wolfgang Marczy" <WMarczy@topcall.co.at>
in a message to openssl-dev (19 Dec 2000 13:40:51 +0100).
2001-01-12 15:16:21 +00:00
Dr. Stephen Henson
9b4dc8308f OCSP basic response verify. Very incomplete
but will verify the signatures on a response
and locate the signers certifcate.

Still needs to implement a proper OCSP certificate
verify.

Fix warning in RAND_egd().
2001-01-11 00:52:50 +00:00
Lutz Jänicke
599c03530a Add automatic query of EGD sockets to RAND_poll(). The EGD sockets are
only queried when the /dev/[u]random devices did not return enough
entropy. Only the amount of entropy missing to reach the required minimum
is queried, as EGD may be drained.
Queried locations are: /etc/entropy, /var/run/egd-pool
2001-01-09 16:44:59 +00:00
Lutz Jänicke
28e5428d5d Don't cheat: when only getting several bytes from each source, n is incremented
correctly, but RAND_add(..,n) counts the increasing n several times.
Only RAND_add(..,n) once entropy collection is finished.
2001-01-09 10:58:36 +00:00
Richard Levitte
0c61e299b3 Change RAND_poll for Unix to try a number of devices and only read
them for a short period of time (actually, poll them with select(),
then read() whatever is there), which is about 10ms (hard-coded value)
each.

Separate Windows and Unixly code, and start on a VMS variant that
currently just returns 0.
2001-01-08 10:59:26 +00:00
Bodo Möller
b2e7419a1d Simplify preprocessor statements. 2000-12-17 00:30:03 +00:00
Richard Levitte
3a3ca1d474 Do not poll DEVRANDOM if weäre building without an file pointer API.
Spotted by "David Schwartz" <davids@webmaster.com>.
2000-12-16 11:19:19 +00:00
Ulf Möller
c1db5bfc08 fix for Borland C 2000-11-29 16:43:50 +00:00
Ulf Möller
6a8ba34f9d in some new file names the first 8 characters were not unique 2000-11-12 22:32:18 +00:00
Ulf Möller
361c7f2b52 Set the CryptoAPI randomness estimate back to 0.
The randomness may not actually be very good (we don't know).
2000-11-04 03:33:26 +00:00
Ulf Möller
9f6fe8dbe7 increase the value a bit 2000-11-03 23:07:01 +00:00
Richard Levitte
5270e7025e Merge the engine branch into the main trunk. All conflicts resolved.
At the same time, add VMS support for Rijndael.
2000-10-26 21:07:28 +00:00
Richard Levitte
5ef67042f9 Do a favor to those who get weird compiles and report if RAND_pseudo_bytes
returns -1...
2000-10-10 15:08:30 +00:00
Richard Levitte
4e20a4e688 'ranlib' doesn't always run on some systems. That's actually
acceptable, since all that happens if it fails is a library with
an index, which makes linking slower, but still working correctly.
2000-09-25 08:53:15 +00:00
Richard Levitte
10bb0dbfec Changes by Jeffrey Altman <jaltman@columbia.edu> to make RAND_poll()
work better in Win32.  Verified by zhu qun-ying <qyzhu@krdl.org.sg>.
2000-09-21 07:02:27 +00:00
Richard Levitte
24842e0586 Going through performance statistics sometimes generates an exception,
so disable that part.
Reported by Jeffrey Altman <jaltman@columbia.edu>
2000-09-18 11:51:07 +00:00
Richard Levitte
159cf04e86 cyclecount is only used when __GNUC__ isn't defined. 2000-09-18 11:44:40 +00:00
Richard Levitte
676432d4e1 Disable the net statistics gathering code, since different compilers
disagree on the proper syntax and type names.
2000-09-18 11:24:32 +00:00
Richard Levitte
362f2b69ff Jeffrey Altman reminds us to initialize some variables and ercommends the use of LOadLibrary instead of GetModuleHandle 2000-09-18 01:48:38 +00:00
Richard Levitte
1d95fb659d Jeffrey Altman <jaltman@columbia.edu> sent me a patch that fixes the
problems with GetCursorInfo, but also adds network statistics and
performance statistics where available.
2000-09-17 18:42:13 +00:00
Richard Levitte
848f3d40c8 Later, Jeffrey changed his mind. Apparently, GetCursorInfo exists but
doesn't quite work on WinNT 4 earlier than SP6.  It works fine on
Windows 98 and Windows 2000.

I'm disabling it for now.  What's really needed is some kind of check
to see if GetCursorInfo is safe to call, or alternatively, GetCursor
or GetCursorPos could be used, according to Jeffrey.
2000-09-15 11:33:14 +00:00
Ulf Möller
1949e78336 Jeffrey Altman points out that GetQueueStatus() crashes on NT. 2000-09-15 04:20:40 +00:00
Richard Levitte
7abee0cedf Jeffrey Altman convinced me this patch was really needed, or there is
no way to make sure GetCursorInfo will give us a valid answer.
2000-09-14 09:19:19 +00:00
Ulf Möller
24b8bf2163 Point to Peter Gutmann's revised paper.
The copy at www.usenix.org is the old version.
2000-09-13 14:24:07 +00:00
Richard Levitte
c0366d89f6 3 changes:
- Make sure PCURSORINFO is defined even on systems that do not provide it.
- Change the reference to Peter Gutmann's paper.
- Make sure we don't walk the whole heap lists for performance reasons.
  Jeffrey Altman suggests following Peter Gutmann's advice to keep it
  to 50 heap entries per heap list.
2000-09-13 07:17:35 +00:00
Richard Levitte
74d2b0f112 Don't include e_os.h before the system headers 2000-09-11 16:37:36 +00:00
Richard Levitte
25a73f2690 A cast is needed or Borland C will complain. 2000-09-11 11:43:35 +00:00
Richard Levitte
62ab514e98 'make update' 2000-09-07 08:46:51 +00:00
Richard Levitte
d309394447 Make sure that 'initialized' is zeroed as well when cleaning up. 2000-08-08 15:06:44 +00:00
Richard Levitte
d6ade7422a 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.
2000-07-27 20:14:39 +00:00
Richard Levitte
a4125514f5 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.
2000-07-26 08:32:00 +00:00
Dr. Stephen Henson
033d001e90 Fix warnings.
In crypto/err/err.c need to initialise p to
NULL in case thread_hash is NULL. Otherwise
p will be uninitialized.
2000-07-26 01:39:23 +00:00
Richard Levitte
f944e7845c "make update" 2000-07-24 10:02:47 +00:00
Ulf Möller
2ad3c4c89e oops. 2000-07-21 02:14:15 +00:00
Ulf Möller
3866db2d5a don't print debug output 2000-07-21 01:13:26 +00:00
Ulf Möller
8ad7635ec9 Move RNG initialization to RAND_poll(), and shared definitions to
rand_lcl.h
2000-07-19 21:43:23 +00:00
Ulf Möller
c0722725f9 Randomness polling function for Win9x. 2000-07-19 21:35:35 +00:00
Richard Levitte
f365611ca3 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"...
2000-06-28 16:47:45 +00:00
Richard Levitte
dffd72f171 Make it possible for people to tell where the EGD socket is through
the RANDEGD environment variable.
2000-06-28 16:09:54 +00:00
Richard Levitte
3b3bc455d0 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.
2000-06-28 14:32:12 +00:00
Dr. Stephen Henson
130832150c 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 :-)
2000-06-21 02:25:30 +00:00
Bodo Möller
4ee1eb7bd4 There are compilers that complain if a variable has the same name as a
label. (Reported by Alexei Bakharevski.)
2000-06-16 14:24:37 +00:00
Geoff Thorpe
1c4f90a05d Enable DSO support on alpha (OSF1), cc and gcc.
Also, "make update" has added some missing functions to libeay.num,
updated the TABLE for the alpha changes, and updated thousands of
dependancies that have changed from recent commits.
2000-06-13 12:59:38 +00:00
Ben Laurie
1921eaad64 EVP constification. 2000-06-03 14:13:58 +00:00
Richard Levitte
26a3a48d65 There have been a number of complaints from a number of sources that names
like Malloc, Realloc and especially Free conflict with already existing names
on some operating systems or other packages.  That is reason enough to change
the names of the OpenSSL memory allocation macros to something that has a
better chance of being unique, like prepending them with OPENSSL_.

This change includes all the name changes needed throughout all C files.
2000-06-01 22:19:21 +00:00
Bodo Möller
2ace287dea Move Windows seeding functions into a separate file.
They have nothing to do with the particular PRNG (md_rand.c).
2000-05-31 12:48:35 +00:00
Bodo Möller
361ee9733f Improve PRNG robustness. 2000-05-30 21:44:36 +00:00
Bodo Möller
50e4e9283d When open()ing 'file' in RAND_write_file, don't use O_EXCL.
This is superfluous now that we don't have to avoid creating
multiple versions of the file on VMS (because older versions
are now deleted).
2000-05-11 23:10:27 +00:00
Richard Levitte
82271cee5b In Message-ID: <003201bfb332$14a07520$0801a8c0@janm.transactionsite.com>,
"Jan Mikkelsen" <janm@transactionsite.com> correctly states that the
OpenSSL header files have #include's and extern "C"'s in an incorrect
order.  Thusly fixed.
2000-05-02 12:16:01 +00:00
Bodo Möller
b841e0acd8 'entropy >= ENTROPY_NEEDED' should be evaluated while the
variables are locked.
2000-03-30 06:11:54 +00:00
Richard Levitte
7ae634de49 Since ssleay_rand_initialize() unlocks then locks CRYPTO_LOCK_RAND,
it's a good thing if ssleay_rand_status() would do the corresponding
lock and unlock as everyone else...
2000-03-29 17:25:52 +00:00
Ulf Möller
a6aa71ff5f Bug fix: RAND_write_file() failed to write to files created by open()
on Win32.
2000-03-19 22:57:07 +00:00
Richard Levitte
87b89b799f Make sure an error condition is returned if, for some reason, the file
couldn't be opened.
2000-03-19 19:10:03 +00:00
Ulf Möller
f3f3cc0cca oops. don't use "entropy" directly. 2000-03-19 17:20:26 +00:00
Ulf Möller
c97b11f4b3 New function RAND_event() collects entropy from Windows events. 2000-03-19 17:14:25 +00:00
Bodo Möller
863fe2ecac cleaning up a little 2000-03-12 23:27:14 +00:00
Bodo Möller
bf8479d22f Workaround for Windoze weirdness. 2000-03-11 01:29:26 +00:00
Bodo Möller
59fc2b0fc2 Preserve reason strings in automatically build tables. 2000-03-05 00:19:36 +00:00
Bodo Möller
1a2450bfc3 There is no reason to use downcase letters throughout in error reason
strings, it's just the default because it's usually ok.
2000-03-04 17:56:32 +00:00
Bodo Möller
5eb8ca4d92 Use RAND_METHOD for implementing RAND_status. 2000-03-02 14:34:58 +00:00
Ulf Möller
e64dceab74 Switch for turning on the predictable "random" number generator. 2000-02-28 20:19:39 +00:00
Ulf Möller
c9e1fe33be Fix for non-monolithic build.
Submitted by: Andrew Gray <agray@iconsinc.com>
2000-02-28 20:16:06 +00:00
Bodo Möller
fd74679ae2 Use standard header file string.h for memset prototype (where
"standard" refers to the C language, probably there's also some
standard that defines memory.h).
2000-02-27 17:37:41 +00:00
Ben Laurie
c850925cdf Declare memset. 2000-02-27 17:01:20 +00:00
Richard Levitte
7bd3a58022 make update 2000-02-26 04:48:22 +00:00
Richard Levitte
668ba7d63f ftruncate() and fileno() are not supported on all versions of OpenVMS
(they don't really exist before version 7), so that solution was toast.
Instead, let's do it the way it's done on Unix, but then remove older
versions of the file.

That new mechanism *may* fail for some unixly formated file spec,
although I wouldn't worry too much about it.
2000-02-26 01:55:56 +00:00
Richard Levitte
7c0dc41c38 For safety, check __VMS as well. 2000-02-26 00:26:17 +00:00
Richard Levitte
3e0f27f3c9 Changes to synchronise with Unix.
(actually, much more is needed, like a real config script)
2000-02-25 20:37:46 +00:00
Ulf Möller
fea217f96f EGD bugfix.
Submitted by: Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE>
2000-02-25 14:16:43 +00:00
Bodo Möller
c6709c6b0f handle entropy estimate correctly 2000-02-25 07:40:53 +00:00
Bodo Möller
1a33f6da8b Don't use buffered fread() to read from DEVRANDOM,
because this will drain the entropy pool.
2000-02-24 20:24:45 +00:00
Bodo Möller
a7b991bd68 Don't define platform-dependent preprocessor symbols for OPENSSL_THREAD_DEFINES.
"make update".
2000-02-24 18:19:50 +00:00
Ralf S. Engelschall
8d5b4ee1ca Add an evil cast, because POSIX/SUSv2 define connect(2) require
the second argument to be of type ``struct sockaddr *''.
2000-02-24 10:36:51 +00:00
Ulf Möller
4ec2d4d2b3 Support EGD. 2000-02-24 02:51:47 +00:00
Bodo Möller
853f757ece Allow for higher granularity of entropy estimates by using 'double'
instead of 'unsigned' counters.
Seed PRNG in MacOS/GetHTTPS.src/GetHTTPS.cpp.

Partially submitted by Yoram Meroz <yoram@mail.idrive.com>.
2000-02-19 15:22:53 +00:00
Bodo Möller
0a751d8ce8 16 * 8 = 128. 2000-02-10 21:47:06 +00:00
Ulf Möller
657e60fa00 ispell (and minor modifications) 2000-02-03 23:23:24 +00:00
Ulf Möller
9d1a01be8f Source code cleanups: Use void * rather than char * in lhash,
eliminate some of the -Wcast-qual warnings (debug-ben-strict target)
2000-01-30 22:20:28 +00:00