Commit b1d9279a authored by Mark J. Cox's avatar Mark J. Cox
Browse files

Add initial support for Baltimore SureWare accelerator cards; this works

for acceleration only at the moment, but full key management is being
worked on for the future.  This code has been compiled cross-platform but
not extensively tested
Submitted by: Mark Cox, Baltimore Technologies
Reviewed by: Mark Cox
PR:
parent c7d827fc
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -4,6 +4,10 @@

 Changes between 0.9.6b and 0.9.6c  [XX xxx XXXX]

  *) Add support for SureWare crypto accelerator cards from 
     Baltimore Technologies.  (Use engine 'sureware')
     [Baltimore Technologies and Mark Cox]

  *) Add support for crypto accelerator cards from Accelerated
     Encryption Processing, www.aep.ie.  (Use engine 'aep')
     [AEP Inc. and Mark Cox]
+24 −2
Original line number Diff line number Diff line
@@ -23,9 +23,9 @@ APPS=

LIB=$(TOP)/libcrypto.a
LIBSRC= engine_err.c engine_lib.c engine_list.c engine_openssl.c \
	hw_atalla.c hw_cswift.c hw_ncipher.c hw_aep.c
	hw_atalla.c hw_cswift.c hw_ncipher.c hw_aep.c hw_sureware.c
LIBOBJ= engine_err.o engine_lib.o engine_list.o engine_openssl.o \
	hw_atalla.o hw_cswift.o hw_ncipher.o hw_aep.o
	hw_atalla.o hw_cswift.o hw_ncipher.o hw_aep.o hw_sureware.o

SRC= $(LIBSRC)

@@ -237,3 +237,25 @@ hw_ncipher.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
hw_ncipher.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
hw_ncipher.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
hw_ncipher.o: ../cryptlib.h engine_int.h vendor_defns/hwcryptohook.h
hw_sureware.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
hw_sureware.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
hw_sureware.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
hw_sureware.o: ../../include/openssl/crypto.h ../../include/openssl/des.h
hw_sureware.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
hw_sureware.o: ../../include/openssl/dso.h ../../include/openssl/e_os.h
hw_sureware.o: ../../include/openssl/e_os2.h ../../include/openssl/engine.h
hw_sureware.o: ../../include/openssl/err.h ../../include/openssl/evp.h
hw_sureware.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
hw_sureware.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
hw_sureware.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
hw_sureware.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
hw_sureware.o: ../../include/openssl/opensslconf.h
hw_sureware.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
hw_sureware.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
hw_sureware.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
hw_sureware.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
hw_sureware.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
hw_sureware.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
hw_sureware.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
hw_sureware.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
hw_sureware.o: ../cryptlib.h engine.h engine_int.h vendor_defns/sureware.h
+13 −0
Original line number Diff line number Diff line
@@ -364,6 +364,19 @@ void ERR_load_ENGINE_strings(void);
#define ENGINE_F_HWCRHK_RAND_BYTES			 139
#define ENGINE_F_HWCRHK_RSA_MOD_EXP			 140
#define ENGINE_F_LOG_MESSAGE				 141
#define ENGINE_F_SUREWAREHK_INIT			 200
#define ENGINE_F_SUREWAREHK_FINISH			 201
#define ENGINE_F_SUREWAREHK_RAND_BYTES			 202
#define ENGINE_F_SUREWAREHK_RAND_SEED			 203
#define ENGINE_F_SUREWAREHK_LOAD_PRIVATE_KEY		 204
#define ENGINE_F_SUREWAREHK_LOAD_PUBLIC_KEY		 205
#define ENGINE_F_SUREWAREHK_EX_FREE			 206
#define ENGINE_F_SUREWAREHK_RSA_PRIV_DEC		 207
#define ENGINE_F_SUREWAREHK_RSA_PRIV_ENC		 208
#define ENGINE_F_SUREWAREHK_CTRL			 209
#define ENGINE_F_SUREWAREHK_DH_GEN_KEY			 210
#define ENGINE_F_SUREWAREHK_DSA_DO_SIGN			 211
#define ENGINE_F_SUREWAREHK_MOD_EXP			 212

/* Reason codes. */

+5 −0
Original line number Diff line number Diff line
@@ -156,6 +156,11 @@ ENGINE *ENGINE_atalla();
ENGINE *ENGINE_aep();
#endif /* !NO_HW_AEP */

#ifndef NO_HW_SUREWARE
/* Returns a structure of atalla methods. */
ENGINE *ENGINE_sureware();
#endif /* !NO_HW_SUREWARE */

#endif /* !NO_HW */

#ifdef  __cplusplus
+4 −0
Original line number Diff line number Diff line
@@ -202,6 +202,10 @@ static int engine_internal_check(void)
	if(!engine_list_add(ENGINE_aep()))
		return 0;
#endif /* !NO_HW_AEP */
#ifndef NO_HW_SUREWARE
       if(!engine_list_add(ENGINE_sureware()))
                return 0;
#endif /* !NO_HW_SUREWARE */
#endif /* !NO_HW */
	engine_list_flag = 1;
	return 1;
Loading