diff options
author | Rich Salz <rsalz@akamai.com> | 2016-01-27 18:43:25 -0500 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2016-01-27 19:05:50 -0500 |
commit | 3e9e810f2e047effb1056211794d2d12ec2b04e7 (patch) | |
tree | 26c730915e8c56590fa8fc148da2651dab7f7c8c /crypto/bf/bf_enc.c | |
parent | 8ed40b83ec19aab146a3df701c83066c8788a7a8 (diff) |
Remove outdated legacy crypto options
Many options for supporting optimizations for legacy crypto on legacy
platforms have been removed. This simplifies the source code and
does not really penalize anyone.
DES_PTR (always on)
DES_RISC1, DES_RISC2 (always off)
DES_INT (always 'unsigned int')
DES_UNROLL (always on)
BF_PTR (always on) BF_PTR2 (removed)
MD2_CHAR, MD2_LONG (always 'unsigned char')
IDEA_SHORT, IDEA_LONG (always 'unsigned int')
RC2_SHORT, RC2_LONG (always 'unsigned int')
RC4_LONG (only int and char (for assembler) are supported)
RC4_CHUNK (always long), RC_CHUNK_LL (removed)
RC4_INDEX (always on)
And also make D_ENCRYPT macro more clear (@appro)
This is done in consultation with Andy.
Reviewed-by: Andy Polyakov <appro@openssl.org>
Diffstat (limited to 'crypto/bf/bf_enc.c')
-rw-r--r-- | crypto/bf/bf_enc.c | 80 |
1 files changed, 4 insertions, 76 deletions
diff --git a/crypto/bf/bf_enc.c b/crypto/bf/bf_enc.c index 76d427048a..04eb39134a 100644 --- a/crypto/bf/bf_enc.c +++ b/crypto/bf/bf_enc.c @@ -71,7 +71,6 @@ to modify the code. void BF_encrypt(BF_LONG *data, const BF_KEY *key) { -#ifndef BF_PTR2 register BF_LONG l, r; register const BF_LONG *p, *s; @@ -105,50 +104,14 @@ void BF_encrypt(BF_LONG *data, const BF_KEY *key) # endif r ^= p[BF_ROUNDS + 1]; - data[1] = l & 0xffffffffL; - data[0] = r & 0xffffffffL; -#else - register BF_LONG l, r, t, *k; - - l = data[0]; - r = data[1]; - k = (BF_LONG *)key; - - l ^= k[0]; - BF_ENC(r, l, k, 1); - BF_ENC(l, r, k, 2); - BF_ENC(r, l, k, 3); - BF_ENC(l, r, k, 4); - BF_ENC(r, l, k, 5); - BF_ENC(l, r, k, 6); - BF_ENC(r, l, k, 7); - BF_ENC(l, r, k, 8); - BF_ENC(r, l, k, 9); - BF_ENC(l, r, k, 10); - BF_ENC(r, l, k, 11); - BF_ENC(l, r, k, 12); - BF_ENC(r, l, k, 13); - BF_ENC(l, r, k, 14); - BF_ENC(r, l, k, 15); - BF_ENC(l, r, k, 16); -# if BF_ROUNDS == 20 - BF_ENC(r, l, k, 17); - BF_ENC(l, r, k, 18); - BF_ENC(r, l, k, 19); - BF_ENC(l, r, k, 20); -# endif - r ^= k[BF_ROUNDS + 1]; - - data[1] = l & 0xffffffffL; - data[0] = r & 0xffffffffL; -#endif + data[1] = l & 0xffffffffU; + data[0] = r & 0xffffffffU; } #ifndef BF_DEFAULT_OPTIONS void BF_decrypt(BF_LONG *data, const BF_KEY *key) { -# ifndef BF_PTR2 register BF_LONG l, r; register const BF_LONG *p, *s; @@ -182,43 +145,8 @@ void BF_decrypt(BF_LONG *data, const BF_KEY *key) BF_ENC(l, r, s, p[1]); r ^= p[0]; - data[1] = l & 0xffffffffL; - data[0] = r & 0xffffffffL; -# else - register BF_LONG l, r, t, *k; - - l = data[0]; - r = data[1]; - k = (BF_LONG *)key; - - l ^= k[BF_ROUNDS + 1]; -# if BF_ROUNDS == 20 - BF_ENC(r, l, k, 20); - BF_ENC(l, r, k, 19); - BF_ENC(r, l, k, 18); - BF_ENC(l, r, k, 17); -# endif - BF_ENC(r, l, k, 16); - BF_ENC(l, r, k, 15); - BF_ENC(r, l, k, 14); - BF_ENC(l, r, k, 13); - BF_ENC(r, l, k, 12); - BF_ENC(l, r, k, 11); - BF_ENC(r, l, k, 10); - BF_ENC(l, r, k, 9); - BF_ENC(r, l, k, 8); - BF_ENC(l, r, k, 7); - BF_ENC(r, l, k, 6); - BF_ENC(l, r, k, 5); - BF_ENC(r, l, k, 4); - BF_ENC(l, r, k, 3); - BF_ENC(r, l, k, 2); - BF_ENC(l, r, k, 1); - r ^= k[0]; - - data[1] = l & 0xffffffffL; - data[0] = r & 0xffffffffL; -# endif + data[1] = l & 0xffffffffU; + data[0] = r & 0xffffffffU; } void BF_cbc_encrypt(const unsigned char *in, unsigned char *out, long length, |