summaryrefslogtreecommitdiff
path: root/lib/libcrypto/rc2/rc2_skey.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libcrypto/rc2/rc2_skey.c')
-rw-r--r--lib/libcrypto/rc2/rc2_skey.c21
1 files changed, 7 insertions, 14 deletions
diff --git a/lib/libcrypto/rc2/rc2_skey.c b/lib/libcrypto/rc2/rc2_skey.c
index 96528651887..49536420566 100644
--- a/lib/libcrypto/rc2/rc2_skey.c
+++ b/lib/libcrypto/rc2/rc2_skey.c
@@ -57,8 +57,6 @@
*/
#include <openssl/rc2.h>
-#include <openssl/crypto.h>
-#include <openssl/fips.h>
#include "rc2_locl.h"
static unsigned char key_table[256]={
@@ -86,25 +84,17 @@ static unsigned char key_table[256]={
0xfe,0x7f,0xc1,0xad,
};
+#if defined(_MSC_VER) && defined(_ARM_)
+#pragma optimize("g",off)
+#endif
+
/* It has come to my attention that there are 2 versions of the RC2
* key schedule. One which is normal, and anther which has a hook to
* use a reduced key length.
* BSAFE uses the 'retarded' version. What I previously shipped is
* the same as specifying 1024 for the 'bits' parameter. Bsafe uses
* a version where the bits parameter is the same as len*8 */
-
-#ifdef OPENSSL_FIPS
-void RC2_set_key(RC2_KEY *key, int len, const unsigned char *data, int bits)
- {
- if (FIPS_mode())
- FIPS_BAD_ABORT(RC2)
- private_RC2_set_key(key, len, data, bits);
- }
-void private_RC2_set_key(RC2_KEY *key, int len, const unsigned char *data,
- int bits)
-#else
void RC2_set_key(RC2_KEY *key, int len, const unsigned char *data, int bits)
-#endif
{
int i,j;
unsigned char *k;
@@ -150,3 +140,6 @@ void RC2_set_key(RC2_KEY *key, int len, const unsigned char *data, int bits)
*(ki--)=((k[i]<<8)|k[i-1])&0xffff;
}
+#if defined(_MSC_VER)
+#pragma optimize("",on)
+#endif