summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2012-05-22 23:57:22 +0000
committerDr. Stephen Henson <steve@openssl.org>2012-05-22 23:57:22 +0000
commitb440c25d36bd04944ca6be4ab9b53314bb5f3aa7 (patch)
tree203b160ee70e61e5af4ce05457e665b7d0530588 /crypto
parent76f4af202ef76c9a2bff141f6635da875c571436 (diff)
Changes needed to support WinCE compilation:
Don't try to raise SIGABRT if not defined. Return from fips_dhvs.c main instead of calling exit. Workaround for lack of GetSystemFileAsFileTime. Disable optimisation for part of bn_nist.c to avoid compiler bug. Remove /WX flag so we don't exist on warnings.
Diffstat (limited to 'crypto')
-rw-r--r--crypto/bn/bn_nist.c8
-rw-r--r--crypto/cryptlib.c2
2 files changed, 10 insertions, 0 deletions
diff --git a/crypto/bn/bn_nist.c b/crypto/bn/bn_nist.c
index 86bb0429f3..99cfc3f355 100644
--- a/crypto/bn/bn_nist.c
+++ b/crypto/bn/bn_nist.c
@@ -1047,6 +1047,10 @@ int BN_nist_mod_384(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
return 1;
}
+#ifdef _W32_WCE
+#pragma optimize( "", off )
+#endif
+
#define BN_NIST_521_RSHIFT (521%BN_BITS2)
#define BN_NIST_521_LSHIFT (BN_BITS2-BN_NIST_521_RSHIFT)
#define BN_NIST_521_TOP_MASK ((BN_ULONG)BN_MASK2>>BN_NIST_521_LSHIFT)
@@ -1113,6 +1117,10 @@ int BN_nist_mod_521(BIGNUM *r, const BIGNUM *a, const BIGNUM *field,
return 1;
}
+#ifdef _W32_WCE
+#pragma optimize( "", on )
+#endif
+
int (*BN_nist_mod_func(const BIGNUM *p))(BIGNUM *r, const BIGNUM *a, const BIGNUM *field, BN_CTX *ctx)
{
if (BN_ucmp(&_bignum_nist_p_192, p) == 0)
diff --git a/crypto/cryptlib.c b/crypto/cryptlib.c
index 87768d94e7..118fca1ee9 100644
--- a/crypto/cryptlib.c
+++ b/crypto/cryptlib.c
@@ -382,7 +382,9 @@ void OpenSSLDie(const char *file,int line,const char *assertion)
abort();
#else
/* Win32 abort() customarily shows a dialog, but we just did that... */
+#ifdef SIGABRT
raise(SIGABRT);
+#endif
_exit(3);
#endif
}