Deleted Added
full compact
bn_mul.c (312826) bn_mul.c (325337)
1/* crypto/bn/bn_mul.c */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved.
4 *
5 * This package is an SSL implementation written
6 * by Eric Young (eay@cryptsoft.com).
7 * The implementation was written so as to conform with Netscapes SSL.
8 *

--- 1018 unchanged lines hidden (view full) ---

1027 goto err;
1028 if (bn_wexpand(rr, k * 2) == NULL)
1029 goto err;
1030 bn_mul_recursive(rr->d, a->d, b->d, j, al - j, bl - j, t->d);
1031 }
1032 rr->top = top;
1033 goto end;
1034 }
1/* crypto/bn/bn_mul.c */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved.
4 *
5 * This package is an SSL implementation written
6 * by Eric Young (eay@cryptsoft.com).
7 * The implementation was written so as to conform with Netscapes SSL.
8 *

--- 1018 unchanged lines hidden (view full) ---

1027 goto err;
1028 if (bn_wexpand(rr, k * 2) == NULL)
1029 goto err;
1030 bn_mul_recursive(rr->d, a->d, b->d, j, al - j, bl - j, t->d);
1031 }
1032 rr->top = top;
1033 goto end;
1034 }
1035# if 0
1036 if (i == 1 && !BN_get_flags(b, BN_FLG_STATIC_DATA)) {
1037 BIGNUM *tmp_bn = (BIGNUM *)b;
1038 if (bn_wexpand(tmp_bn, al) == NULL)
1039 goto err;
1040 tmp_bn->d[bl] = 0;
1041 bl++;
1042 i--;
1043 } else if (i == -1 && !BN_get_flags(a, BN_FLG_STATIC_DATA)) {
1044 BIGNUM *tmp_bn = (BIGNUM *)a;
1045 if (bn_wexpand(tmp_bn, bl) == NULL)
1046 goto err;
1047 tmp_bn->d[al] = 0;
1048 al++;
1049 i++;
1050 }
1051 if (i == 0) {
1052 /* symmetric and > 4 */
1053 /* 16 or larger */
1054 j = BN_num_bits_word((BN_ULONG)al);
1055 j = 1 << (j - 1);
1056 k = j + j;
1057 t = BN_CTX_get(ctx);
1058 if (al == j) { /* exact multiple */
1059 if (bn_wexpand(t, k * 2) == NULL)
1060 goto err;
1061 if (bn_wexpand(rr, k * 2) == NULL)
1062 goto err;
1063 bn_mul_recursive(rr->d, a->d, b->d, al, t->d);
1064 } else {
1065 if (bn_wexpand(t, k * 4) == NULL)
1066 goto err;
1067 if (bn_wexpand(rr, k * 4) == NULL)
1068 goto err;
1069 bn_mul_part_recursive(rr->d, a->d, b->d, al - j, j, t->d);
1070 }
1071 rr->top = top;
1072 goto end;
1073 }
1074# endif
1075 }
1076#endif /* BN_RECURSION */
1077 if (bn_wexpand(rr, top) == NULL)
1078 goto err;
1079 rr->top = top;
1080 bn_mul_normal(rr->d, a->d, al, b->d, bl);
1081
1082#if defined(BN_MUL_COMBA) || defined(BN_RECURSION)

--- 83 unchanged lines hidden ---
1035 }
1036#endif /* BN_RECURSION */
1037 if (bn_wexpand(rr, top) == NULL)
1038 goto err;
1039 rr->top = top;
1040 bn_mul_normal(rr->d, a->d, al, b->d, bl);
1041
1042#if defined(BN_MUL_COMBA) || defined(BN_RECURSION)

--- 83 unchanged lines hidden ---