Commit Graph

295 Commits

Author SHA1 Message Date
Richard Levitte 9b7a552f4b Recognise Darwin as well. For now, have it do exactly the same thing as for Rhapsody 2000-12-01 01:11:54 +00:00
Richard Levitte f9b3bff6f7 First tentative impementation of Kerberos 5 cryptos and keys for SSL/TLS. Implemented by Vern Staats <staatsvr@asc.hpc.mil>, further hacked and distributed by Jeffrey Altman <jaltnab@columbia.edu> 2000-11-30 22:53:34 +00:00
Richard Levitte 7f56097c65 I might want to debug the assembler modules... 2000-11-18 20:44:25 +00:00
Richard Levitte f6a8898fc3 Update my own debugging configuration entry 2000-11-12 16:20:40 +00:00
Richard Levitte ccb9643f02 Remove references to RSAref. The glue library is but a memory to fade
away now...
2000-11-08 17:51:37 +00:00
Richard Levitte 8de2910b5c Lutz tells me HP cc uses the same syntax for flags that should be
passed down to ld as GNU cc.
2000-11-07 13:23:16 +00:00
Richard Levitte e06433d9ba shl_load() also needs to load along a path given through an
environment variable, SHLIB_PATH.  This change makes that possible.
2000-11-07 11:25:26 +00:00
Richard Levitte dcea8e12e2 Add support for shared libraries under Irix.
Submitted by Albert Chin-A-Young <china@thewrittenword.com>
2000-11-01 00:05:04 +00:00
Richard Levitte 26b264795d Rename true64 to the correct tru64.
Suggested by Albert Chin-A-Young <china@thewrittenword.com>
2000-10-31 23:39:08 +00:00
Richard Levitte 815c83f70a Add configuration option to build on Linux on both big-endian and
little-endian MIPS.
Submitted by Ralf Baechle <ralf@uni-koblenz.de>
2000-10-31 23:14:19 +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 b5a43800ef FreeBSD-elf can do threads. However, there seems to be confusion if
you should defined _THREAD_SAFE (I found that in an include file, and
that's what everybody tells me) or _THREADSAFE (that's what the gcc
manual says in the FreeBSD-specific section), so I defined both, just
to be safe.
2000-10-21 22:05:03 +00:00
Richard Levitte 0fd44e2ddb Add what's needed to get shared libraries on HP-UX.
N.B.: This has not been tested at all, that's my next step.
2000-10-21 21:24:11 +00:00
Richard Levitte 82ce0b2308 Even when you don't want to create shared libraries, it's a good idea
to have the full extension information, so residual shared libraries
can be removed so the applications and test programs do not get linked
against them by mistake...
2000-10-13 16:04:20 +00:00
Richard Levitte a22fb399cb Rework the system to generate shared libraries:
- Make note of the expected extension for the shared libraries and
    if there is a need for symbolic links from for example libcrypto.so.0
    to libcrypto.so.0.9.7.  There is extended info in Configure for
    that.

  - Make as few rebuilds of the shared libraries as possible.

  - Still avoid linking the OpenSSL programs with the shared libraries.

  - When installing, install the shared libraries separately from the
    static ones.
2000-10-13 15:25:06 +00:00
Richard Levitte d2dcf4f40d Make sure that shareable libraries are turned off if we don't know how
to make them...
2000-10-09 00:48:30 +00:00
Richard Levitte a0ec9cf6d5 Linux on Alpha with gcc knows about shared libraries. 2000-10-08 19:40:07 +00:00
Richard Levitte 318e09356b Kris Kennaway <kris@FreeBSD.org> tells us that FreeBSD/Alpha shouldn't
use an optimization higher than -O.
2000-09-22 06:06:25 +00:00
Richard Levitte c5f8bbbc0b Portability patch for HP MPE/iX. Submitted by Mark Bixby <mark_bixby@hp.com> 2000-09-21 05:42:01 +00:00
Richard Levitte 2bd8aaefa4 HP-UX 64-bit has dlfcn, so let's use that instead of the old dl. 2000-09-18 16:34:41 +00:00
Richard Levitte 1cf3bbaea6 Typo in the added hpux targets. -ldl should be -ldld. 2000-09-18 09:34:05 +00:00
Richard Levitte d0c2ebf414 A patch from HP for better performance.
Submitted by Kevin Steves <ks@hp.se> 3 months ago...
2000-09-17 20:04:42 +00:00
Richard Levitte 72660f5f15 Add a configuration for Sony News 4.
Submitted by NAKAJI Hiroyuki <nakaji@tutrp.tut.ac.jp>
2000-09-14 12:48:48 +00:00
Richard Levitte cea81a62ff Make sure that Configure will defined DSO_WIN32 for the Win32 targets. I feel a bit unsure if this should really be done for Mingw32 and CygWin32 2000-09-13 11:29:15 +00:00
Richard Levitte 2aff74dd68 debug-linux-elf and debug-linux-elf-efence need to be linked with
libdl just as linux-elf...
2000-09-11 21:57:27 +00:00
Bodo Möller 36124b1087 Changes for QNX: there is no thread support, and the previous
configuration only worked with no-asm.
2000-09-06 12:25:58 +00:00
Dr. Stephen Henson 2f043896d1 *BIG* verify code reorganisation.
The old code was painfully primitive and couldn't handle
distinct certificates using the same subject name.

The new code performs several tests on a candidate issuer
certificate based on certificate extensions.

It also adds several callbacks to X509_VERIFY_CTX so its
behaviour can be customised.

Unfortunately some hackery was needed to persuade X509_STORE
to tolerate this. This should go away when X509_STORE is
replaced, sometime...

This must have broken something though :-(
2000-09-05 17:53:58 +00:00
Bodo Möller bbb8de0966 Avoid abort() throughout the library, except when preprocessor
symbols for debugging are defined.
2000-09-04 15:34:43 +00:00
Bodo Möller a545c6f6b1 QNX 4 support. 2000-09-01 09:54:25 +00:00
Richard Levitte c59cb511f3 Allow reconfiguration. This can be useful if some source update
requires that you configure again, but you don't want to reenter all
those configuration arguments again.
2000-08-17 10:23:45 +00:00
Richard Levitte 25b93b9def IBMcxx complains that maxmem is as low as 2048 for certain modules
(like all the digests).  Setting maxmem to 16K seems to give the
compiler enough space to do all the optimization it wants.
2000-08-14 17:00:36 +00:00
Richard Levitte fcc6a1c4ec Added and corrected documentation for the 'shared' option 2000-08-02 04:19:50 +00:00
Richard Levitte f4b45b76ef I had completely forgotten that print_table_entry also needed to read the two
"shared" variables on it's own...
2000-08-02 03:43:29 +00:00
Richard Levitte 554097ff7f Add support for shared libraries on Solaris. 2000-08-02 03:27:12 +00:00
Richard Levitte f4316c36df Avoid loops, and make sure that it's possible to still build shared
libraries even if the "shared" configuration option wasn't chosen.
2000-07-24 20:36:46 +00:00
Richard Levitte b436a98257 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...
2000-07-21 15:08:53 +00:00
Geoff Thorpe 1a797ac67c * 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.
2000-06-21 14:12:25 +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
Bodo Möller 6da6a11331 Another attempt to allow compiling on SunOS 4.*. 2000-06-08 22:47:09 +00:00
Ulf Möller 7e6502a6cb Option "no-symlinks" to configure without creating the links (e.g.
for use with makefile.one)
2000-06-06 20:52:42 +00:00
Andy Polyakov 62187daf9f MT-support for IRIX 6.x and Alpha-Linux 2000-06-06 14:13:16 +00:00
Richard Levitte b368eddd04 According to Gordon Atwood <gordon@cs.ualberta.ca>, GNU C on SunOS
4.1.4 uses libiberty to define strtoul and strerror.
2000-06-04 07:17:28 +00:00
Ulf Möller be5d92e014 CygWin32 support.
Submitted by: John Jarvie <jjarvie@newsguy.com>
2000-06-03 23:23:10 +00:00
Ben Laurie 1921eaad64 EVP constification. 2000-06-03 14:13:58 +00:00
Geoff Thorpe e41c8d6ad4 This change will cause builds (by default) to not use different STACK
structures and functions for each stack type. The previous behaviour
can be enabled by configuring with the "-DDEBUG_SAFESTACK" option.
This will also cause "make update" (mkdef.pl in particular) to
update the libeay.num and ssleay.num symbol tables with the number of
extra functions DEBUG_SAFESTACK creates.

The way this change works is to accompany each DECLARE_STACK_OF()
macro with a set of "#define"d versions of the sk_##type##_***
functions that ensures all the existing "type-safe" stack calls are
precompiled into the underlying stack calls. The presence or abscence
of the DEBUG_SAFESTACK symbol controls whether this block of
"#define"s or the DECLARE_STACK_OF() macro is taking effect. The
block of "#define"s is in turn generated and maintained by a perl
script (util/mkstack.pl) that encompasses the block with delimiting
C comments. This works in a similar way to the auto-generated error
codes and, like the other such maintenance utilities, is invoked
by the "make update" target.

A long (but mundane) commit will follow this with the results of
"make update" - this will include all the "#define" blocks for
each DECLARE_STACK_OF() statement, along with stripped down
libeay.num and ssleay.num files.
2000-06-01 05:13:52 +00:00
Geoff Thorpe 547bf7f983 "make update"
Also, corrects the linux-elf-arm config string, it was previously setting
$des_obj = dlfcn :-)
2000-05-30 12:59:43 +00:00
Richard Levitte 380d3aa6be Configuration for linux on ARM (contributed by Jeremy Norris
<jeremy.norris@rebel.com>)
2000-05-29 16:18:37 +00:00
Richard Levitte 2933ed4df7 Add the target system linux-m68k 2000-05-24 22:00:59 +00:00
Dr. Stephen Henson 439df5087f Fix c_rehash script, add -fingerprint option to crl. 2000-05-18 00:33:00 +00:00
Richard Levitte 8530712dff Being sick and tired of the hogging Efence does on my laptop, I
decided to provide an alternative...
2000-05-08 16:58:29 +00:00
Geoff Thorpe eca57e925a I forgot about $openssl_other_defines ... should probably do this
for consistency. Not sure though whether HAVE_DLFCN_H should be
included too? If we go the autoconf route then this probably wouldn't
be included.
2000-04-06 11:56:45 +00:00
Geoff Thorpe bc2aadad84 This helps make the DSO stuff more portable;
* "no-dso" option available in Configure so that all DSO methods will
  return NULL, overriding any support the platform might otherwise
  have built.
* dlfcn_no_h config string now available rather than just dlfcn. This
  is for platforms that have dlfcn.h functions but do not have (or
  need) the dlfcn.h header file.
2000-04-06 07:09:45 +00:00
Geoff Thorpe 9ec0126ed2 This commit ties the new DSO code (crypto/dso/) into the build for a
variety of platforms. A few are missing, and they will be added in
eventually, but as this is new stuff, it was better to not break lots of
platforms in one go that we can't easily test. The changes to "Configure"
should illustrate how to add support to other systems if you feel like
having a go.

NB: I'll add something shortly to allow you to add "dlfcn.h" support on
those platforms that don't have (or need) a dlfcn.h header file. (The
symbol for Configure will probably by "dlfcn_no_h").

Thanks to Richard Levitte, who is responsible for the dso_dl.c support,
understanding the trickier aspects of the build process, and giving great
feedback on everything else.

[Don't use this stuff if you're easily offended by changes to the
interface or behaviour - it's still work in progress.]

PR:
2000-04-04 22:32:19 +00:00
Bodo Möller ce24e726b4 List "no-..." option first because it's the most frequently needed one. 2000-03-25 19:02:09 +00:00
Bodo Möller 2d99cee790 Explain configuration options more completely. 2000-03-25 01:49:07 +00:00
Richard Levitte 3bead95bae A couple of corrections concerning HPUX 10 and shared libraries.
Contributed by Lutz Jaenicke.
2000-03-24 16:06:22 +00:00
Richard Levitte 72fbca2c47 A quick hack to have ssize_t work with gcc under SunOS 4 (tested on
SunOS 4.1.4).
2000-03-23 07:32:34 +00:00
Bodo Möller 863fe2ecac cleaning up a little 2000-03-12 23:27:14 +00:00
Richard Levitte b7e1636171 Protect variables from potential misinterpretations, for example a
colon which may bite the lesser knowleged...
2000-03-07 23:17:48 +00:00
Richard Levitte 41b8994e99 I'm experimenting with a hack in dopr() and friends b_printf.c to make
it work like asprintf().
2000-03-02 07:38:45 +00:00
Ulf Möller dd8ec7cc69 some people can't read :) 2000-02-29 19:00:48 +00:00
Ralf S. Engelschall 010712ff23 Added configuration support for Linux/IA64
Submitted by: Rolf Haberrecker <rolf@suse.de>
2000-02-29 15:29:02 +00:00
Bodo Möller 865874f2dd Switch to 0.9.6, and finally remove the annoying message
about renamed header files.
2000-02-28 18:03:16 +00:00
Ulf Möller 775c63fc02 Reorganize bn_mul.c (no bugfix yet), remove obsolete files in BN library. 2000-02-26 22:16:47 +00:00
Richard Levitte 9a5a7401e9 Add support for Unixware 7. Thanks to Ron Record <rr@sco.com> for the
patch.
2000-02-26 03:51:55 +00:00
Ulf Möller 40134e22d0 linux-ppc
Submitted by: Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2000-02-25 14:06:27 +00:00
Bodo Möller 935a50e886 Use threads for linux-ppc. 2000-02-25 13:45:30 +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
Richard Levitte 9ae2ad23e6 Avoid saving any macros starting with a _, since that can create
trouble if header files are included in some "impropper" order.
It's much better if the application programmer has to specify on his
or her own if _REENTRANT shall be defined and when.
2000-02-23 22:45:22 +00:00
Bodo Möller 745c70e565 Move MAC computations for Finished from ssl3_read_bytes into
ssl3_get_message, which is more logical (and avoids a bug,
in addition to the one that I introduced yesterday :-)
and makes Microsoft "fast SGC" less special.
MS SGC should still work now without an extra state of its own
(it goes directly to SSL3_ST_SR_CLNT_HELLO_C, which is the usual state
for reading the body of a Client Hello message), however this should
be tested to make sure, and I don't have a MS SGC client.
2000-02-21 10:16:30 +00:00
Ulf Möller 10a926c1eb More compact Configure usage message. 2000-02-21 00:55:45 +00:00
Dr. Stephen Henson d754b3850f Change the 'other' structure in certificate aux info. 2000-02-20 18:27:23 +00:00
Bodo Möller fb77c6fb45 Keep variable names consistent with corresponding pre-processor
symbols.
2000-02-18 21:08:37 +00:00
Ulf Möller 7fa1343e93 Make excluded cipher entry in opensslconf.h a bit more descriptive. 2000-02-18 19:01:55 +00:00
Bodo Möller e5b4462f47 Stay compatible to older Perl5 releases (see diff -r1.11 -r1.12). 2000-02-18 11:35:10 +00:00
Bodo Möller 26dc267f8c Avoid potential conflicts between #defines in opensslconf.h and
defines when compiling applications, and allow applications to
select what #defines to enable -- OPENSSL_EXLUCDE_DEFINES
enables the "#define NO_whatever" stuff only, which avoids
potential severe confusion caused by "#define _REENTRANT" when
opensslconf.h is not the first header file #included.
2000-02-18 11:15:32 +00:00
Richard Levitte fb044c592d Make Configure add the configuration options that it was copmiled
with.

Currently, those defines are protected with a OPENSSL_EXCLUDED.  That
may not be the best strategy, but it will do for now.
2000-02-18 09:11:37 +00:00
Andy Polyakov f8bbcf3af0 Avoid GNU C assembler templates under Solaris x86. 2000-02-15 17:31:12 +00:00
Andy Polyakov bcba6cc60f HP-UX tune-up: new unified configs, HP C compiler bug workaround. 2000-02-12 23:33:01 +00:00
Andy Polyakov 0fad6cb7e7 Support for MacOS X (Rhapsody) is added. Also get rid of volatile
qualifier in asm definitions as it prevents compiler from moving
the instruction(s) during optimization pass.
2000-02-06 11:15:20 +00:00
Bodo Möller 37e48b88ad Generate just one error code if iterated SSL_CTX_get() fails.
Avoid enabled 'assert()' in production library.
2000-02-05 19:29:00 +00:00
Ulf Möller 8efb60144d EBCDIC support.
Submitted by: Martin Kraemer <martin.kraemer@mch.sni.de>
2000-02-01 02:21:16 +00:00
Ulf Möller 89ec98e0ce Print a reassuring message when Configure is done. 2000-02-01 01:35:29 +00:00
Richard Levitte f27c5509f7 Finally found a form that I like... 2000-01-29 01:12:50 +00:00
Richard Levitte 0b3300f866 It works much better when you don't press shift at the wrong moment... 2000-01-27 21:11:51 +00:00
Richard Levitte 01d16b54c2 Added a configuration for myself... 2000-01-27 21:09:15 +00:00
Ulf Möller 99e812cb93 config string comment 2000-01-22 21:26:01 +00:00
Ulf Möller b838465135 WINDOWS is defined in e_os.h. The problem was WIN32 (the new egcs uses _WIN32). 2000-01-20 23:59:24 +00:00
Bodo Möller 4f392a200e Define WINDOWS for Mingw32 and Cygwin. 2000-01-20 23:15:15 +00:00
Dr. Stephen Henson 6e6bc352b1 Finish off the X509_ATTRIBUTE string stuff. 2000-01-20 01:37:17 +00:00
Ulf Möller aa82db4fb4 Add missing #ifndefs that caused missing symbols when building libssl
as a shared library without RSA.  Use #ifndef NO_SSL2 instead of
NO_RSA in ssl/s2*.c.

Submitted by: Kris Kennaway <kris@hub.freebsd.org>
Modified by Ulf Möller
2000-01-16 21:10:00 +00:00
Richard Levitte f1d712ce80 Make sure that generated files are labeled as such (except in dofile(), for now) 2000-01-11 13:07:21 +00:00
Bodo Möller 63da21c01b make no-des and no-rc2 work. 2000-01-07 12:15:54 +00:00
Bodo Möller 3a4f14f3d1 Rename CA.pl to CA.pl.in (no actual changes), and let Configure
set the #! line with the path to Perl.

Submitted by: Peter Jones
2000-01-05 01:31:22 +00:00
Andy Polyakov bdf5e18317 Enhanced support for Alpha Linux. See CHANGES for details. 2000-01-02 20:46:58 +00:00
Mark J. Cox ce2c95b2a2 Fix assembler for Alpha (tested only on DEC OSF not Linux or *BSD). The
problem was that one of the replacement routines had not been working since
SSLeay releases.  For now the offending routine has been replaced with
non-optimised assembler.  Even so, this now gives around 95% performance
improvement for 1024 bit RSA signs.
1999-11-03 14:10:10 +00:00
Bodo Möller 798757762a Improve support for running everything as a monolithic application.
Submitted by: Lennart Bång, Bodo Möller
1999-10-25 19:36:01 +00:00
Andy Polyakov 2dae04d038 RC4 tune-up featuring 30-40% performance improvement on most RISC
platforms. See crypto/rc4/rc4_enc.c for further details.
1999-10-07 12:03:59 +00:00
Ulf Möller d4cf2f1882 HPUX 11 flags.
Contributed by: Peter Huang <PETER_HUANG@HP-Cupertino-om8.om.hp.com>
1999-09-30 08:32:54 +00:00
Ulf Möller 49e747e670 Generate obj_dat.h in "make update". 1999-09-29 21:03:02 +00:00