wolfSSL SSL/TLS library, support up to TLS1.3

Dependents:   CyaSSL-Twitter-OAuth4Tw Example-client-tls-cert TwitterReader TweetTest ... more

Committer:
wolfSSL
Date:
Thu Apr 28 00:57:21 2016 +0000
Revision:
4:1b0d80432c79
wolfSSL 3.9.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wolfSSL 4:1b0d80432c79 1 /* mpi_class.h
wolfSSL 4:1b0d80432c79 2 *
wolfSSL 4:1b0d80432c79 3 * Copyright (C) 2006-2016 wolfSSL Inc.
wolfSSL 4:1b0d80432c79 4 *
wolfSSL 4:1b0d80432c79 5 * This file is part of wolfSSL.
wolfSSL 4:1b0d80432c79 6 *
wolfSSL 4:1b0d80432c79 7 * wolfSSL is free software; you can redistribute it and/or modify
wolfSSL 4:1b0d80432c79 8 * it under the terms of the GNU General Public License as published by
wolfSSL 4:1b0d80432c79 9 * the Free Software Foundation; either version 2 of the License, or
wolfSSL 4:1b0d80432c79 10 * (at your option) any later version.
wolfSSL 4:1b0d80432c79 11 *
wolfSSL 4:1b0d80432c79 12 * wolfSSL is distributed in the hope that it will be useful,
wolfSSL 4:1b0d80432c79 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
wolfSSL 4:1b0d80432c79 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
wolfSSL 4:1b0d80432c79 15 * GNU General Public License for more details.
wolfSSL 4:1b0d80432c79 16 *
wolfSSL 4:1b0d80432c79 17 * You should have received a copy of the GNU General Public License
wolfSSL 4:1b0d80432c79 18 * along with this program; if not, write to the Free Software
wolfSSL 4:1b0d80432c79 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
wolfSSL 4:1b0d80432c79 20 */
wolfSSL 4:1b0d80432c79 21
wolfSSL 4:1b0d80432c79 22
wolfSSL 4:1b0d80432c79 23
wolfSSL 4:1b0d80432c79 24 #if !(defined(LTM1) && defined(LTM2) && defined(LTM3))
wolfSSL 4:1b0d80432c79 25 #if defined(LTM2)
wolfSSL 4:1b0d80432c79 26 #define LTM3
wolfSSL 4:1b0d80432c79 27 #endif
wolfSSL 4:1b0d80432c79 28 #if defined(LTM1)
wolfSSL 4:1b0d80432c79 29 #define LTM2
wolfSSL 4:1b0d80432c79 30 #endif
wolfSSL 4:1b0d80432c79 31 #define LTM1
wolfSSL 4:1b0d80432c79 32
wolfSSL 4:1b0d80432c79 33 #if defined(LTM_ALL)
wolfSSL 4:1b0d80432c79 34 #define BN_ERROR_C
wolfSSL 4:1b0d80432c79 35 #define BN_FAST_MP_INVMOD_C
wolfSSL 4:1b0d80432c79 36 #define BN_FAST_MP_MONTGOMERY_REDUCE_C
wolfSSL 4:1b0d80432c79 37 #define BN_FAST_S_MP_MUL_DIGS_C
wolfSSL 4:1b0d80432c79 38 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
wolfSSL 4:1b0d80432c79 39 #define BN_FAST_S_MP_SQR_C
wolfSSL 4:1b0d80432c79 40 #define BN_MP_2EXPT_C
wolfSSL 4:1b0d80432c79 41 #define BN_MP_ABS_C
wolfSSL 4:1b0d80432c79 42 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 43 #define BN_MP_ADD_D_C
wolfSSL 4:1b0d80432c79 44 #define BN_MP_ADDMOD_C
wolfSSL 4:1b0d80432c79 45 #define BN_MP_AND_C
wolfSSL 4:1b0d80432c79 46 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 47 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 48 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 49 #define BN_MP_CMP_C
wolfSSL 4:1b0d80432c79 50 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 51 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 52 #define BN_MP_CNT_LSB_C
wolfSSL 4:1b0d80432c79 53 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 54 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 55 #define BN_MP_DIV_C
wolfSSL 4:1b0d80432c79 56 #define BN_MP_DIV_2_C
wolfSSL 4:1b0d80432c79 57 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 58 #define BN_MP_DIV_3_C
wolfSSL 4:1b0d80432c79 59 #define BN_MP_DIV_D_C
wolfSSL 4:1b0d80432c79 60 #define BN_MP_DR_IS_MODULUS_C
wolfSSL 4:1b0d80432c79 61 #define BN_MP_DR_REDUCE_C
wolfSSL 4:1b0d80432c79 62 #define BN_MP_DR_SETUP_C
wolfSSL 4:1b0d80432c79 63 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 64 #define BN_MP_EXPT_D_C
wolfSSL 4:1b0d80432c79 65 #define BN_MP_EXPTMOD_C
wolfSSL 4:1b0d80432c79 66 #define BN_MP_EXPTMOD_FAST_C
wolfSSL 4:1b0d80432c79 67 #define BN_MP_EXTEUCLID_C
wolfSSL 4:1b0d80432c79 68 #define BN_MP_FREAD_C
wolfSSL 4:1b0d80432c79 69 #define BN_MP_FWRITE_C
wolfSSL 4:1b0d80432c79 70 #define BN_MP_GCD_C
wolfSSL 4:1b0d80432c79 71 #define BN_MP_GET_INT_C
wolfSSL 4:1b0d80432c79 72 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 73 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 74 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 75 #define BN_MP_INIT_MULTI_C
wolfSSL 4:1b0d80432c79 76 #define BN_MP_INIT_SET_C
wolfSSL 4:1b0d80432c79 77 #define BN_MP_INIT_SET_INT_C
wolfSSL 4:1b0d80432c79 78 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 79 #define BN_MP_INVMOD_C
wolfSSL 4:1b0d80432c79 80 #define BN_MP_INVMOD_SLOW_C
wolfSSL 4:1b0d80432c79 81 #define BN_MP_IS_SQUARE_C
wolfSSL 4:1b0d80432c79 82 #define BN_MP_JACOBI_C
wolfSSL 4:1b0d80432c79 83 #define BN_MP_KARATSUBA_MUL_C
wolfSSL 4:1b0d80432c79 84 #define BN_MP_KARATSUBA_SQR_C
wolfSSL 4:1b0d80432c79 85 #define BN_MP_LCM_C
wolfSSL 4:1b0d80432c79 86 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 87 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 88 #define BN_MP_MOD_2D_C
wolfSSL 4:1b0d80432c79 89 #define BN_MP_MOD_D_C
wolfSSL 4:1b0d80432c79 90 #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C
wolfSSL 4:1b0d80432c79 91 #define BN_MP_MONTGOMERY_REDUCE_C
wolfSSL 4:1b0d80432c79 92 #define BN_MP_MONTGOMERY_SETUP_C
wolfSSL 4:1b0d80432c79 93 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 94 #define BN_MP_MUL_2_C
wolfSSL 4:1b0d80432c79 95 #define BN_MP_MUL_2D_C
wolfSSL 4:1b0d80432c79 96 #define BN_MP_MUL_D_C
wolfSSL 4:1b0d80432c79 97 #define BN_MP_MULMOD_C
wolfSSL 4:1b0d80432c79 98 #define BN_MP_N_ROOT_C
wolfSSL 4:1b0d80432c79 99 #define BN_MP_NEG_C
wolfSSL 4:1b0d80432c79 100 #define BN_MP_OR_C
wolfSSL 4:1b0d80432c79 101 #define BN_MP_PRIME_FERMAT_C
wolfSSL 4:1b0d80432c79 102 #define BN_MP_PRIME_IS_DIVISIBLE_C
wolfSSL 4:1b0d80432c79 103 #define BN_MP_PRIME_IS_PRIME_C
wolfSSL 4:1b0d80432c79 104 #define BN_MP_PRIME_MILLER_RABIN_C
wolfSSL 4:1b0d80432c79 105 #define BN_MP_PRIME_NEXT_PRIME_C
wolfSSL 4:1b0d80432c79 106 #define BN_MP_PRIME_RABIN_MILLER_TRIALS_C
wolfSSL 4:1b0d80432c79 107 #define BN_MP_PRIME_RANDOM_EX_C
wolfSSL 4:1b0d80432c79 108 #define BN_MP_RADIX_SIZE_C
wolfSSL 4:1b0d80432c79 109 #define BN_MP_RADIX_SMAP_C
wolfSSL 4:1b0d80432c79 110 #define BN_MP_RAND_C
wolfSSL 4:1b0d80432c79 111 #define BN_MP_READ_RADIX_C
wolfSSL 4:1b0d80432c79 112 #define BN_MP_READ_SIGNED_BIN_C
wolfSSL 4:1b0d80432c79 113 #define BN_MP_READ_UNSIGNED_BIN_C
wolfSSL 4:1b0d80432c79 114 #define BN_MP_REDUCE_C
wolfSSL 4:1b0d80432c79 115 #define BN_MP_REDUCE_2K_C
wolfSSL 4:1b0d80432c79 116 #define BN_MP_REDUCE_2K_L_C
wolfSSL 4:1b0d80432c79 117 #define BN_MP_REDUCE_2K_SETUP_C
wolfSSL 4:1b0d80432c79 118 #define BN_MP_REDUCE_2K_SETUP_L_C
wolfSSL 4:1b0d80432c79 119 #define BN_MP_REDUCE_IS_2K_C
wolfSSL 4:1b0d80432c79 120 #define BN_MP_REDUCE_IS_2K_L_C
wolfSSL 4:1b0d80432c79 121 #define BN_MP_REDUCE_SETUP_C
wolfSSL 4:1b0d80432c79 122 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 123 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 124 #define BN_MP_SET_INT_C
wolfSSL 4:1b0d80432c79 125 #define BN_MP_SHRINK_C
wolfSSL 4:1b0d80432c79 126 #define BN_MP_SIGNED_BIN_SIZE_C
wolfSSL 4:1b0d80432c79 127 #define BN_MP_SQR_C
wolfSSL 4:1b0d80432c79 128 #define BN_MP_SQRMOD_C
wolfSSL 4:1b0d80432c79 129 #define BN_MP_SQRT_C
wolfSSL 4:1b0d80432c79 130 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 131 #define BN_MP_SUB_D_C
wolfSSL 4:1b0d80432c79 132 #define BN_MP_SUBMOD_C
wolfSSL 4:1b0d80432c79 133 #define BN_MP_TO_SIGNED_BIN_C
wolfSSL 4:1b0d80432c79 134 #define BN_MP_TO_SIGNED_BIN_N_C
wolfSSL 4:1b0d80432c79 135 #define BN_MP_TO_UNSIGNED_BIN_C
wolfSSL 4:1b0d80432c79 136 #define BN_MP_TO_UNSIGNED_BIN_N_C
wolfSSL 4:1b0d80432c79 137 #define BN_MP_TOOM_MUL_C
wolfSSL 4:1b0d80432c79 138 #define BN_MP_TOOM_SQR_C
wolfSSL 4:1b0d80432c79 139 #define BN_MP_TORADIX_C
wolfSSL 4:1b0d80432c79 140 #define BN_MP_TORADIX_N_C
wolfSSL 4:1b0d80432c79 141 #define BN_MP_UNSIGNED_BIN_SIZE_C
wolfSSL 4:1b0d80432c79 142 #define BN_MP_XOR_C
wolfSSL 4:1b0d80432c79 143 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 144 #define BN_PRIME_TAB_C
wolfSSL 4:1b0d80432c79 145 #define BN_REVERSE_C
wolfSSL 4:1b0d80432c79 146 #define BN_S_MP_ADD_C
wolfSSL 4:1b0d80432c79 147 #define BN_S_MP_EXPTMOD_C
wolfSSL 4:1b0d80432c79 148 #define BN_S_MP_MUL_DIGS_C
wolfSSL 4:1b0d80432c79 149 #define BN_S_MP_MUL_HIGH_DIGS_C
wolfSSL 4:1b0d80432c79 150 #define BN_S_MP_SQR_C
wolfSSL 4:1b0d80432c79 151 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 152 #define BNCORE_C
wolfSSL 4:1b0d80432c79 153 #endif
wolfSSL 4:1b0d80432c79 154
wolfSSL 4:1b0d80432c79 155 #if defined(BN_ERROR_C)
wolfSSL 4:1b0d80432c79 156 #define BN_MP_ERROR_TO_STRING_C
wolfSSL 4:1b0d80432c79 157 #endif
wolfSSL 4:1b0d80432c79 158
wolfSSL 4:1b0d80432c79 159 #if defined(BN_FAST_MP_INVMOD_C)
wolfSSL 4:1b0d80432c79 160 #define BN_MP_ISEVEN_C
wolfSSL 4:1b0d80432c79 161 #define BN_MP_INIT_MULTI_C
wolfSSL 4:1b0d80432c79 162 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 163 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 164 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 165 #define BN_MP_DIV_2_C
wolfSSL 4:1b0d80432c79 166 #define BN_MP_ISODD_C
wolfSSL 4:1b0d80432c79 167 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 168 #define BN_MP_CMP_C
wolfSSL 4:1b0d80432c79 169 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 170 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 171 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 172 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 173 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 174 #endif
wolfSSL 4:1b0d80432c79 175
wolfSSL 4:1b0d80432c79 176 #if defined(BN_FAST_MP_MONTGOMERY_REDUCE_C)
wolfSSL 4:1b0d80432c79 177 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 178 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 179 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 180 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 181 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 182 #endif
wolfSSL 4:1b0d80432c79 183
wolfSSL 4:1b0d80432c79 184 #if defined(BN_FAST_S_MP_MUL_DIGS_C)
wolfSSL 4:1b0d80432c79 185 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 186 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 187 #endif
wolfSSL 4:1b0d80432c79 188
wolfSSL 4:1b0d80432c79 189 #if defined(BN_FAST_S_MP_MUL_HIGH_DIGS_C)
wolfSSL 4:1b0d80432c79 190 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 191 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 192 #endif
wolfSSL 4:1b0d80432c79 193
wolfSSL 4:1b0d80432c79 194 #if defined(BN_FAST_S_MP_SQR_C)
wolfSSL 4:1b0d80432c79 195 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 196 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 197 #endif
wolfSSL 4:1b0d80432c79 198
wolfSSL 4:1b0d80432c79 199 #if defined(BN_MP_2EXPT_C)
wolfSSL 4:1b0d80432c79 200 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 201 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 202 #endif
wolfSSL 4:1b0d80432c79 203
wolfSSL 4:1b0d80432c79 204 #if defined(BN_MP_ABS_C)
wolfSSL 4:1b0d80432c79 205 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 206 #endif
wolfSSL 4:1b0d80432c79 207
wolfSSL 4:1b0d80432c79 208 #if defined(BN_MP_ADD_C)
wolfSSL 4:1b0d80432c79 209 #define BN_S_MP_ADD_C
wolfSSL 4:1b0d80432c79 210 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 211 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 212 #endif
wolfSSL 4:1b0d80432c79 213
wolfSSL 4:1b0d80432c79 214 #if defined(BN_MP_ADD_D_C)
wolfSSL 4:1b0d80432c79 215 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 216 #define BN_MP_SUB_D_C
wolfSSL 4:1b0d80432c79 217 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 218 #endif
wolfSSL 4:1b0d80432c79 219
wolfSSL 4:1b0d80432c79 220 #if defined(BN_MP_ADDMOD_C)
wolfSSL 4:1b0d80432c79 221 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 222 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 223 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 224 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 225 #endif
wolfSSL 4:1b0d80432c79 226
wolfSSL 4:1b0d80432c79 227 #if defined(BN_MP_AND_C)
wolfSSL 4:1b0d80432c79 228 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 229 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 230 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 231 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 232 #endif
wolfSSL 4:1b0d80432c79 233
wolfSSL 4:1b0d80432c79 234 #if defined(BN_MP_CLAMP_C)
wolfSSL 4:1b0d80432c79 235 #endif
wolfSSL 4:1b0d80432c79 236
wolfSSL 4:1b0d80432c79 237 #if defined(BN_MP_CLEAR_C)
wolfSSL 4:1b0d80432c79 238 #endif
wolfSSL 4:1b0d80432c79 239
wolfSSL 4:1b0d80432c79 240 #if defined(BN_MP_CLEAR_MULTI_C)
wolfSSL 4:1b0d80432c79 241 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 242 #endif
wolfSSL 4:1b0d80432c79 243
wolfSSL 4:1b0d80432c79 244 #if defined(BN_MP_CMP_C)
wolfSSL 4:1b0d80432c79 245 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 246 #endif
wolfSSL 4:1b0d80432c79 247
wolfSSL 4:1b0d80432c79 248 #if defined(BN_MP_CMP_D_C)
wolfSSL 4:1b0d80432c79 249 #endif
wolfSSL 4:1b0d80432c79 250
wolfSSL 4:1b0d80432c79 251 #if defined(BN_MP_CMP_MAG_C)
wolfSSL 4:1b0d80432c79 252 #endif
wolfSSL 4:1b0d80432c79 253
wolfSSL 4:1b0d80432c79 254 #if defined(BN_MP_CNT_LSB_C)
wolfSSL 4:1b0d80432c79 255 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 256 #endif
wolfSSL 4:1b0d80432c79 257
wolfSSL 4:1b0d80432c79 258 #if defined(BN_MP_COPY_C)
wolfSSL 4:1b0d80432c79 259 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 260 #endif
wolfSSL 4:1b0d80432c79 261
wolfSSL 4:1b0d80432c79 262 #if defined(BN_MP_COUNT_BITS_C)
wolfSSL 4:1b0d80432c79 263 #endif
wolfSSL 4:1b0d80432c79 264
wolfSSL 4:1b0d80432c79 265 #if defined(BN_MP_DIV_C)
wolfSSL 4:1b0d80432c79 266 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 267 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 268 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 269 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 270 #define BN_MP_INIT_MULTI_C
wolfSSL 4:1b0d80432c79 271 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 272 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 273 #define BN_MP_ABS_C
wolfSSL 4:1b0d80432c79 274 #define BN_MP_MUL_2D_C
wolfSSL 4:1b0d80432c79 275 #define BN_MP_CMP_C
wolfSSL 4:1b0d80432c79 276 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 277 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 278 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 279 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 280 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 281 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 282 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 283 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 284 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 285 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 286 #define BN_MP_MUL_D_C
wolfSSL 4:1b0d80432c79 287 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 288 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 289 #endif
wolfSSL 4:1b0d80432c79 290
wolfSSL 4:1b0d80432c79 291 #if defined(BN_MP_DIV_2_C)
wolfSSL 4:1b0d80432c79 292 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 293 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 294 #endif
wolfSSL 4:1b0d80432c79 295
wolfSSL 4:1b0d80432c79 296 #if defined(BN_MP_DIV_2D_C)
wolfSSL 4:1b0d80432c79 297 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 298 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 299 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 300 #define BN_MP_MOD_2D_C
wolfSSL 4:1b0d80432c79 301 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 302 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 303 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 304 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 305 #endif
wolfSSL 4:1b0d80432c79 306
wolfSSL 4:1b0d80432c79 307 #if defined(BN_MP_DIV_3_C)
wolfSSL 4:1b0d80432c79 308 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 309 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 310 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 311 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 312 #endif
wolfSSL 4:1b0d80432c79 313
wolfSSL 4:1b0d80432c79 314 #if defined(BN_MP_DIV_D_C)
wolfSSL 4:1b0d80432c79 315 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 316 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 317 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 318 #define BN_MP_DIV_3_C
wolfSSL 4:1b0d80432c79 319 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 320 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 321 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 322 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 323 #endif
wolfSSL 4:1b0d80432c79 324
wolfSSL 4:1b0d80432c79 325 #if defined(BN_MP_DR_IS_MODULUS_C)
wolfSSL 4:1b0d80432c79 326 #endif
wolfSSL 4:1b0d80432c79 327
wolfSSL 4:1b0d80432c79 328 #if defined(BN_MP_DR_REDUCE_C)
wolfSSL 4:1b0d80432c79 329 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 330 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 331 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 332 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 333 #endif
wolfSSL 4:1b0d80432c79 334
wolfSSL 4:1b0d80432c79 335 #if defined(BN_MP_DR_SETUP_C)
wolfSSL 4:1b0d80432c79 336 #endif
wolfSSL 4:1b0d80432c79 337
wolfSSL 4:1b0d80432c79 338 #if defined(BN_MP_EXCH_C)
wolfSSL 4:1b0d80432c79 339 #endif
wolfSSL 4:1b0d80432c79 340
wolfSSL 4:1b0d80432c79 341 #if defined(BN_MP_EXPT_D_C)
wolfSSL 4:1b0d80432c79 342 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 343 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 344 #define BN_MP_SQR_C
wolfSSL 4:1b0d80432c79 345 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 346 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 347 #endif
wolfSSL 4:1b0d80432c79 348
wolfSSL 4:1b0d80432c79 349 #if defined(BN_MP_EXPTMOD_C)
wolfSSL 4:1b0d80432c79 350 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 351 #define BN_MP_INVMOD_C
wolfSSL 4:1b0d80432c79 352 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 353 #define BN_MP_ABS_C
wolfSSL 4:1b0d80432c79 354 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 355 #define BN_MP_REDUCE_IS_2K_L_C
wolfSSL 4:1b0d80432c79 356 #define BN_S_MP_EXPTMOD_C
wolfSSL 4:1b0d80432c79 357 #define BN_MP_DR_IS_MODULUS_C
wolfSSL 4:1b0d80432c79 358 #define BN_MP_REDUCE_IS_2K_C
wolfSSL 4:1b0d80432c79 359 #define BN_MP_ISODD_C
wolfSSL 4:1b0d80432c79 360 #define BN_MP_EXPTMOD_FAST_C
wolfSSL 4:1b0d80432c79 361 #endif
wolfSSL 4:1b0d80432c79 362
wolfSSL 4:1b0d80432c79 363 #if defined(BN_MP_EXPTMOD_FAST_C)
wolfSSL 4:1b0d80432c79 364 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 365 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 366 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 367 #define BN_MP_MONTGOMERY_SETUP_C
wolfSSL 4:1b0d80432c79 368 #define BN_FAST_MP_MONTGOMERY_REDUCE_C
wolfSSL 4:1b0d80432c79 369 #define BN_MP_MONTGOMERY_REDUCE_C
wolfSSL 4:1b0d80432c79 370 #define BN_MP_DR_SETUP_C
wolfSSL 4:1b0d80432c79 371 #define BN_MP_DR_REDUCE_C
wolfSSL 4:1b0d80432c79 372 #define BN_MP_REDUCE_2K_SETUP_C
wolfSSL 4:1b0d80432c79 373 #define BN_MP_REDUCE_2K_C
wolfSSL 4:1b0d80432c79 374 #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C
wolfSSL 4:1b0d80432c79 375 #define BN_MP_MULMOD_C
wolfSSL 4:1b0d80432c79 376 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 377 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 378 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 379 #define BN_MP_SQR_C
wolfSSL 4:1b0d80432c79 380 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 381 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 382 #endif
wolfSSL 4:1b0d80432c79 383
wolfSSL 4:1b0d80432c79 384 #if defined(BN_MP_EXTEUCLID_C)
wolfSSL 4:1b0d80432c79 385 #define BN_MP_INIT_MULTI_C
wolfSSL 4:1b0d80432c79 386 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 387 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 388 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 389 #define BN_MP_DIV_C
wolfSSL 4:1b0d80432c79 390 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 391 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 392 #define BN_MP_NEG_C
wolfSSL 4:1b0d80432c79 393 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 394 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 395 #endif
wolfSSL 4:1b0d80432c79 396
wolfSSL 4:1b0d80432c79 397 #if defined(BN_MP_FREAD_C)
wolfSSL 4:1b0d80432c79 398 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 399 #define BN_MP_S_RMAP_C
wolfSSL 4:1b0d80432c79 400 #define BN_MP_MUL_D_C
wolfSSL 4:1b0d80432c79 401 #define BN_MP_ADD_D_C
wolfSSL 4:1b0d80432c79 402 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 403 #endif
wolfSSL 4:1b0d80432c79 404
wolfSSL 4:1b0d80432c79 405 #if defined(BN_MP_FWRITE_C)
wolfSSL 4:1b0d80432c79 406 #define BN_MP_RADIX_SIZE_C
wolfSSL 4:1b0d80432c79 407 #define BN_MP_TORADIX_C
wolfSSL 4:1b0d80432c79 408 #endif
wolfSSL 4:1b0d80432c79 409
wolfSSL 4:1b0d80432c79 410 #if defined(BN_MP_GCD_C)
wolfSSL 4:1b0d80432c79 411 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 412 #define BN_MP_ABS_C
wolfSSL 4:1b0d80432c79 413 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 414 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 415 #define BN_MP_CNT_LSB_C
wolfSSL 4:1b0d80432c79 416 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 417 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 418 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 419 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 420 #define BN_MP_MUL_2D_C
wolfSSL 4:1b0d80432c79 421 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 422 #endif
wolfSSL 4:1b0d80432c79 423
wolfSSL 4:1b0d80432c79 424 #if defined(BN_MP_GET_INT_C)
wolfSSL 4:1b0d80432c79 425 #endif
wolfSSL 4:1b0d80432c79 426
wolfSSL 4:1b0d80432c79 427 #if defined(BN_MP_GROW_C)
wolfSSL 4:1b0d80432c79 428 #endif
wolfSSL 4:1b0d80432c79 429
wolfSSL 4:1b0d80432c79 430 #if defined(BN_MP_INIT_C)
wolfSSL 4:1b0d80432c79 431 #endif
wolfSSL 4:1b0d80432c79 432
wolfSSL 4:1b0d80432c79 433 #if defined(BN_MP_INIT_COPY_C)
wolfSSL 4:1b0d80432c79 434 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 435 #endif
wolfSSL 4:1b0d80432c79 436
wolfSSL 4:1b0d80432c79 437 #if defined(BN_MP_INIT_MULTI_C)
wolfSSL 4:1b0d80432c79 438 #define BN_MP_ERR_C
wolfSSL 4:1b0d80432c79 439 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 440 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 441 #endif
wolfSSL 4:1b0d80432c79 442
wolfSSL 4:1b0d80432c79 443 #if defined(BN_MP_INIT_SET_C)
wolfSSL 4:1b0d80432c79 444 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 445 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 446 #endif
wolfSSL 4:1b0d80432c79 447
wolfSSL 4:1b0d80432c79 448 #if defined(BN_MP_INIT_SET_INT_C)
wolfSSL 4:1b0d80432c79 449 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 450 #define BN_MP_SET_INT_C
wolfSSL 4:1b0d80432c79 451 #endif
wolfSSL 4:1b0d80432c79 452
wolfSSL 4:1b0d80432c79 453 #if defined(BN_MP_INIT_SIZE_C)
wolfSSL 4:1b0d80432c79 454 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 455 #endif
wolfSSL 4:1b0d80432c79 456
wolfSSL 4:1b0d80432c79 457 #if defined(BN_MP_INVMOD_C)
wolfSSL 4:1b0d80432c79 458 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 459 #define BN_MP_ISODD_C
wolfSSL 4:1b0d80432c79 460 #define BN_FAST_MP_INVMOD_C
wolfSSL 4:1b0d80432c79 461 #define BN_MP_INVMOD_SLOW_C
wolfSSL 4:1b0d80432c79 462 #endif
wolfSSL 4:1b0d80432c79 463
wolfSSL 4:1b0d80432c79 464 #if defined(BN_MP_INVMOD_SLOW_C)
wolfSSL 4:1b0d80432c79 465 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 466 #define BN_MP_INIT_MULTI_C
wolfSSL 4:1b0d80432c79 467 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 468 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 469 #define BN_MP_ISEVEN_C
wolfSSL 4:1b0d80432c79 470 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 471 #define BN_MP_DIV_2_C
wolfSSL 4:1b0d80432c79 472 #define BN_MP_ISODD_C
wolfSSL 4:1b0d80432c79 473 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 474 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 475 #define BN_MP_CMP_C
wolfSSL 4:1b0d80432c79 476 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 477 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 478 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 479 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 480 #endif
wolfSSL 4:1b0d80432c79 481
wolfSSL 4:1b0d80432c79 482 #if defined(BN_MP_IS_SQUARE_C)
wolfSSL 4:1b0d80432c79 483 #define BN_MP_MOD_D_C
wolfSSL 4:1b0d80432c79 484 #define BN_MP_INIT_SET_INT_C
wolfSSL 4:1b0d80432c79 485 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 486 #define BN_MP_GET_INT_C
wolfSSL 4:1b0d80432c79 487 #define BN_MP_SQRT_C
wolfSSL 4:1b0d80432c79 488 #define BN_MP_SQR_C
wolfSSL 4:1b0d80432c79 489 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 490 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 491 #endif
wolfSSL 4:1b0d80432c79 492
wolfSSL 4:1b0d80432c79 493 #if defined(BN_MP_JACOBI_C)
wolfSSL 4:1b0d80432c79 494 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 495 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 496 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 497 #define BN_MP_CNT_LSB_C
wolfSSL 4:1b0d80432c79 498 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 499 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 500 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 501 #endif
wolfSSL 4:1b0d80432c79 502
wolfSSL 4:1b0d80432c79 503 #if defined(BN_MP_KARATSUBA_MUL_C)
wolfSSL 4:1b0d80432c79 504 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 505 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 506 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 507 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 508 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 509 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 510 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 511 #endif
wolfSSL 4:1b0d80432c79 512
wolfSSL 4:1b0d80432c79 513 #if defined(BN_MP_KARATSUBA_SQR_C)
wolfSSL 4:1b0d80432c79 514 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 515 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 516 #define BN_MP_SQR_C
wolfSSL 4:1b0d80432c79 517 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 518 #define BN_S_MP_ADD_C
wolfSSL 4:1b0d80432c79 519 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 520 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 521 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 522 #endif
wolfSSL 4:1b0d80432c79 523
wolfSSL 4:1b0d80432c79 524 #if defined(BN_MP_LCM_C)
wolfSSL 4:1b0d80432c79 525 #define BN_MP_INIT_MULTI_C
wolfSSL 4:1b0d80432c79 526 #define BN_MP_GCD_C
wolfSSL 4:1b0d80432c79 527 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 528 #define BN_MP_DIV_C
wolfSSL 4:1b0d80432c79 529 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 530 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 531 #endif
wolfSSL 4:1b0d80432c79 532
wolfSSL 4:1b0d80432c79 533 #if defined(BN_MP_LSHD_C)
wolfSSL 4:1b0d80432c79 534 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 535 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 536 #endif
wolfSSL 4:1b0d80432c79 537
wolfSSL 4:1b0d80432c79 538 #if defined(BN_MP_MOD_C)
wolfSSL 4:1b0d80432c79 539 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 540 #define BN_MP_DIV_C
wolfSSL 4:1b0d80432c79 541 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 542 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 543 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 544 #endif
wolfSSL 4:1b0d80432c79 545
wolfSSL 4:1b0d80432c79 546 #if defined(BN_MP_MOD_2D_C)
wolfSSL 4:1b0d80432c79 547 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 548 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 549 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 550 #endif
wolfSSL 4:1b0d80432c79 551
wolfSSL 4:1b0d80432c79 552 #if defined(BN_MP_MOD_D_C)
wolfSSL 4:1b0d80432c79 553 #define BN_MP_DIV_D_C
wolfSSL 4:1b0d80432c79 554 #endif
wolfSSL 4:1b0d80432c79 555
wolfSSL 4:1b0d80432c79 556 #if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C)
wolfSSL 4:1b0d80432c79 557 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 558 #define BN_MP_2EXPT_C
wolfSSL 4:1b0d80432c79 559 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 560 #define BN_MP_MUL_2_C
wolfSSL 4:1b0d80432c79 561 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 562 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 563 #endif
wolfSSL 4:1b0d80432c79 564
wolfSSL 4:1b0d80432c79 565 #if defined(BN_MP_MONTGOMERY_REDUCE_C)
wolfSSL 4:1b0d80432c79 566 #define BN_FAST_MP_MONTGOMERY_REDUCE_C
wolfSSL 4:1b0d80432c79 567 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 568 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 569 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 570 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 571 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 572 #endif
wolfSSL 4:1b0d80432c79 573
wolfSSL 4:1b0d80432c79 574 #if defined(BN_MP_MONTGOMERY_SETUP_C)
wolfSSL 4:1b0d80432c79 575 #endif
wolfSSL 4:1b0d80432c79 576
wolfSSL 4:1b0d80432c79 577 #if defined(BN_MP_MUL_C)
wolfSSL 4:1b0d80432c79 578 #define BN_MP_TOOM_MUL_C
wolfSSL 4:1b0d80432c79 579 #define BN_MP_KARATSUBA_MUL_C
wolfSSL 4:1b0d80432c79 580 #define BN_FAST_S_MP_MUL_DIGS_C
wolfSSL 4:1b0d80432c79 581 #define BN_S_MP_MUL_C
wolfSSL 4:1b0d80432c79 582 #define BN_S_MP_MUL_DIGS_C
wolfSSL 4:1b0d80432c79 583 #endif
wolfSSL 4:1b0d80432c79 584
wolfSSL 4:1b0d80432c79 585 #if defined(BN_MP_MUL_2_C)
wolfSSL 4:1b0d80432c79 586 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 587 #endif
wolfSSL 4:1b0d80432c79 588
wolfSSL 4:1b0d80432c79 589 #if defined(BN_MP_MUL_2D_C)
wolfSSL 4:1b0d80432c79 590 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 591 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 592 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 593 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 594 #endif
wolfSSL 4:1b0d80432c79 595
wolfSSL 4:1b0d80432c79 596 #if defined(BN_MP_MUL_D_C)
wolfSSL 4:1b0d80432c79 597 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 598 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 599 #endif
wolfSSL 4:1b0d80432c79 600
wolfSSL 4:1b0d80432c79 601 #if defined(BN_MP_MULMOD_C)
wolfSSL 4:1b0d80432c79 602 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 603 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 604 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 605 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 606 #endif
wolfSSL 4:1b0d80432c79 607
wolfSSL 4:1b0d80432c79 608 #if defined(BN_MP_N_ROOT_C)
wolfSSL 4:1b0d80432c79 609 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 610 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 611 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 612 #define BN_MP_EXPT_D_C
wolfSSL 4:1b0d80432c79 613 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 614 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 615 #define BN_MP_MUL_D_C
wolfSSL 4:1b0d80432c79 616 #define BN_MP_DIV_C
wolfSSL 4:1b0d80432c79 617 #define BN_MP_CMP_C
wolfSSL 4:1b0d80432c79 618 #define BN_MP_SUB_D_C
wolfSSL 4:1b0d80432c79 619 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 620 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 621 #endif
wolfSSL 4:1b0d80432c79 622
wolfSSL 4:1b0d80432c79 623 #if defined(BN_MP_NEG_C)
wolfSSL 4:1b0d80432c79 624 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 625 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 626 #endif
wolfSSL 4:1b0d80432c79 627
wolfSSL 4:1b0d80432c79 628 #if defined(BN_MP_OR_C)
wolfSSL 4:1b0d80432c79 629 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 630 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 631 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 632 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 633 #endif
wolfSSL 4:1b0d80432c79 634
wolfSSL 4:1b0d80432c79 635 #if defined(BN_MP_PRIME_FERMAT_C)
wolfSSL 4:1b0d80432c79 636 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 637 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 638 #define BN_MP_EXPTMOD_C
wolfSSL 4:1b0d80432c79 639 #define BN_MP_CMP_C
wolfSSL 4:1b0d80432c79 640 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 641 #endif
wolfSSL 4:1b0d80432c79 642
wolfSSL 4:1b0d80432c79 643 #if defined(BN_MP_PRIME_IS_DIVISIBLE_C)
wolfSSL 4:1b0d80432c79 644 #define BN_MP_MOD_D_C
wolfSSL 4:1b0d80432c79 645 #endif
wolfSSL 4:1b0d80432c79 646
wolfSSL 4:1b0d80432c79 647 #if defined(BN_MP_PRIME_IS_PRIME_C)
wolfSSL 4:1b0d80432c79 648 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 649 #define BN_MP_PRIME_IS_DIVISIBLE_C
wolfSSL 4:1b0d80432c79 650 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 651 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 652 #define BN_MP_PRIME_MILLER_RABIN_C
wolfSSL 4:1b0d80432c79 653 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 654 #endif
wolfSSL 4:1b0d80432c79 655
wolfSSL 4:1b0d80432c79 656 #if defined(BN_MP_PRIME_MILLER_RABIN_C)
wolfSSL 4:1b0d80432c79 657 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 658 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 659 #define BN_MP_SUB_D_C
wolfSSL 4:1b0d80432c79 660 #define BN_MP_CNT_LSB_C
wolfSSL 4:1b0d80432c79 661 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 662 #define BN_MP_EXPTMOD_C
wolfSSL 4:1b0d80432c79 663 #define BN_MP_CMP_C
wolfSSL 4:1b0d80432c79 664 #define BN_MP_SQRMOD_C
wolfSSL 4:1b0d80432c79 665 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 666 #endif
wolfSSL 4:1b0d80432c79 667
wolfSSL 4:1b0d80432c79 668 #if defined(BN_MP_PRIME_NEXT_PRIME_C)
wolfSSL 4:1b0d80432c79 669 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 670 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 671 #define BN_MP_SUB_D_C
wolfSSL 4:1b0d80432c79 672 #define BN_MP_ISEVEN_C
wolfSSL 4:1b0d80432c79 673 #define BN_MP_MOD_D_C
wolfSSL 4:1b0d80432c79 674 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 675 #define BN_MP_ADD_D_C
wolfSSL 4:1b0d80432c79 676 #define BN_MP_PRIME_MILLER_RABIN_C
wolfSSL 4:1b0d80432c79 677 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 678 #endif
wolfSSL 4:1b0d80432c79 679
wolfSSL 4:1b0d80432c79 680 #if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C)
wolfSSL 4:1b0d80432c79 681 #endif
wolfSSL 4:1b0d80432c79 682
wolfSSL 4:1b0d80432c79 683 #if defined(BN_MP_PRIME_RANDOM_EX_C)
wolfSSL 4:1b0d80432c79 684 #define BN_MP_READ_UNSIGNED_BIN_C
wolfSSL 4:1b0d80432c79 685 #define BN_MP_PRIME_IS_PRIME_C
wolfSSL 4:1b0d80432c79 686 #define BN_MP_SUB_D_C
wolfSSL 4:1b0d80432c79 687 #define BN_MP_DIV_2_C
wolfSSL 4:1b0d80432c79 688 #define BN_MP_MUL_2_C
wolfSSL 4:1b0d80432c79 689 #define BN_MP_ADD_D_C
wolfSSL 4:1b0d80432c79 690 #endif
wolfSSL 4:1b0d80432c79 691
wolfSSL 4:1b0d80432c79 692 #if defined(BN_MP_RADIX_SIZE_C)
wolfSSL 4:1b0d80432c79 693 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 694 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 695 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 696 #define BN_MP_DIV_D_C
wolfSSL 4:1b0d80432c79 697 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 698 #endif
wolfSSL 4:1b0d80432c79 699
wolfSSL 4:1b0d80432c79 700 #if defined(BN_MP_RADIX_SMAP_C)
wolfSSL 4:1b0d80432c79 701 #define BN_MP_S_RMAP_C
wolfSSL 4:1b0d80432c79 702 #endif
wolfSSL 4:1b0d80432c79 703
wolfSSL 4:1b0d80432c79 704 #if defined(BN_MP_RAND_C)
wolfSSL 4:1b0d80432c79 705 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 706 #define BN_MP_ADD_D_C
wolfSSL 4:1b0d80432c79 707 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 708 #endif
wolfSSL 4:1b0d80432c79 709
wolfSSL 4:1b0d80432c79 710 #if defined(BN_MP_READ_RADIX_C)
wolfSSL 4:1b0d80432c79 711 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 712 #define BN_MP_S_RMAP_C
wolfSSL 4:1b0d80432c79 713 #define BN_MP_RADIX_SMAP_C
wolfSSL 4:1b0d80432c79 714 #define BN_MP_MUL_D_C
wolfSSL 4:1b0d80432c79 715 #define BN_MP_ADD_D_C
wolfSSL 4:1b0d80432c79 716 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 717 #endif
wolfSSL 4:1b0d80432c79 718
wolfSSL 4:1b0d80432c79 719 #if defined(BN_MP_READ_SIGNED_BIN_C)
wolfSSL 4:1b0d80432c79 720 #define BN_MP_READ_UNSIGNED_BIN_C
wolfSSL 4:1b0d80432c79 721 #endif
wolfSSL 4:1b0d80432c79 722
wolfSSL 4:1b0d80432c79 723 #if defined(BN_MP_READ_UNSIGNED_BIN_C)
wolfSSL 4:1b0d80432c79 724 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 725 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 726 #define BN_MP_MUL_2D_C
wolfSSL 4:1b0d80432c79 727 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 728 #endif
wolfSSL 4:1b0d80432c79 729
wolfSSL 4:1b0d80432c79 730 #if defined(BN_MP_REDUCE_C)
wolfSSL 4:1b0d80432c79 731 #define BN_MP_REDUCE_SETUP_C
wolfSSL 4:1b0d80432c79 732 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 733 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 734 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 735 #define BN_S_MP_MUL_HIGH_DIGS_C
wolfSSL 4:1b0d80432c79 736 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
wolfSSL 4:1b0d80432c79 737 #define BN_MP_MOD_2D_C
wolfSSL 4:1b0d80432c79 738 #define BN_S_MP_MUL_DIGS_C
wolfSSL 4:1b0d80432c79 739 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 740 #define BN_MP_CMP_D_C
wolfSSL 4:1b0d80432c79 741 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 742 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 743 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 744 #define BN_MP_CMP_C
wolfSSL 4:1b0d80432c79 745 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 746 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 747 #endif
wolfSSL 4:1b0d80432c79 748
wolfSSL 4:1b0d80432c79 749 #if defined(BN_MP_REDUCE_2K_C)
wolfSSL 4:1b0d80432c79 750 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 751 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 752 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 753 #define BN_MP_MUL_D_C
wolfSSL 4:1b0d80432c79 754 #define BN_S_MP_ADD_C
wolfSSL 4:1b0d80432c79 755 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 756 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 757 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 758 #endif
wolfSSL 4:1b0d80432c79 759
wolfSSL 4:1b0d80432c79 760 #if defined(BN_MP_REDUCE_2K_L_C)
wolfSSL 4:1b0d80432c79 761 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 762 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 763 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 764 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 765 #define BN_S_MP_ADD_C
wolfSSL 4:1b0d80432c79 766 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 767 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 768 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 769 #endif
wolfSSL 4:1b0d80432c79 770
wolfSSL 4:1b0d80432c79 771 #if defined(BN_MP_REDUCE_2K_SETUP_C)
wolfSSL 4:1b0d80432c79 772 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 773 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 774 #define BN_MP_2EXPT_C
wolfSSL 4:1b0d80432c79 775 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 776 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 777 #endif
wolfSSL 4:1b0d80432c79 778
wolfSSL 4:1b0d80432c79 779 #if defined(BN_MP_REDUCE_2K_SETUP_L_C)
wolfSSL 4:1b0d80432c79 780 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 781 #define BN_MP_2EXPT_C
wolfSSL 4:1b0d80432c79 782 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 783 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 784 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 785 #endif
wolfSSL 4:1b0d80432c79 786
wolfSSL 4:1b0d80432c79 787 #if defined(BN_MP_REDUCE_IS_2K_C)
wolfSSL 4:1b0d80432c79 788 #define BN_MP_REDUCE_2K_C
wolfSSL 4:1b0d80432c79 789 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 790 #endif
wolfSSL 4:1b0d80432c79 791
wolfSSL 4:1b0d80432c79 792 #if defined(BN_MP_REDUCE_IS_2K_L_C)
wolfSSL 4:1b0d80432c79 793 #endif
wolfSSL 4:1b0d80432c79 794
wolfSSL 4:1b0d80432c79 795 #if defined(BN_MP_REDUCE_SETUP_C)
wolfSSL 4:1b0d80432c79 796 #define BN_MP_2EXPT_C
wolfSSL 4:1b0d80432c79 797 #define BN_MP_DIV_C
wolfSSL 4:1b0d80432c79 798 #endif
wolfSSL 4:1b0d80432c79 799
wolfSSL 4:1b0d80432c79 800 #if defined(BN_MP_RSHD_C)
wolfSSL 4:1b0d80432c79 801 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 802 #endif
wolfSSL 4:1b0d80432c79 803
wolfSSL 4:1b0d80432c79 804 #if defined(BN_MP_SET_C)
wolfSSL 4:1b0d80432c79 805 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 806 #endif
wolfSSL 4:1b0d80432c79 807
wolfSSL 4:1b0d80432c79 808 #if defined(BN_MP_SET_INT_C)
wolfSSL 4:1b0d80432c79 809 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 810 #define BN_MP_MUL_2D_C
wolfSSL 4:1b0d80432c79 811 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 812 #endif
wolfSSL 4:1b0d80432c79 813
wolfSSL 4:1b0d80432c79 814 #if defined(BN_MP_SHRINK_C)
wolfSSL 4:1b0d80432c79 815 #endif
wolfSSL 4:1b0d80432c79 816
wolfSSL 4:1b0d80432c79 817 #if defined(BN_MP_SIGNED_BIN_SIZE_C)
wolfSSL 4:1b0d80432c79 818 #define BN_MP_UNSIGNED_BIN_SIZE_C
wolfSSL 4:1b0d80432c79 819 #endif
wolfSSL 4:1b0d80432c79 820
wolfSSL 4:1b0d80432c79 821 #if defined(BN_MP_SQR_C)
wolfSSL 4:1b0d80432c79 822 #define BN_MP_TOOM_SQR_C
wolfSSL 4:1b0d80432c79 823 #define BN_MP_KARATSUBA_SQR_C
wolfSSL 4:1b0d80432c79 824 #define BN_FAST_S_MP_SQR_C
wolfSSL 4:1b0d80432c79 825 #define BN_S_MP_SQR_C
wolfSSL 4:1b0d80432c79 826 #endif
wolfSSL 4:1b0d80432c79 827
wolfSSL 4:1b0d80432c79 828 #if defined(BN_MP_SQRMOD_C)
wolfSSL 4:1b0d80432c79 829 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 830 #define BN_MP_SQR_C
wolfSSL 4:1b0d80432c79 831 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 832 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 833 #endif
wolfSSL 4:1b0d80432c79 834
wolfSSL 4:1b0d80432c79 835 #if defined(BN_MP_SQRT_C)
wolfSSL 4:1b0d80432c79 836 #define BN_MP_N_ROOT_C
wolfSSL 4:1b0d80432c79 837 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 838 #define BN_MP_ZERO_C
wolfSSL 4:1b0d80432c79 839 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 840 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 841 #define BN_MP_DIV_C
wolfSSL 4:1b0d80432c79 842 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 843 #define BN_MP_DIV_2_C
wolfSSL 4:1b0d80432c79 844 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 845 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 846 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 847 #endif
wolfSSL 4:1b0d80432c79 848
wolfSSL 4:1b0d80432c79 849 #if defined(BN_MP_SUB_C)
wolfSSL 4:1b0d80432c79 850 #define BN_S_MP_ADD_C
wolfSSL 4:1b0d80432c79 851 #define BN_MP_CMP_MAG_C
wolfSSL 4:1b0d80432c79 852 #define BN_S_MP_SUB_C
wolfSSL 4:1b0d80432c79 853 #endif
wolfSSL 4:1b0d80432c79 854
wolfSSL 4:1b0d80432c79 855 #if defined(BN_MP_SUB_D_C)
wolfSSL 4:1b0d80432c79 856 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 857 #define BN_MP_ADD_D_C
wolfSSL 4:1b0d80432c79 858 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 859 #endif
wolfSSL 4:1b0d80432c79 860
wolfSSL 4:1b0d80432c79 861 #if defined(BN_MP_SUBMOD_C)
wolfSSL 4:1b0d80432c79 862 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 863 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 864 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 865 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 866 #endif
wolfSSL 4:1b0d80432c79 867
wolfSSL 4:1b0d80432c79 868 #if defined(BN_MP_TO_SIGNED_BIN_C)
wolfSSL 4:1b0d80432c79 869 #define BN_MP_TO_UNSIGNED_BIN_C
wolfSSL 4:1b0d80432c79 870 #endif
wolfSSL 4:1b0d80432c79 871
wolfSSL 4:1b0d80432c79 872 #if defined(BN_MP_TO_SIGNED_BIN_N_C)
wolfSSL 4:1b0d80432c79 873 #define BN_MP_SIGNED_BIN_SIZE_C
wolfSSL 4:1b0d80432c79 874 #define BN_MP_TO_SIGNED_BIN_C
wolfSSL 4:1b0d80432c79 875 #endif
wolfSSL 4:1b0d80432c79 876
wolfSSL 4:1b0d80432c79 877 #if defined(BN_MP_TO_UNSIGNED_BIN_C)
wolfSSL 4:1b0d80432c79 878 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 879 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 880 #define BN_MP_DIV_2D_C
wolfSSL 4:1b0d80432c79 881 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 882 #endif
wolfSSL 4:1b0d80432c79 883
wolfSSL 4:1b0d80432c79 884 #if defined(BN_MP_TO_UNSIGNED_BIN_N_C)
wolfSSL 4:1b0d80432c79 885 #define BN_MP_UNSIGNED_BIN_SIZE_C
wolfSSL 4:1b0d80432c79 886 #define BN_MP_TO_UNSIGNED_BIN_C
wolfSSL 4:1b0d80432c79 887 #endif
wolfSSL 4:1b0d80432c79 888
wolfSSL 4:1b0d80432c79 889 #if defined(BN_MP_TOOM_MUL_C)
wolfSSL 4:1b0d80432c79 890 #define BN_MP_INIT_MULTI_C
wolfSSL 4:1b0d80432c79 891 #define BN_MP_MOD_2D_C
wolfSSL 4:1b0d80432c79 892 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 893 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 894 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 895 #define BN_MP_MUL_2_C
wolfSSL 4:1b0d80432c79 896 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 897 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 898 #define BN_MP_DIV_2_C
wolfSSL 4:1b0d80432c79 899 #define BN_MP_MUL_2D_C
wolfSSL 4:1b0d80432c79 900 #define BN_MP_MUL_D_C
wolfSSL 4:1b0d80432c79 901 #define BN_MP_DIV_3_C
wolfSSL 4:1b0d80432c79 902 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 903 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 904 #endif
wolfSSL 4:1b0d80432c79 905
wolfSSL 4:1b0d80432c79 906 #if defined(BN_MP_TOOM_SQR_C)
wolfSSL 4:1b0d80432c79 907 #define BN_MP_INIT_MULTI_C
wolfSSL 4:1b0d80432c79 908 #define BN_MP_MOD_2D_C
wolfSSL 4:1b0d80432c79 909 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 910 #define BN_MP_RSHD_C
wolfSSL 4:1b0d80432c79 911 #define BN_MP_SQR_C
wolfSSL 4:1b0d80432c79 912 #define BN_MP_MUL_2_C
wolfSSL 4:1b0d80432c79 913 #define BN_MP_ADD_C
wolfSSL 4:1b0d80432c79 914 #define BN_MP_SUB_C
wolfSSL 4:1b0d80432c79 915 #define BN_MP_DIV_2_C
wolfSSL 4:1b0d80432c79 916 #define BN_MP_MUL_2D_C
wolfSSL 4:1b0d80432c79 917 #define BN_MP_MUL_D_C
wolfSSL 4:1b0d80432c79 918 #define BN_MP_DIV_3_C
wolfSSL 4:1b0d80432c79 919 #define BN_MP_LSHD_C
wolfSSL 4:1b0d80432c79 920 #define BN_MP_CLEAR_MULTI_C
wolfSSL 4:1b0d80432c79 921 #endif
wolfSSL 4:1b0d80432c79 922
wolfSSL 4:1b0d80432c79 923 #if defined(BN_MP_TORADIX_C)
wolfSSL 4:1b0d80432c79 924 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 925 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 926 #define BN_MP_DIV_D_C
wolfSSL 4:1b0d80432c79 927 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 928 #define BN_MP_S_RMAP_C
wolfSSL 4:1b0d80432c79 929 #endif
wolfSSL 4:1b0d80432c79 930
wolfSSL 4:1b0d80432c79 931 #if defined(BN_MP_TORADIX_N_C)
wolfSSL 4:1b0d80432c79 932 #define BN_MP_ISZERO_C
wolfSSL 4:1b0d80432c79 933 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 934 #define BN_MP_DIV_D_C
wolfSSL 4:1b0d80432c79 935 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 936 #define BN_MP_S_RMAP_C
wolfSSL 4:1b0d80432c79 937 #endif
wolfSSL 4:1b0d80432c79 938
wolfSSL 4:1b0d80432c79 939 #if defined(BN_MP_UNSIGNED_BIN_SIZE_C)
wolfSSL 4:1b0d80432c79 940 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 941 #endif
wolfSSL 4:1b0d80432c79 942
wolfSSL 4:1b0d80432c79 943 #if defined(BN_MP_XOR_C)
wolfSSL 4:1b0d80432c79 944 #define BN_MP_INIT_COPY_C
wolfSSL 4:1b0d80432c79 945 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 946 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 947 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 948 #endif
wolfSSL 4:1b0d80432c79 949
wolfSSL 4:1b0d80432c79 950 #if defined(BN_MP_ZERO_C)
wolfSSL 4:1b0d80432c79 951 #endif
wolfSSL 4:1b0d80432c79 952
wolfSSL 4:1b0d80432c79 953 #if defined(BN_PRIME_TAB_C)
wolfSSL 4:1b0d80432c79 954 #endif
wolfSSL 4:1b0d80432c79 955
wolfSSL 4:1b0d80432c79 956 #if defined(BN_REVERSE_C)
wolfSSL 4:1b0d80432c79 957 #endif
wolfSSL 4:1b0d80432c79 958
wolfSSL 4:1b0d80432c79 959 #if defined(BN_S_MP_ADD_C)
wolfSSL 4:1b0d80432c79 960 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 961 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 962 #endif
wolfSSL 4:1b0d80432c79 963
wolfSSL 4:1b0d80432c79 964 #if defined(BN_S_MP_EXPTMOD_C)
wolfSSL 4:1b0d80432c79 965 #define BN_MP_COUNT_BITS_C
wolfSSL 4:1b0d80432c79 966 #define BN_MP_INIT_C
wolfSSL 4:1b0d80432c79 967 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 968 #define BN_MP_REDUCE_SETUP_C
wolfSSL 4:1b0d80432c79 969 #define BN_MP_REDUCE_C
wolfSSL 4:1b0d80432c79 970 #define BN_MP_REDUCE_2K_SETUP_L_C
wolfSSL 4:1b0d80432c79 971 #define BN_MP_REDUCE_2K_L_C
wolfSSL 4:1b0d80432c79 972 #define BN_MP_MOD_C
wolfSSL 4:1b0d80432c79 973 #define BN_MP_COPY_C
wolfSSL 4:1b0d80432c79 974 #define BN_MP_SQR_C
wolfSSL 4:1b0d80432c79 975 #define BN_MP_MUL_C
wolfSSL 4:1b0d80432c79 976 #define BN_MP_SET_C
wolfSSL 4:1b0d80432c79 977 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 978 #endif
wolfSSL 4:1b0d80432c79 979
wolfSSL 4:1b0d80432c79 980 #if defined(BN_S_MP_MUL_DIGS_C)
wolfSSL 4:1b0d80432c79 981 #define BN_FAST_S_MP_MUL_DIGS_C
wolfSSL 4:1b0d80432c79 982 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 983 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 984 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 985 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 986 #endif
wolfSSL 4:1b0d80432c79 987
wolfSSL 4:1b0d80432c79 988 #if defined(BN_S_MP_MUL_HIGH_DIGS_C)
wolfSSL 4:1b0d80432c79 989 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
wolfSSL 4:1b0d80432c79 990 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 991 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 992 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 993 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 994 #endif
wolfSSL 4:1b0d80432c79 995
wolfSSL 4:1b0d80432c79 996 #if defined(BN_S_MP_SQR_C)
wolfSSL 4:1b0d80432c79 997 #define BN_MP_INIT_SIZE_C
wolfSSL 4:1b0d80432c79 998 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 999 #define BN_MP_EXCH_C
wolfSSL 4:1b0d80432c79 1000 #define BN_MP_CLEAR_C
wolfSSL 4:1b0d80432c79 1001 #endif
wolfSSL 4:1b0d80432c79 1002
wolfSSL 4:1b0d80432c79 1003 #if defined(BN_S_MP_SUB_C)
wolfSSL 4:1b0d80432c79 1004 #define BN_MP_GROW_C
wolfSSL 4:1b0d80432c79 1005 #define BN_MP_CLAMP_C
wolfSSL 4:1b0d80432c79 1006 #endif
wolfSSL 4:1b0d80432c79 1007
wolfSSL 4:1b0d80432c79 1008 #if defined(BNCORE_C)
wolfSSL 4:1b0d80432c79 1009 #endif
wolfSSL 4:1b0d80432c79 1010
wolfSSL 4:1b0d80432c79 1011 #ifdef LTM3
wolfSSL 4:1b0d80432c79 1012 #define LTM_LAST
wolfSSL 4:1b0d80432c79 1013 #endif
wolfSSL 4:1b0d80432c79 1014 #include "mpi_superclass.h"
wolfSSL 4:1b0d80432c79 1015 #include "mpi_class.h"
wolfSSL 4:1b0d80432c79 1016 #else
wolfSSL 4:1b0d80432c79 1017 #define LTM_LAST
wolfSSL 4:1b0d80432c79 1018 #endif
wolfSSL 4:1b0d80432c79 1019
wolfSSL 4:1b0d80432c79 1020