From 10db9f9f482d08e6890cec0f4ebec4bcba4c6377 Mon Sep 17 00:00:00 2001 From: Andy Polyakov Date: Tue, 18 Oct 2011 18:56:09 +0000 Subject: [PATCH] fips/*: extend fipsro segmenting to all _MSC_VER builds (including WinCE). --- fips/fips_canister.c | 4 ++-- fips/fips_premain.c | 4 ++++ fips/fipssyms.h | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/fips/fips_canister.c b/fips/fips_canister.c index f00fc7b365..8a3524952e 100644 --- a/fips/fips_canister.c +++ b/fips/fips_canister.c @@ -57,7 +57,7 @@ static void *instruction_pointer_xlc(void); * reference points accordingly. In case you wonder, the values are * big-endian encoded variable names, just to prevent these arrays * from being merged by linker. */ -# if defined(_MSC_VER) && defined(_WIN64) +# if defined(_MSC_VER) # pragma section("fipsro$a",read) __declspec(allocate("fipsro$a")) # endif @@ -68,7 +68,7 @@ const unsigned int FIPS_rodata_start[]= # ifdef FIPS_REF_POINT_IS_CROSS_COMPILER_AWARE # define instruction_pointer FIPS_text_endX # endif -# if defined(_MSC_VER) && defined(_WIN64) +# if defined(_MSC_VER) # pragma section("fipsro$c",read) __declspec(allocate("fipsro$c")) # endif diff --git a/fips/fips_premain.c b/fips/fips_premain.c index c94568c8c7..526edbb9d2 100644 --- a/fips/fips_premain.c +++ b/fips/fips_premain.c @@ -68,6 +68,10 @@ #define HMAC_SHA1_SIG "?have to make sure this string is unique" #endif +#if defined(_MSC_VER) +# pragma section("fipsro",read) +# __declspec(allocate("fipsro")) +#endif static const unsigned char FINGERPRINT_ascii_value[41] = HMAC_SHA1_SIG; #define atox(c) ((c)>='a'?((c)-'a'+10):((c)>='A'?(c)-'A'+10:(c)-'0')) diff --git a/fips/fipssyms.h b/fips/fipssyms.h index 67753d8033..448d505548 100644 --- a/fips/fipssyms.h +++ b/fips/fipssyms.h @@ -667,7 +667,7 @@ #define bn_mul_mont_gather5 fips_bn_mul_mont_gather5 #define bn_scatter5 fips_bn_scatter5 -#if defined(_MSC_VER) && defined(_WIN64) +#if defined(_MSC_VER) # pragma section("fipsro$b",read) # define __fips_constseg __declspec(allocate("fipsro$b")) #else -- 2.25.1