Commit Graph

28 Commits

Author SHA1 Message Date
Nicolas Williams
3d4fbf9aac Fix lib/hcrypto for Windows 2016-04-16 16:58:08 -05:00
Nicolas Williams
490337f4f9 Make OpenSSL an hcrypto backend proper
This adds a new backend for libhcrypto: the OpenSSL backend.

Now libhcrypto has these backends:

 - hcrypto itself (i.e., the algorithms coded in lib/hcrypto)
 - Common Crypto (OS X)
 - PKCS#11 (specifically for Solaris, but not Solaris-specific)
 - Windows CNG (Windows)
 - OpenSSL (generic)

The ./configure --with-openssl=... option no longer disables the use of
hcrypto.  Instead it enables the use of OpenSSL as a (and the default)
backend in libhcrypto.  The libhcrypto framework is now always used.

OpenSSL should no longer be used directly within Heimdal, except in the
OpenSSL hcrypto backend itself, and files where elliptic curve (EC)
crypto is needed.

Because libhcrypto's EC support is incomplete, we can only use OpenSSL
for EC.  Currently that means separating all EC-using code so that it
does not use hcrypto, thus the libhx509/hxtool and PKINIT EC code has
been moved out of the files it used to be in.
2016-04-15 00:16:17 -05:00
Luke Howard
fdf8782db2 hcrypto: PKCS#11 backend
implement a PKCS#11 backend for hcrypto. tested with Solaris 11 and
SoftHSM, this is now the default when building on Solaris.
2015-12-09 11:08:35 +11:00
Jeffrey Altman
902aa4ee02 tests on Windows
Modify the NTMakefile rules for tests so that a failed test does
not prevent subsequent tests from being executed.

Change-Id: I9595ad4a1527feae7c402241bf06ab21a0b76d4a
2015-03-21 15:44:48 -04:00
Luke Howard
5023f55208 Add Windows CNG (BCrypt) support to HCrypto EVP API 2015-02-11 16:00:32 +11:00
Asanka C. Herath
b755dc12f4 Windows: Fix hcrypto tests on cygwin 2010-11-29 10:53:50 -05:00
Asanka C. Herath
3855dd33bd Windows: Catch up with hcrypto changes 2010-11-24 15:32:31 -05:00
Asanka C. Herath
dd99c2054c Windows: Add missing hcrypto dependencies and exports 2010-11-24 15:32:25 -05:00
Asanka C. Herath
a4be8fcd7e Windows: Add missing export for libhcrypto-exports.def 2010-09-18 23:41:53 -04:00
Love Hornquist Astrand
8de6bccd50 add validate.obj 2010-09-18 11:33:09 -07:00
Asanka Herath
1e540dbf5c Windows: Fix dependencies for hcrypto/test_hmac.exe 2010-09-14 08:03:28 -04:00
Asanka Herath
93c08e67f0 Windows: Add missing dependency 2010-08-20 16:55:15 -04:00
Asanka Herath
fd3d2ccd0d Windows: Build with USE_HCRYPTO_IMATH 2010-08-20 16:53:57 -04:00
Asanka Herath
0730c0b98f Windows: ASN1_LIB needs to be defined for Heimdal library 2010-08-20 13:14:12 -04:00
Asanka Herath
63e3aedf8c Windows: Fix lib/hcrypto tests 2010-08-20 13:09:49 -04:00
Asanka Herath
ba44354336 Windows: Check exported symbols
During a test run, cross check the Windows exports list against the
version-script files.  For the test to pass, all symbols on either
list should be accounted for.

If there are symbols that are specific to Windows or symbols that are
not included on Windows, they should be annotated in the .def file as
follows:

    ;!  non_windows_symbol

    	common_symbol

        windows_only_symbol ;!
2010-08-20 13:06:55 -04:00
Asanka Herath
d83611238a Windows: Build a single heimdal.dll
Heimdal.dll is a combination of libasn1, libwind, libhcrypto, libhx509
and libkrb5.
2010-08-20 13:06:54 -04:00
Asanka Herath
ea4d8dbfdb Windows: Use EXEPREP and DLLPREP macros for processing binaries
Once DLLs and EXEs are built, they need to have their manifests
processed and signed.  These steps are encapsulated in the EXEPREP and
DLLPREP Makefile macros.  Use them instead of invoking each processing
macro individually.
2010-08-20 13:04:06 -04:00
Asanka Herath
e9160dbcfa Support parallelized builds on Windows 2010-08-20 13:03:32 -04:00
Love Hornquist Astrand
c073ec126f remove unused stuff 2010-08-20 00:01:49 -07:00
Love Hornquist Astrand
1f226a37b9 try glue in ltm in NTMakefile 2010-08-19 23:55:33 -07:00
Love Hornquist Astrand
5377497d47 add dh-tfm.obj 2010-06-01 11:02:56 -07:00
Asanka Herath
85f6e6d670 Build Tom's fast math library on Windows 2010-05-26 12:17:30 -04:00
Asanka Herath
e3882ffc62 (lib/hcrypto) Make w32crypto the default and only RAND method on Windows 2009-11-26 01:38:43 -05:00
Asanka Herath
4d923e766c (lib/hcrypto) Add missing header files and update exports list 2009-11-25 12:43:13 -05:00
Asanka Herath
348bd51d0a Build libhrypto as a .dll by default 2009-11-24 10:18:19 -08:00
Asanka Herath
c1a6ab1d55 Update hcrypto/NTMakefile 2009-11-24 10:11:16 -08:00
Asanka Herath
b1063ea8fc Initial Windows port 2009-11-24 10:11:14 -08:00