Loading crypto/bn/bn.h +11 −55 Original line number Diff line number Diff line Loading @@ -139,6 +139,8 @@ extern "C" { #define BN_DEC_FMT1 "%lu" #define BN_DEC_FMT2 "%019lu" #define BN_DEC_NUM 19 #define BN_HEX_FMT1 "%lX" #define BN_HEX_FMT2 "%08lX" #endif /* This is where the long long data type is 64 bits, but long is 32. Loading @@ -164,14 +166,18 @@ extern "C" { #define BN_DEC_FMT1 "%llu" #define BN_DEC_FMT2 "%019llu" #define BN_DEC_NUM 19 #define BN_HEX_FMT1 "%llX" #define BN_HEX_FMT2 "%08llX" #endif #ifdef THIRTY_TWO_BIT #ifdef BN_LLONG # if defined(OPENSSL_SYS_WIN32) && !defined(__GNUC__) # if defined(_WIN32) && !defined(__GNUC__) # define BN_ULLONG unsigned __int64 # define BN_MASK (0xffffffffffffffffI64) # else # define BN_ULLONG unsigned long long # define BN_MASK (0xffffffffffffffffLL) # endif #endif #define BN_ULONG unsigned int Loading @@ -180,67 +186,17 @@ extern "C" { #define BN_BYTES 4 #define BN_BITS2 32 #define BN_BITS4 16 #ifdef OPENSSL_SYS_WIN32 /* VC++ doesn't like the LL suffix */ #define BN_MASK (0xffffffffffffffffL) #else #define BN_MASK (0xffffffffffffffffLL) #endif #define BN_MASK2 (0xffffffffL) #define BN_MASK2l (0xffff) #define BN_MASK2h1 (0xffff8000L) #define BN_MASK2h (0xffff0000L) #define BN_TBIT (0x80000000L) #define BN_DEC_CONV (1000000000L) #define BN_DEC_FMT1 "%lu" #define BN_DEC_FMT2 "%09lu" #define BN_DEC_NUM 9 #endif #ifdef SIXTEEN_BIT #ifndef BN_DIV2W #define BN_DIV2W #endif #define BN_ULLONG unsigned long #define BN_ULONG unsigned short #define BN_LONG short #define BN_BITS 32 #define BN_BYTES 2 #define BN_BITS2 16 #define BN_BITS4 8 #define BN_MASK (0xffffffff) #define BN_MASK2 (0xffff) #define BN_MASK2l (0xff) #define BN_MASK2h1 (0xff80) #define BN_MASK2h (0xff00) #define BN_TBIT (0x8000) #define BN_DEC_CONV (100000) #define BN_DEC_FMT1 "%u" #define BN_DEC_FMT2 "%05u" #define BN_DEC_NUM 5 #endif #ifdef EIGHT_BIT #ifndef BN_DIV2W #define BN_DIV2W #endif #define BN_ULLONG unsigned short #define BN_ULONG unsigned char #define BN_LONG char #define BN_BITS 16 #define BN_BYTES 1 #define BN_BITS2 8 #define BN_BITS4 4 #define BN_MASK (0xffff) #define BN_MASK2 (0xff) #define BN_MASK2l (0xf) #define BN_MASK2h1 (0xf8) #define BN_MASK2h (0xf0) #define BN_TBIT (0x80) #define BN_DEC_CONV (100) #define BN_DEC_FMT1 "%u" #define BN_DEC_FMT2 "%02u" #define BN_DEC_NUM 2 #define BN_DEC_FMT2 "%09u" #define BN_DEC_NUM 9 #define BN_HEX_FMT1 "%X" #define BN_HEX_FMT2 "%04X" #endif #define BN_DEFAULT_BITS 1280 Loading crypto/bn/bn_gf2m.c +0 −62 Original line number Diff line number Diff line Loading @@ -121,74 +121,12 @@ static const BN_ULONG SQR_tb[16] = SQR_tb[(w) >> 12 & 0xF] << 24 | SQR_tb[(w) >> 8 & 0xF] << 16 | \ SQR_tb[(w) >> 4 & 0xF] << 8 | SQR_tb[(w) & 0xF] #endif #ifdef SIXTEEN_BIT #define SQR1(w) \ SQR_tb[(w) >> 12 & 0xF] << 8 | SQR_tb[(w) >> 8 & 0xF] #define SQR0(w) \ SQR_tb[(w) >> 4 & 0xF] << 8 | SQR_tb[(w) & 0xF] #endif #ifdef EIGHT_BIT #define SQR1(w) \ SQR_tb[(w) >> 4 & 0xF] #define SQR0(w) \ SQR_tb[(w) & 15] #endif /* Product of two polynomials a, b each with degree < BN_BITS2 - 1, * result is a polynomial r with degree < 2 * BN_BITS - 1 * The caller MUST ensure that the variables have the right amount * of space allocated. */ #ifdef EIGHT_BIT static void bn_GF2m_mul_1x1(BN_ULONG *r1, BN_ULONG *r0, const BN_ULONG a, const BN_ULONG b) { register BN_ULONG h, l, s; BN_ULONG tab[4], top1b = a >> 7; register BN_ULONG a1, a2; a1 = a & (0x7F); a2 = a1 << 1; tab[0] = 0; tab[1] = a1; tab[2] = a2; tab[3] = a1^a2; s = tab[b & 0x3]; l = s; s = tab[b >> 2 & 0x3]; l ^= s << 2; h = s >> 6; s = tab[b >> 4 & 0x3]; l ^= s << 4; h ^= s >> 4; s = tab[b >> 6 ]; l ^= s << 6; h ^= s >> 2; /* compensate for the top bit of a */ if (top1b & 01) { l ^= b << 7; h ^= b >> 1; } *r1 = h; *r0 = l; } #endif #ifdef SIXTEEN_BIT static void bn_GF2m_mul_1x1(BN_ULONG *r1, BN_ULONG *r0, const BN_ULONG a, const BN_ULONG b) { register BN_ULONG h, l, s; BN_ULONG tab[4], top1b = a >> 15; register BN_ULONG a1, a2; a1 = a & (0x7FFF); a2 = a1 << 1; tab[0] = 0; tab[1] = a1; tab[2] = a2; tab[3] = a1^a2; s = tab[b & 0x3]; l = s; s = tab[b >> 2 & 0x3]; l ^= s << 2; h = s >> 14; s = tab[b >> 4 & 0x3]; l ^= s << 4; h ^= s >> 12; s = tab[b >> 6 & 0x3]; l ^= s << 6; h ^= s >> 10; s = tab[b >> 8 & 0x3]; l ^= s << 8; h ^= s >> 8; s = tab[b >>10 & 0x3]; l ^= s << 10; h ^= s >> 6; s = tab[b >>12 & 0x3]; l ^= s << 12; h ^= s >> 4; s = tab[b >>14 ]; l ^= s << 14; h ^= s >> 2; /* compensate for the top bit of a */ if (top1b & 01) { l ^= b << 15; h ^= b >> 1; } *r1 = h; *r0 = l; } #endif #ifdef THIRTY_TWO_BIT static void bn_GF2m_mul_1x1(BN_ULONG *r1, BN_ULONG *r0, const BN_ULONG a, const BN_ULONG b) { Loading crypto/bn/bn_lib.c +1 −1 Original line number Diff line number Diff line Loading @@ -235,7 +235,7 @@ int BN_num_bits_word(BN_ULONG l) else #endif { #if defined(SIXTEEN_BIT) || defined(THIRTY_TWO_BIT) || defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG) #if defined(THIRTY_TWO_BIT) || defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG) if (l & 0xff00L) return(bits[(int)(l>>8)]+8); else Loading crypto/bn/bntest.c +1 −1 Original line number Diff line number Diff line Loading @@ -486,7 +486,7 @@ static void print_word(BIO *bp,BN_ULONG w) return; } #endif BIO_printf(bp,"%lX",w); BIO_printf(bp,BN_HEX_FMT1,w); } int test_div_word(BIO *bp) Loading crypto/opensslconf.h.in +0 −5 Original line number Diff line number Diff line Loading @@ -63,14 +63,9 @@ /* Should we define BN_DIV2W here? */ /* Only one for the following should be defined */ /* The prime number generation stuff may not work when * EIGHT_BIT but I don't care since I've only used this mode * for debuging the bignum libraries */ #undef SIXTY_FOUR_BIT_LONG #undef SIXTY_FOUR_BIT #define THIRTY_TWO_BIT #undef SIXTEEN_BIT #undef EIGHT_BIT #endif #if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) Loading Loading
crypto/bn/bn.h +11 −55 Original line number Diff line number Diff line Loading @@ -139,6 +139,8 @@ extern "C" { #define BN_DEC_FMT1 "%lu" #define BN_DEC_FMT2 "%019lu" #define BN_DEC_NUM 19 #define BN_HEX_FMT1 "%lX" #define BN_HEX_FMT2 "%08lX" #endif /* This is where the long long data type is 64 bits, but long is 32. Loading @@ -164,14 +166,18 @@ extern "C" { #define BN_DEC_FMT1 "%llu" #define BN_DEC_FMT2 "%019llu" #define BN_DEC_NUM 19 #define BN_HEX_FMT1 "%llX" #define BN_HEX_FMT2 "%08llX" #endif #ifdef THIRTY_TWO_BIT #ifdef BN_LLONG # if defined(OPENSSL_SYS_WIN32) && !defined(__GNUC__) # if defined(_WIN32) && !defined(__GNUC__) # define BN_ULLONG unsigned __int64 # define BN_MASK (0xffffffffffffffffI64) # else # define BN_ULLONG unsigned long long # define BN_MASK (0xffffffffffffffffLL) # endif #endif #define BN_ULONG unsigned int Loading @@ -180,67 +186,17 @@ extern "C" { #define BN_BYTES 4 #define BN_BITS2 32 #define BN_BITS4 16 #ifdef OPENSSL_SYS_WIN32 /* VC++ doesn't like the LL suffix */ #define BN_MASK (0xffffffffffffffffL) #else #define BN_MASK (0xffffffffffffffffLL) #endif #define BN_MASK2 (0xffffffffL) #define BN_MASK2l (0xffff) #define BN_MASK2h1 (0xffff8000L) #define BN_MASK2h (0xffff0000L) #define BN_TBIT (0x80000000L) #define BN_DEC_CONV (1000000000L) #define BN_DEC_FMT1 "%lu" #define BN_DEC_FMT2 "%09lu" #define BN_DEC_NUM 9 #endif #ifdef SIXTEEN_BIT #ifndef BN_DIV2W #define BN_DIV2W #endif #define BN_ULLONG unsigned long #define BN_ULONG unsigned short #define BN_LONG short #define BN_BITS 32 #define BN_BYTES 2 #define BN_BITS2 16 #define BN_BITS4 8 #define BN_MASK (0xffffffff) #define BN_MASK2 (0xffff) #define BN_MASK2l (0xff) #define BN_MASK2h1 (0xff80) #define BN_MASK2h (0xff00) #define BN_TBIT (0x8000) #define BN_DEC_CONV (100000) #define BN_DEC_FMT1 "%u" #define BN_DEC_FMT2 "%05u" #define BN_DEC_NUM 5 #endif #ifdef EIGHT_BIT #ifndef BN_DIV2W #define BN_DIV2W #endif #define BN_ULLONG unsigned short #define BN_ULONG unsigned char #define BN_LONG char #define BN_BITS 16 #define BN_BYTES 1 #define BN_BITS2 8 #define BN_BITS4 4 #define BN_MASK (0xffff) #define BN_MASK2 (0xff) #define BN_MASK2l (0xf) #define BN_MASK2h1 (0xf8) #define BN_MASK2h (0xf0) #define BN_TBIT (0x80) #define BN_DEC_CONV (100) #define BN_DEC_FMT1 "%u" #define BN_DEC_FMT2 "%02u" #define BN_DEC_NUM 2 #define BN_DEC_FMT2 "%09u" #define BN_DEC_NUM 9 #define BN_HEX_FMT1 "%X" #define BN_HEX_FMT2 "%04X" #endif #define BN_DEFAULT_BITS 1280 Loading
crypto/bn/bn_gf2m.c +0 −62 Original line number Diff line number Diff line Loading @@ -121,74 +121,12 @@ static const BN_ULONG SQR_tb[16] = SQR_tb[(w) >> 12 & 0xF] << 24 | SQR_tb[(w) >> 8 & 0xF] << 16 | \ SQR_tb[(w) >> 4 & 0xF] << 8 | SQR_tb[(w) & 0xF] #endif #ifdef SIXTEEN_BIT #define SQR1(w) \ SQR_tb[(w) >> 12 & 0xF] << 8 | SQR_tb[(w) >> 8 & 0xF] #define SQR0(w) \ SQR_tb[(w) >> 4 & 0xF] << 8 | SQR_tb[(w) & 0xF] #endif #ifdef EIGHT_BIT #define SQR1(w) \ SQR_tb[(w) >> 4 & 0xF] #define SQR0(w) \ SQR_tb[(w) & 15] #endif /* Product of two polynomials a, b each with degree < BN_BITS2 - 1, * result is a polynomial r with degree < 2 * BN_BITS - 1 * The caller MUST ensure that the variables have the right amount * of space allocated. */ #ifdef EIGHT_BIT static void bn_GF2m_mul_1x1(BN_ULONG *r1, BN_ULONG *r0, const BN_ULONG a, const BN_ULONG b) { register BN_ULONG h, l, s; BN_ULONG tab[4], top1b = a >> 7; register BN_ULONG a1, a2; a1 = a & (0x7F); a2 = a1 << 1; tab[0] = 0; tab[1] = a1; tab[2] = a2; tab[3] = a1^a2; s = tab[b & 0x3]; l = s; s = tab[b >> 2 & 0x3]; l ^= s << 2; h = s >> 6; s = tab[b >> 4 & 0x3]; l ^= s << 4; h ^= s >> 4; s = tab[b >> 6 ]; l ^= s << 6; h ^= s >> 2; /* compensate for the top bit of a */ if (top1b & 01) { l ^= b << 7; h ^= b >> 1; } *r1 = h; *r0 = l; } #endif #ifdef SIXTEEN_BIT static void bn_GF2m_mul_1x1(BN_ULONG *r1, BN_ULONG *r0, const BN_ULONG a, const BN_ULONG b) { register BN_ULONG h, l, s; BN_ULONG tab[4], top1b = a >> 15; register BN_ULONG a1, a2; a1 = a & (0x7FFF); a2 = a1 << 1; tab[0] = 0; tab[1] = a1; tab[2] = a2; tab[3] = a1^a2; s = tab[b & 0x3]; l = s; s = tab[b >> 2 & 0x3]; l ^= s << 2; h = s >> 14; s = tab[b >> 4 & 0x3]; l ^= s << 4; h ^= s >> 12; s = tab[b >> 6 & 0x3]; l ^= s << 6; h ^= s >> 10; s = tab[b >> 8 & 0x3]; l ^= s << 8; h ^= s >> 8; s = tab[b >>10 & 0x3]; l ^= s << 10; h ^= s >> 6; s = tab[b >>12 & 0x3]; l ^= s << 12; h ^= s >> 4; s = tab[b >>14 ]; l ^= s << 14; h ^= s >> 2; /* compensate for the top bit of a */ if (top1b & 01) { l ^= b << 15; h ^= b >> 1; } *r1 = h; *r0 = l; } #endif #ifdef THIRTY_TWO_BIT static void bn_GF2m_mul_1x1(BN_ULONG *r1, BN_ULONG *r0, const BN_ULONG a, const BN_ULONG b) { Loading
crypto/bn/bn_lib.c +1 −1 Original line number Diff line number Diff line Loading @@ -235,7 +235,7 @@ int BN_num_bits_word(BN_ULONG l) else #endif { #if defined(SIXTEEN_BIT) || defined(THIRTY_TWO_BIT) || defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG) #if defined(THIRTY_TWO_BIT) || defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG) if (l & 0xff00L) return(bits[(int)(l>>8)]+8); else Loading
crypto/bn/bntest.c +1 −1 Original line number Diff line number Diff line Loading @@ -486,7 +486,7 @@ static void print_word(BIO *bp,BN_ULONG w) return; } #endif BIO_printf(bp,"%lX",w); BIO_printf(bp,BN_HEX_FMT1,w); } int test_div_word(BIO *bp) Loading
crypto/opensslconf.h.in +0 −5 Original line number Diff line number Diff line Loading @@ -63,14 +63,9 @@ /* Should we define BN_DIV2W here? */ /* Only one for the following should be defined */ /* The prime number generation stuff may not work when * EIGHT_BIT but I don't care since I've only used this mode * for debuging the bignum libraries */ #undef SIXTY_FOUR_BIT_LONG #undef SIXTY_FOUR_BIT #define THIRTY_TWO_BIT #undef SIXTEEN_BIT #undef EIGHT_BIT #endif #if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) Loading