Move all FIPSAPI renames into fips.h header file, include early in
crypto.h if needed.
Modify source tree to handle change.
diff --git a/fips/des/fips_desmovs.c b/fips/des/fips_desmovs.c
index 6766d1c..2debcee 100644
--- a/fips/des/fips_desmovs.c
+++ b/fips/des/fips_desmovs.c
@@ -83,8 +83,8 @@
#else
-#include <openssl/fips.h>
#include "fips_utl.h"
+#include <openssl/fips.h>
#define DES_BLOCK_SIZE 8
diff --git a/fips/dsa/fips_dssvs.c b/fips/dsa/fips_dssvs.c
index 513df72..4610557 100644
--- a/fips/dsa/fips_dssvs.c
+++ b/fips/dsa/fips_dssvs.c
@@ -1,3 +1,5 @@
+
+#define OPENSSL_FIPSAPI
#include <openssl/opensslconf.h>
#ifndef OPENSSL_FIPS
@@ -10,8 +12,6 @@
}
#else
-#define OPENSSL_FIPSAPI
-
#include <openssl/bn.h>
#include <openssl/dsa.h>
#include <openssl/fips.h>
diff --git a/fips/fips.h b/fips/fips.h
index 5452db9..a49611d 100644
--- a/fips/fips.h
+++ b/fips/fips.h
@@ -60,6 +60,7 @@
#endif
struct dsa_st;
+struct rsa_st;
struct evp_pkey_st;
struct env_md_st;
struct evp_cipher_st;
@@ -108,18 +109,41 @@
void fips_set_selftest_fail(void);
int fips_check_rsa(struct rsa_st *rsa);
-void FIPS_lock(int mode, int type,const char *file,int line);
-
-void FIPS_set_locking_callback (void (*func)(int mode, int type,
+void FIPS_set_locking_callback(void (*func)(int mode, int type,
const char *file,int line));
-void *FIPS_malloc(int num, const char *file, int line);
-void FIPS_free(void *);
+/* Where necessary redirect standard OpenSSL APIs to FIPS versions */
#if defined(OPENSSL_FIPSCANISTER) && defined(OPENSSL_FIPSAPI)
+
#define CRYPTO_lock FIPS_lock
#define CRYPTO_malloc FIPS_malloc
#define CRYPTO_free FIPS_free
+
+#define EVP_MD_CTX_init FIPS_md_ctx_init
+#define EVP_MD_CTX_cleanup FIPS_md_ctx_cleanup
+#define EVP_MD_CTX_create FIPS_md_ctx_create
+#define EVP_MD_CTX_destroy FIPS_md_ctx_destroy
+#define EVP_DigestInit_ex(ctx, type, impl) FIPS_digestinit(ctx, type)
+#define EVP_DigestInit FIPS_digestinit
+#define EVP_DigestUpdate FIPS_digestupdate
+#define EVP_Digest(data, count, md, size, type, impl) \
+ FIPS_digest(data, count, md, size, type)
+#define EVP_DigestFinal_ex FIPS_digestfinal
+#define EVP_MD_CTX_copy_ex FIPS_md_ctx_copy
+
+#define EVP_CipherInit_ex(ctx, cipher, impl, key, iv, enc) \
+ FIPS_cipherinit(ctx, cipher, key, iv, enc)
+
+#define EVP_CipherInit FIPS_cipherinit
+
+#define EVP_CIPHER_CTX_init FIPS_cipher_ctx_init
+#define EVP_CIPHER_CTX_cleanup FIPS_cipher_ctx_cleanup
+#define EVP_Cipher FIPS_cipher
+#define EVP_CIPHER_CTX_ctrl FIPS_cipher_ctx_ctrl
+#define EVP_CIPHER_CTX_new FIPS_cipher_ctx_new
+#define EVP_CIPHER_CTX_free FIPS_cipher_ctx_free
+
#endif
/* BEGIN ERROR CODES */
diff --git a/fips/fips_utl.h b/fips/fips_utl.h
index 76ae4f8..eccc8dd 100644
--- a/fips/fips_utl.h
+++ b/fips/fips_utl.h
@@ -48,7 +48,6 @@
*/
#define OPENSSL_FIPSAPI
-#include <openssl/fips.h>
int hex2bin(const char *in, unsigned char *out);
unsigned char *hex2bin_m(const char *in, long *plen);
diff --git a/fips/hmac/fips_hmactest.c b/fips/hmac/fips_hmactest.c
index 8c51fe5..af6ce29 100644
--- a/fips/hmac/fips_hmactest.c
+++ b/fips/hmac/fips_hmactest.c
@@ -56,6 +56,8 @@
*
*/
+#define OPENSSL_FIPSAPI
+
#include <stdio.h>
#include <ctype.h>
#include <string.h>
@@ -77,6 +79,7 @@
#else
+#include <openssl/fips.h>
#include "fips_utl.h"
static int hmac_test(const EVP_MD *md, FILE *out, FILE *in);
diff --git a/fips/rand/fips_randtest.c b/fips/rand/fips_randtest.c
index 31c51d3..b211a03 100644
--- a/fips/rand/fips_randtest.c
+++ b/fips/rand/fips_randtest.c
@@ -103,6 +103,8 @@
*
*/
+#define OPENSSL_FIPSAPI
+
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -125,8 +127,8 @@
#define OPENSSL_FIPSAPI
-#include <openssl/fips.h>
#include "fips_utl.h"
+#include <openssl/fips.h>
typedef struct
{
diff --git a/fips/rand/fips_rngvs.c b/fips/rand/fips_rngvs.c
index 2d198c7..972acce 100644
--- a/fips/rand/fips_rngvs.c
+++ b/fips/rand/fips_rngvs.c
@@ -7,6 +7,9 @@
* Validation System (RNGVS)", May 25, 2004.
*
*/
+
+#define OPENSSL_FIPSAPI
+
#include <openssl/opensslconf.h>
#ifndef OPENSSL_FIPS
diff --git a/fips/utl/fips_mem.c b/fips/utl/fips_mem.c
index d8f197b..3d5c907 100644
--- a/fips/utl/fips_mem.c
+++ b/fips/utl/fips_mem.c
@@ -51,6 +51,8 @@
* ====================================================================
*/
+#define OPENSSL_FIPSAPI
+
#include <openssl/err.h>
#include <openssl/fips.h>