CyaSSL is an SSL library for devices like mbed.

Dependents:   cyassl-client Sync

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers mpi_class.h Source File

mpi_class.h

00001 #if !(defined(LTM1) && defined(LTM2) && defined(LTM3))
00002 #if defined(LTM2)
00003 #define LTM3
00004 #endif
00005 #if defined(LTM1)
00006 #define LTM2
00007 #endif
00008 #define LTM1
00009 
00010 #if defined(LTM_ALL)
00011 #define BN_ERROR_C
00012 #define BN_FAST_MP_INVMOD_C
00013 #define BN_FAST_MP_MONTGOMERY_REDUCE_C
00014 #define BN_FAST_S_MP_MUL_DIGS_C
00015 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
00016 #define BN_FAST_S_MP_SQR_C
00017 #define BN_MP_2EXPT_C
00018 #define BN_MP_ABS_C
00019 #define BN_MP_ADD_C
00020 #define BN_MP_ADD_D_C
00021 #define BN_MP_ADDMOD_C
00022 #define BN_MP_AND_C
00023 #define BN_MP_CLAMP_C
00024 #define BN_MP_CLEAR_C
00025 #define BN_MP_CLEAR_MULTI_C
00026 #define BN_MP_CMP_C
00027 #define BN_MP_CMP_D_C
00028 #define BN_MP_CMP_MAG_C
00029 #define BN_MP_CNT_LSB_C
00030 #define BN_MP_COPY_C
00031 #define BN_MP_COUNT_BITS_C
00032 #define BN_MP_DIV_C
00033 #define BN_MP_DIV_2_C
00034 #define BN_MP_DIV_2D_C
00035 #define BN_MP_DIV_3_C
00036 #define BN_MP_DIV_D_C
00037 #define BN_MP_DR_IS_MODULUS_C
00038 #define BN_MP_DR_REDUCE_C
00039 #define BN_MP_DR_SETUP_C
00040 #define BN_MP_EXCH_C
00041 #define BN_MP_EXPT_D_C
00042 #define BN_MP_EXPTMOD_C
00043 #define BN_MP_EXPTMOD_FAST_C
00044 #define BN_MP_EXTEUCLID_C
00045 #define BN_MP_FREAD_C
00046 #define BN_MP_FWRITE_C
00047 #define BN_MP_GCD_C
00048 #define BN_MP_GET_INT_C
00049 #define BN_MP_GROW_C
00050 #define BN_MP_INIT_C
00051 #define BN_MP_INIT_COPY_C
00052 #define BN_MP_INIT_MULTI_C
00053 #define BN_MP_INIT_SET_C
00054 #define BN_MP_INIT_SET_INT_C
00055 #define BN_MP_INIT_SIZE_C
00056 #define BN_MP_INVMOD_C
00057 #define BN_MP_INVMOD_SLOW_C
00058 #define BN_MP_IS_SQUARE_C
00059 #define BN_MP_JACOBI_C
00060 #define BN_MP_KARATSUBA_MUL_C
00061 #define BN_MP_KARATSUBA_SQR_C
00062 #define BN_MP_LCM_C
00063 #define BN_MP_LSHD_C
00064 #define BN_MP_MOD_C
00065 #define BN_MP_MOD_2D_C
00066 #define BN_MP_MOD_D_C
00067 #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C
00068 #define BN_MP_MONTGOMERY_REDUCE_C
00069 #define BN_MP_MONTGOMERY_SETUP_C
00070 #define BN_MP_MUL_C
00071 #define BN_MP_MUL_2_C
00072 #define BN_MP_MUL_2D_C
00073 #define BN_MP_MUL_D_C
00074 #define BN_MP_MULMOD_C
00075 #define BN_MP_N_ROOT_C
00076 #define BN_MP_NEG_C
00077 #define BN_MP_OR_C
00078 #define BN_MP_PRIME_FERMAT_C
00079 #define BN_MP_PRIME_IS_DIVISIBLE_C
00080 #define BN_MP_PRIME_IS_PRIME_C
00081 #define BN_MP_PRIME_MILLER_RABIN_C
00082 #define BN_MP_PRIME_NEXT_PRIME_C
00083 #define BN_MP_PRIME_RABIN_MILLER_TRIALS_C
00084 #define BN_MP_PRIME_RANDOM_EX_C
00085 #define BN_MP_RADIX_SIZE_C
00086 #define BN_MP_RADIX_SMAP_C
00087 #define BN_MP_RAND_C
00088 #define BN_MP_READ_RADIX_C
00089 #define BN_MP_READ_SIGNED_BIN_C
00090 #define BN_MP_READ_UNSIGNED_BIN_C
00091 #define BN_MP_REDUCE_C
00092 #define BN_MP_REDUCE_2K_C
00093 #define BN_MP_REDUCE_2K_L_C
00094 #define BN_MP_REDUCE_2K_SETUP_C
00095 #define BN_MP_REDUCE_2K_SETUP_L_C
00096 #define BN_MP_REDUCE_IS_2K_C
00097 #define BN_MP_REDUCE_IS_2K_L_C
00098 #define BN_MP_REDUCE_SETUP_C
00099 #define BN_MP_RSHD_C
00100 #define BN_MP_SET_C
00101 #define BN_MP_SET_INT_C
00102 #define BN_MP_SHRINK_C
00103 #define BN_MP_SIGNED_BIN_SIZE_C
00104 #define BN_MP_SQR_C
00105 #define BN_MP_SQRMOD_C
00106 #define BN_MP_SQRT_C
00107 #define BN_MP_SUB_C
00108 #define BN_MP_SUB_D_C
00109 #define BN_MP_SUBMOD_C
00110 #define BN_MP_TO_SIGNED_BIN_C
00111 #define BN_MP_TO_SIGNED_BIN_N_C
00112 #define BN_MP_TO_UNSIGNED_BIN_C
00113 #define BN_MP_TO_UNSIGNED_BIN_N_C
00114 #define BN_MP_TOOM_MUL_C
00115 #define BN_MP_TOOM_SQR_C
00116 #define BN_MP_TORADIX_C
00117 #define BN_MP_TORADIX_N_C
00118 #define BN_MP_UNSIGNED_BIN_SIZE_C
00119 #define BN_MP_XOR_C
00120 #define BN_MP_ZERO_C
00121 #define BN_PRIME_TAB_C
00122 #define BN_REVERSE_C
00123 #define BN_S_MP_ADD_C
00124 #define BN_S_MP_EXPTMOD_C
00125 #define BN_S_MP_MUL_DIGS_C
00126 #define BN_S_MP_MUL_HIGH_DIGS_C
00127 #define BN_S_MP_SQR_C
00128 #define BN_S_MP_SUB_C
00129 #define BNCORE_C
00130 #endif
00131 
00132 #if defined(BN_ERROR_C)
00133    #define BN_MP_ERROR_TO_STRING_C
00134 #endif
00135 
00136 #if defined(BN_FAST_MP_INVMOD_C)
00137    #define BN_MP_ISEVEN_C
00138    #define BN_MP_INIT_MULTI_C
00139    #define BN_MP_COPY_C
00140    #define BN_MP_MOD_C
00141    #define BN_MP_SET_C
00142    #define BN_MP_DIV_2_C
00143    #define BN_MP_ISODD_C
00144    #define BN_MP_SUB_C
00145    #define BN_MP_CMP_C
00146    #define BN_MP_ISZERO_C
00147    #define BN_MP_CMP_D_C
00148    #define BN_MP_ADD_C
00149    #define BN_MP_EXCH_C
00150    #define BN_MP_CLEAR_MULTI_C
00151 #endif
00152 
00153 #if defined(BN_FAST_MP_MONTGOMERY_REDUCE_C)
00154    #define BN_MP_GROW_C
00155    #define BN_MP_RSHD_C
00156    #define BN_MP_CLAMP_C
00157    #define BN_MP_CMP_MAG_C
00158    #define BN_S_MP_SUB_C
00159 #endif
00160 
00161 #if defined(BN_FAST_S_MP_MUL_DIGS_C)
00162    #define BN_MP_GROW_C
00163    #define BN_MP_CLAMP_C
00164 #endif
00165 
00166 #if defined(BN_FAST_S_MP_MUL_HIGH_DIGS_C)
00167    #define BN_MP_GROW_C
00168    #define BN_MP_CLAMP_C
00169 #endif
00170 
00171 #if defined(BN_FAST_S_MP_SQR_C)
00172    #define BN_MP_GROW_C
00173    #define BN_MP_CLAMP_C
00174 #endif
00175 
00176 #if defined(BN_MP_2EXPT_C)
00177    #define BN_MP_ZERO_C
00178    #define BN_MP_GROW_C
00179 #endif
00180 
00181 #if defined(BN_MP_ABS_C)
00182    #define BN_MP_COPY_C
00183 #endif
00184 
00185 #if defined(BN_MP_ADD_C)
00186    #define BN_S_MP_ADD_C
00187    #define BN_MP_CMP_MAG_C
00188    #define BN_S_MP_SUB_C
00189 #endif
00190 
00191 #if defined(BN_MP_ADD_D_C)
00192    #define BN_MP_GROW_C
00193    #define BN_MP_SUB_D_C
00194    #define BN_MP_CLAMP_C
00195 #endif
00196 
00197 #if defined(BN_MP_ADDMOD_C)
00198    #define BN_MP_INIT_C
00199    #define BN_MP_ADD_C
00200    #define BN_MP_CLEAR_C
00201    #define BN_MP_MOD_C
00202 #endif
00203 
00204 #if defined(BN_MP_AND_C)
00205    #define BN_MP_INIT_COPY_C
00206    #define BN_MP_CLAMP_C
00207    #define BN_MP_EXCH_C
00208    #define BN_MP_CLEAR_C
00209 #endif
00210 
00211 #if defined(BN_MP_CLAMP_C)
00212 #endif
00213 
00214 #if defined(BN_MP_CLEAR_C)
00215 #endif
00216 
00217 #if defined(BN_MP_CLEAR_MULTI_C)
00218    #define BN_MP_CLEAR_C
00219 #endif
00220 
00221 #if defined(BN_MP_CMP_C)
00222    #define BN_MP_CMP_MAG_C
00223 #endif
00224 
00225 #if defined(BN_MP_CMP_D_C)
00226 #endif
00227 
00228 #if defined(BN_MP_CMP_MAG_C)
00229 #endif
00230 
00231 #if defined(BN_MP_CNT_LSB_C)
00232    #define BN_MP_ISZERO_C
00233 #endif
00234 
00235 #if defined(BN_MP_COPY_C)
00236    #define BN_MP_GROW_C
00237 #endif
00238 
00239 #if defined(BN_MP_COUNT_BITS_C)
00240 #endif
00241 
00242 #if defined(BN_MP_DIV_C)
00243    #define BN_MP_ISZERO_C
00244    #define BN_MP_CMP_MAG_C
00245    #define BN_MP_COPY_C
00246    #define BN_MP_ZERO_C
00247    #define BN_MP_INIT_MULTI_C
00248    #define BN_MP_SET_C
00249    #define BN_MP_COUNT_BITS_C
00250    #define BN_MP_ABS_C
00251    #define BN_MP_MUL_2D_C
00252    #define BN_MP_CMP_C
00253    #define BN_MP_SUB_C
00254    #define BN_MP_ADD_C
00255    #define BN_MP_DIV_2D_C
00256    #define BN_MP_EXCH_C
00257    #define BN_MP_CLEAR_MULTI_C
00258    #define BN_MP_INIT_SIZE_C
00259    #define BN_MP_INIT_C
00260    #define BN_MP_INIT_COPY_C
00261    #define BN_MP_LSHD_C
00262    #define BN_MP_RSHD_C
00263    #define BN_MP_MUL_D_C
00264    #define BN_MP_CLAMP_C
00265    #define BN_MP_CLEAR_C
00266 #endif
00267 
00268 #if defined(BN_MP_DIV_2_C)
00269    #define BN_MP_GROW_C
00270    #define BN_MP_CLAMP_C
00271 #endif
00272 
00273 #if defined(BN_MP_DIV_2D_C)
00274    #define BN_MP_COPY_C
00275    #define BN_MP_ZERO_C
00276    #define BN_MP_INIT_C
00277    #define BN_MP_MOD_2D_C
00278    #define BN_MP_CLEAR_C
00279    #define BN_MP_RSHD_C
00280    #define BN_MP_CLAMP_C
00281    #define BN_MP_EXCH_C
00282 #endif
00283 
00284 #if defined(BN_MP_DIV_3_C)
00285    #define BN_MP_INIT_SIZE_C
00286    #define BN_MP_CLAMP_C
00287    #define BN_MP_EXCH_C
00288    #define BN_MP_CLEAR_C
00289 #endif
00290 
00291 #if defined(BN_MP_DIV_D_C)
00292    #define BN_MP_ISZERO_C
00293    #define BN_MP_COPY_C
00294    #define BN_MP_DIV_2D_C
00295    #define BN_MP_DIV_3_C
00296    #define BN_MP_INIT_SIZE_C
00297    #define BN_MP_CLAMP_C
00298    #define BN_MP_EXCH_C
00299    #define BN_MP_CLEAR_C
00300 #endif
00301 
00302 #if defined(BN_MP_DR_IS_MODULUS_C)
00303 #endif
00304 
00305 #if defined(BN_MP_DR_REDUCE_C)
00306    #define BN_MP_GROW_C
00307    #define BN_MP_CLAMP_C
00308    #define BN_MP_CMP_MAG_C
00309    #define BN_S_MP_SUB_C
00310 #endif
00311 
00312 #if defined(BN_MP_DR_SETUP_C)
00313 #endif
00314 
00315 #if defined(BN_MP_EXCH_C)
00316 #endif
00317 
00318 #if defined(BN_MP_EXPT_D_C)
00319    #define BN_MP_INIT_COPY_C
00320    #define BN_MP_SET_C
00321    #define BN_MP_SQR_C
00322    #define BN_MP_CLEAR_C
00323    #define BN_MP_MUL_C
00324 #endif
00325 
00326 #if defined(BN_MP_EXPTMOD_C)
00327    #define BN_MP_INIT_C
00328    #define BN_MP_INVMOD_C
00329    #define BN_MP_CLEAR_C
00330    #define BN_MP_ABS_C
00331    #define BN_MP_CLEAR_MULTI_C
00332    #define BN_MP_REDUCE_IS_2K_L_C
00333    #define BN_S_MP_EXPTMOD_C
00334    #define BN_MP_DR_IS_MODULUS_C
00335    #define BN_MP_REDUCE_IS_2K_C
00336    #define BN_MP_ISODD_C
00337    #define BN_MP_EXPTMOD_FAST_C
00338 #endif
00339 
00340 #if defined(BN_MP_EXPTMOD_FAST_C)
00341    #define BN_MP_COUNT_BITS_C
00342    #define BN_MP_INIT_C
00343    #define BN_MP_CLEAR_C
00344    #define BN_MP_MONTGOMERY_SETUP_C
00345    #define BN_FAST_MP_MONTGOMERY_REDUCE_C
00346    #define BN_MP_MONTGOMERY_REDUCE_C
00347    #define BN_MP_DR_SETUP_C
00348    #define BN_MP_DR_REDUCE_C
00349    #define BN_MP_REDUCE_2K_SETUP_C
00350    #define BN_MP_REDUCE_2K_C
00351    #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C
00352    #define BN_MP_MULMOD_C
00353    #define BN_MP_SET_C
00354    #define BN_MP_MOD_C
00355    #define BN_MP_COPY_C
00356    #define BN_MP_SQR_C
00357    #define BN_MP_MUL_C
00358    #define BN_MP_EXCH_C
00359 #endif
00360 
00361 #if defined(BN_MP_EXTEUCLID_C)
00362    #define BN_MP_INIT_MULTI_C
00363    #define BN_MP_SET_C
00364    #define BN_MP_COPY_C
00365    #define BN_MP_ISZERO_C
00366    #define BN_MP_DIV_C
00367    #define BN_MP_MUL_C
00368    #define BN_MP_SUB_C
00369    #define BN_MP_NEG_C
00370    #define BN_MP_EXCH_C
00371    #define BN_MP_CLEAR_MULTI_C
00372 #endif
00373 
00374 #if defined(BN_MP_FREAD_C)
00375    #define BN_MP_ZERO_C
00376    #define BN_MP_S_RMAP_C
00377    #define BN_MP_MUL_D_C
00378    #define BN_MP_ADD_D_C
00379    #define BN_MP_CMP_D_C
00380 #endif
00381 
00382 #if defined(BN_MP_FWRITE_C)
00383    #define BN_MP_RADIX_SIZE_C
00384    #define BN_MP_TORADIX_C
00385 #endif
00386 
00387 #if defined(BN_MP_GCD_C)
00388    #define BN_MP_ISZERO_C
00389    #define BN_MP_ABS_C
00390    #define BN_MP_ZERO_C
00391    #define BN_MP_INIT_COPY_C
00392    #define BN_MP_CNT_LSB_C
00393    #define BN_MP_DIV_2D_C
00394    #define BN_MP_CMP_MAG_C
00395    #define BN_MP_EXCH_C
00396    #define BN_S_MP_SUB_C
00397    #define BN_MP_MUL_2D_C
00398    #define BN_MP_CLEAR_C
00399 #endif
00400 
00401 #if defined(BN_MP_GET_INT_C)
00402 #endif
00403 
00404 #if defined(BN_MP_GROW_C)
00405 #endif
00406 
00407 #if defined(BN_MP_INIT_C)
00408 #endif
00409 
00410 #if defined(BN_MP_INIT_COPY_C)
00411    #define BN_MP_COPY_C
00412 #endif
00413 
00414 #if defined(BN_MP_INIT_MULTI_C)
00415    #define BN_MP_ERR_C
00416    #define BN_MP_INIT_C
00417    #define BN_MP_CLEAR_C
00418 #endif
00419 
00420 #if defined(BN_MP_INIT_SET_C)
00421    #define BN_MP_INIT_C
00422    #define BN_MP_SET_C
00423 #endif
00424 
00425 #if defined(BN_MP_INIT_SET_INT_C)
00426    #define BN_MP_INIT_C
00427    #define BN_MP_SET_INT_C
00428 #endif
00429 
00430 #if defined(BN_MP_INIT_SIZE_C)
00431    #define BN_MP_INIT_C
00432 #endif
00433 
00434 #if defined(BN_MP_INVMOD_C)
00435    #define BN_MP_ISZERO_C
00436    #define BN_MP_ISODD_C
00437    #define BN_FAST_MP_INVMOD_C
00438    #define BN_MP_INVMOD_SLOW_C
00439 #endif
00440 
00441 #if defined(BN_MP_INVMOD_SLOW_C)
00442    #define BN_MP_ISZERO_C
00443    #define BN_MP_INIT_MULTI_C
00444    #define BN_MP_MOD_C
00445    #define BN_MP_COPY_C
00446    #define BN_MP_ISEVEN_C
00447    #define BN_MP_SET_C
00448    #define BN_MP_DIV_2_C
00449    #define BN_MP_ISODD_C
00450    #define BN_MP_ADD_C
00451    #define BN_MP_SUB_C
00452    #define BN_MP_CMP_C
00453    #define BN_MP_CMP_D_C
00454    #define BN_MP_CMP_MAG_C
00455    #define BN_MP_EXCH_C
00456    #define BN_MP_CLEAR_MULTI_C
00457 #endif
00458 
00459 #if defined(BN_MP_IS_SQUARE_C)
00460    #define BN_MP_MOD_D_C
00461    #define BN_MP_INIT_SET_INT_C
00462    #define BN_MP_MOD_C
00463    #define BN_MP_GET_INT_C
00464    #define BN_MP_SQRT_C
00465    #define BN_MP_SQR_C
00466    #define BN_MP_CMP_MAG_C
00467    #define BN_MP_CLEAR_C
00468 #endif
00469 
00470 #if defined(BN_MP_JACOBI_C)
00471    #define BN_MP_CMP_D_C
00472    #define BN_MP_ISZERO_C
00473    #define BN_MP_INIT_COPY_C
00474    #define BN_MP_CNT_LSB_C
00475    #define BN_MP_DIV_2D_C
00476    #define BN_MP_MOD_C
00477    #define BN_MP_CLEAR_C
00478 #endif
00479 
00480 #if defined(BN_MP_KARATSUBA_MUL_C)
00481    #define BN_MP_MUL_C
00482    #define BN_MP_INIT_SIZE_C
00483    #define BN_MP_CLAMP_C
00484    #define BN_MP_SUB_C
00485    #define BN_MP_ADD_C
00486    #define BN_MP_LSHD_C
00487    #define BN_MP_CLEAR_C
00488 #endif
00489 
00490 #if defined(BN_MP_KARATSUBA_SQR_C)
00491    #define BN_MP_INIT_SIZE_C
00492    #define BN_MP_CLAMP_C
00493    #define BN_MP_SQR_C
00494    #define BN_MP_SUB_C
00495    #define BN_S_MP_ADD_C
00496    #define BN_MP_LSHD_C
00497    #define BN_MP_ADD_C
00498    #define BN_MP_CLEAR_C
00499 #endif
00500 
00501 #if defined(BN_MP_LCM_C)
00502    #define BN_MP_INIT_MULTI_C
00503    #define BN_MP_GCD_C
00504    #define BN_MP_CMP_MAG_C
00505    #define BN_MP_DIV_C
00506    #define BN_MP_MUL_C
00507    #define BN_MP_CLEAR_MULTI_C
00508 #endif
00509 
00510 #if defined(BN_MP_LSHD_C)
00511    #define BN_MP_GROW_C
00512    #define BN_MP_RSHD_C
00513 #endif
00514 
00515 #if defined(BN_MP_MOD_C)
00516    #define BN_MP_INIT_C
00517    #define BN_MP_DIV_C
00518    #define BN_MP_CLEAR_C
00519    #define BN_MP_ADD_C
00520    #define BN_MP_EXCH_C
00521 #endif
00522 
00523 #if defined(BN_MP_MOD_2D_C)
00524    #define BN_MP_ZERO_C
00525    #define BN_MP_COPY_C
00526    #define BN_MP_CLAMP_C
00527 #endif
00528 
00529 #if defined(BN_MP_MOD_D_C)
00530    #define BN_MP_DIV_D_C
00531 #endif
00532 
00533 #if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C)
00534    #define BN_MP_COUNT_BITS_C
00535    #define BN_MP_2EXPT_C
00536    #define BN_MP_SET_C
00537    #define BN_MP_MUL_2_C
00538    #define BN_MP_CMP_MAG_C
00539    #define BN_S_MP_SUB_C
00540 #endif
00541 
00542 #if defined(BN_MP_MONTGOMERY_REDUCE_C)
00543    #define BN_FAST_MP_MONTGOMERY_REDUCE_C
00544    #define BN_MP_GROW_C
00545    #define BN_MP_CLAMP_C
00546    #define BN_MP_RSHD_C
00547    #define BN_MP_CMP_MAG_C
00548    #define BN_S_MP_SUB_C
00549 #endif
00550 
00551 #if defined(BN_MP_MONTGOMERY_SETUP_C)
00552 #endif
00553 
00554 #if defined(BN_MP_MUL_C)
00555    #define BN_MP_TOOM_MUL_C
00556    #define BN_MP_KARATSUBA_MUL_C
00557    #define BN_FAST_S_MP_MUL_DIGS_C
00558    #define BN_S_MP_MUL_C
00559    #define BN_S_MP_MUL_DIGS_C
00560 #endif
00561 
00562 #if defined(BN_MP_MUL_2_C)
00563    #define BN_MP_GROW_C
00564 #endif
00565 
00566 #if defined(BN_MP_MUL_2D_C)
00567    #define BN_MP_COPY_C
00568    #define BN_MP_GROW_C
00569    #define BN_MP_LSHD_C
00570    #define BN_MP_CLAMP_C
00571 #endif
00572 
00573 #if defined(BN_MP_MUL_D_C)
00574    #define BN_MP_GROW_C
00575    #define BN_MP_CLAMP_C
00576 #endif
00577 
00578 #if defined(BN_MP_MULMOD_C)
00579    #define BN_MP_INIT_C
00580    #define BN_MP_MUL_C
00581    #define BN_MP_CLEAR_C
00582    #define BN_MP_MOD_C
00583 #endif
00584 
00585 #if defined(BN_MP_N_ROOT_C)
00586    #define BN_MP_INIT_C
00587    #define BN_MP_SET_C
00588    #define BN_MP_COPY_C
00589    #define BN_MP_EXPT_D_C
00590    #define BN_MP_MUL_C
00591    #define BN_MP_SUB_C
00592    #define BN_MP_MUL_D_C
00593    #define BN_MP_DIV_C
00594    #define BN_MP_CMP_C
00595    #define BN_MP_SUB_D_C
00596    #define BN_MP_EXCH_C
00597    #define BN_MP_CLEAR_C
00598 #endif
00599 
00600 #if defined(BN_MP_NEG_C)
00601    #define BN_MP_COPY_C
00602    #define BN_MP_ISZERO_C
00603 #endif
00604 
00605 #if defined(BN_MP_OR_C)
00606    #define BN_MP_INIT_COPY_C
00607    #define BN_MP_CLAMP_C
00608    #define BN_MP_EXCH_C
00609    #define BN_MP_CLEAR_C
00610 #endif
00611 
00612 #if defined(BN_MP_PRIME_FERMAT_C)
00613    #define BN_MP_CMP_D_C
00614    #define BN_MP_INIT_C
00615    #define BN_MP_EXPTMOD_C
00616    #define BN_MP_CMP_C
00617    #define BN_MP_CLEAR_C
00618 #endif
00619 
00620 #if defined(BN_MP_PRIME_IS_DIVISIBLE_C)
00621    #define BN_MP_MOD_D_C
00622 #endif
00623 
00624 #if defined(BN_MP_PRIME_IS_PRIME_C)
00625    #define BN_MP_CMP_D_C
00626    #define BN_MP_PRIME_IS_DIVISIBLE_C
00627    #define BN_MP_INIT_C
00628    #define BN_MP_SET_C
00629    #define BN_MP_PRIME_MILLER_RABIN_C
00630    #define BN_MP_CLEAR_C
00631 #endif
00632 
00633 #if defined(BN_MP_PRIME_MILLER_RABIN_C)
00634    #define BN_MP_CMP_D_C
00635    #define BN_MP_INIT_COPY_C
00636    #define BN_MP_SUB_D_C
00637    #define BN_MP_CNT_LSB_C
00638    #define BN_MP_DIV_2D_C
00639    #define BN_MP_EXPTMOD_C
00640    #define BN_MP_CMP_C
00641    #define BN_MP_SQRMOD_C
00642    #define BN_MP_CLEAR_C
00643 #endif
00644 
00645 #if defined(BN_MP_PRIME_NEXT_PRIME_C)
00646    #define BN_MP_CMP_D_C
00647    #define BN_MP_SET_C
00648    #define BN_MP_SUB_D_C
00649    #define BN_MP_ISEVEN_C
00650    #define BN_MP_MOD_D_C
00651    #define BN_MP_INIT_C
00652    #define BN_MP_ADD_D_C
00653    #define BN_MP_PRIME_MILLER_RABIN_C
00654    #define BN_MP_CLEAR_C
00655 #endif
00656 
00657 #if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C)
00658 #endif
00659 
00660 #if defined(BN_MP_PRIME_RANDOM_EX_C)
00661    #define BN_MP_READ_UNSIGNED_BIN_C
00662    #define BN_MP_PRIME_IS_PRIME_C
00663    #define BN_MP_SUB_D_C
00664    #define BN_MP_DIV_2_C
00665    #define BN_MP_MUL_2_C
00666    #define BN_MP_ADD_D_C
00667 #endif
00668 
00669 #if defined(BN_MP_RADIX_SIZE_C)
00670    #define BN_MP_COUNT_BITS_C
00671    #define BN_MP_INIT_COPY_C
00672    #define BN_MP_ISZERO_C
00673    #define BN_MP_DIV_D_C
00674    #define BN_MP_CLEAR_C
00675 #endif
00676 
00677 #if defined(BN_MP_RADIX_SMAP_C)
00678    #define BN_MP_S_RMAP_C
00679 #endif
00680 
00681 #if defined(BN_MP_RAND_C)
00682    #define BN_MP_ZERO_C
00683    #define BN_MP_ADD_D_C
00684    #define BN_MP_LSHD_C
00685 #endif
00686 
00687 #if defined(BN_MP_READ_RADIX_C)
00688    #define BN_MP_ZERO_C
00689    #define BN_MP_S_RMAP_C
00690    #define BN_MP_RADIX_SMAP_C
00691    #define BN_MP_MUL_D_C
00692    #define BN_MP_ADD_D_C
00693    #define BN_MP_ISZERO_C
00694 #endif
00695 
00696 #if defined(BN_MP_READ_SIGNED_BIN_C)
00697    #define BN_MP_READ_UNSIGNED_BIN_C
00698 #endif
00699 
00700 #if defined(BN_MP_READ_UNSIGNED_BIN_C)
00701    #define BN_MP_GROW_C
00702    #define BN_MP_ZERO_C
00703    #define BN_MP_MUL_2D_C
00704    #define BN_MP_CLAMP_C
00705 #endif
00706 
00707 #if defined(BN_MP_REDUCE_C)
00708    #define BN_MP_REDUCE_SETUP_C
00709    #define BN_MP_INIT_COPY_C
00710    #define BN_MP_RSHD_C
00711    #define BN_MP_MUL_C
00712    #define BN_S_MP_MUL_HIGH_DIGS_C
00713    #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
00714    #define BN_MP_MOD_2D_C
00715    #define BN_S_MP_MUL_DIGS_C
00716    #define BN_MP_SUB_C
00717    #define BN_MP_CMP_D_C
00718    #define BN_MP_SET_C
00719    #define BN_MP_LSHD_C
00720    #define BN_MP_ADD_C
00721    #define BN_MP_CMP_C
00722    #define BN_S_MP_SUB_C
00723    #define BN_MP_CLEAR_C
00724 #endif
00725 
00726 #if defined(BN_MP_REDUCE_2K_C)
00727    #define BN_MP_INIT_C
00728    #define BN_MP_COUNT_BITS_C
00729    #define BN_MP_DIV_2D_C
00730    #define BN_MP_MUL_D_C
00731    #define BN_S_MP_ADD_C
00732    #define BN_MP_CMP_MAG_C
00733    #define BN_S_MP_SUB_C
00734    #define BN_MP_CLEAR_C
00735 #endif
00736 
00737 #if defined(BN_MP_REDUCE_2K_L_C)
00738    #define BN_MP_INIT_C
00739    #define BN_MP_COUNT_BITS_C
00740    #define BN_MP_DIV_2D_C
00741    #define BN_MP_MUL_C
00742    #define BN_S_MP_ADD_C
00743    #define BN_MP_CMP_MAG_C
00744    #define BN_S_MP_SUB_C
00745    #define BN_MP_CLEAR_C
00746 #endif
00747 
00748 #if defined(BN_MP_REDUCE_2K_SETUP_C)
00749    #define BN_MP_INIT_C
00750    #define BN_MP_COUNT_BITS_C
00751    #define BN_MP_2EXPT_C
00752    #define BN_MP_CLEAR_C
00753    #define BN_S_MP_SUB_C
00754 #endif
00755 
00756 #if defined(BN_MP_REDUCE_2K_SETUP_L_C)
00757    #define BN_MP_INIT_C
00758    #define BN_MP_2EXPT_C
00759    #define BN_MP_COUNT_BITS_C
00760    #define BN_S_MP_SUB_C
00761    #define BN_MP_CLEAR_C
00762 #endif
00763 
00764 #if defined(BN_MP_REDUCE_IS_2K_C)
00765    #define BN_MP_REDUCE_2K_C
00766    #define BN_MP_COUNT_BITS_C
00767 #endif
00768 
00769 #if defined(BN_MP_REDUCE_IS_2K_L_C)
00770 #endif
00771 
00772 #if defined(BN_MP_REDUCE_SETUP_C)
00773    #define BN_MP_2EXPT_C
00774    #define BN_MP_DIV_C
00775 #endif
00776 
00777 #if defined(BN_MP_RSHD_C)
00778    #define BN_MP_ZERO_C
00779 #endif
00780 
00781 #if defined(BN_MP_SET_C)
00782    #define BN_MP_ZERO_C
00783 #endif
00784 
00785 #if defined(BN_MP_SET_INT_C)
00786    #define BN_MP_ZERO_C
00787    #define BN_MP_MUL_2D_C
00788    #define BN_MP_CLAMP_C
00789 #endif
00790 
00791 #if defined(BN_MP_SHRINK_C)
00792 #endif
00793 
00794 #if defined(BN_MP_SIGNED_BIN_SIZE_C)
00795    #define BN_MP_UNSIGNED_BIN_SIZE_C
00796 #endif
00797 
00798 #if defined(BN_MP_SQR_C)
00799    #define BN_MP_TOOM_SQR_C
00800    #define BN_MP_KARATSUBA_SQR_C
00801    #define BN_FAST_S_MP_SQR_C
00802    #define BN_S_MP_SQR_C
00803 #endif
00804 
00805 #if defined(BN_MP_SQRMOD_C)
00806    #define BN_MP_INIT_C
00807    #define BN_MP_SQR_C
00808    #define BN_MP_CLEAR_C
00809    #define BN_MP_MOD_C
00810 #endif
00811 
00812 #if defined(BN_MP_SQRT_C)
00813    #define BN_MP_N_ROOT_C
00814    #define BN_MP_ISZERO_C
00815    #define BN_MP_ZERO_C
00816    #define BN_MP_INIT_COPY_C
00817    #define BN_MP_RSHD_C
00818    #define BN_MP_DIV_C
00819    #define BN_MP_ADD_C
00820    #define BN_MP_DIV_2_C
00821    #define BN_MP_CMP_MAG_C
00822    #define BN_MP_EXCH_C
00823    #define BN_MP_CLEAR_C
00824 #endif
00825 
00826 #if defined(BN_MP_SUB_C)
00827    #define BN_S_MP_ADD_C
00828    #define BN_MP_CMP_MAG_C
00829    #define BN_S_MP_SUB_C
00830 #endif
00831 
00832 #if defined(BN_MP_SUB_D_C)
00833    #define BN_MP_GROW_C
00834    #define BN_MP_ADD_D_C
00835    #define BN_MP_CLAMP_C
00836 #endif
00837 
00838 #if defined(BN_MP_SUBMOD_C)
00839    #define BN_MP_INIT_C
00840    #define BN_MP_SUB_C
00841    #define BN_MP_CLEAR_C
00842    #define BN_MP_MOD_C
00843 #endif
00844 
00845 #if defined(BN_MP_TO_SIGNED_BIN_C)
00846    #define BN_MP_TO_UNSIGNED_BIN_C
00847 #endif
00848 
00849 #if defined(BN_MP_TO_SIGNED_BIN_N_C)
00850    #define BN_MP_SIGNED_BIN_SIZE_C
00851    #define BN_MP_TO_SIGNED_BIN_C
00852 #endif
00853 
00854 #if defined(BN_MP_TO_UNSIGNED_BIN_C)
00855    #define BN_MP_INIT_COPY_C
00856    #define BN_MP_ISZERO_C
00857    #define BN_MP_DIV_2D_C
00858    #define BN_MP_CLEAR_C
00859 #endif
00860 
00861 #if defined(BN_MP_TO_UNSIGNED_BIN_N_C)
00862    #define BN_MP_UNSIGNED_BIN_SIZE_C
00863    #define BN_MP_TO_UNSIGNED_BIN_C
00864 #endif
00865 
00866 #if defined(BN_MP_TOOM_MUL_C)
00867    #define BN_MP_INIT_MULTI_C
00868    #define BN_MP_MOD_2D_C
00869    #define BN_MP_COPY_C
00870    #define BN_MP_RSHD_C
00871    #define BN_MP_MUL_C
00872    #define BN_MP_MUL_2_C
00873    #define BN_MP_ADD_C
00874    #define BN_MP_SUB_C
00875    #define BN_MP_DIV_2_C
00876    #define BN_MP_MUL_2D_C
00877    #define BN_MP_MUL_D_C
00878    #define BN_MP_DIV_3_C
00879    #define BN_MP_LSHD_C
00880    #define BN_MP_CLEAR_MULTI_C
00881 #endif
00882 
00883 #if defined(BN_MP_TOOM_SQR_C)
00884    #define BN_MP_INIT_MULTI_C
00885    #define BN_MP_MOD_2D_C
00886    #define BN_MP_COPY_C
00887    #define BN_MP_RSHD_C
00888    #define BN_MP_SQR_C
00889    #define BN_MP_MUL_2_C
00890    #define BN_MP_ADD_C
00891    #define BN_MP_SUB_C
00892    #define BN_MP_DIV_2_C
00893    #define BN_MP_MUL_2D_C
00894    #define BN_MP_MUL_D_C
00895    #define BN_MP_DIV_3_C
00896    #define BN_MP_LSHD_C
00897    #define BN_MP_CLEAR_MULTI_C
00898 #endif
00899 
00900 #if defined(BN_MP_TORADIX_C)
00901    #define BN_MP_ISZERO_C
00902    #define BN_MP_INIT_COPY_C
00903    #define BN_MP_DIV_D_C
00904    #define BN_MP_CLEAR_C
00905    #define BN_MP_S_RMAP_C
00906 #endif
00907 
00908 #if defined(BN_MP_TORADIX_N_C)
00909    #define BN_MP_ISZERO_C
00910    #define BN_MP_INIT_COPY_C
00911    #define BN_MP_DIV_D_C
00912    #define BN_MP_CLEAR_C
00913    #define BN_MP_S_RMAP_C
00914 #endif
00915 
00916 #if defined(BN_MP_UNSIGNED_BIN_SIZE_C)
00917    #define BN_MP_COUNT_BITS_C
00918 #endif
00919 
00920 #if defined(BN_MP_XOR_C)
00921    #define BN_MP_INIT_COPY_C
00922    #define BN_MP_CLAMP_C
00923    #define BN_MP_EXCH_C
00924    #define BN_MP_CLEAR_C
00925 #endif
00926 
00927 #if defined(BN_MP_ZERO_C)
00928 #endif
00929 
00930 #if defined(BN_PRIME_TAB_C)
00931 #endif
00932 
00933 #if defined(BN_REVERSE_C)
00934 #endif
00935 
00936 #if defined(BN_S_MP_ADD_C)
00937    #define BN_MP_GROW_C
00938    #define BN_MP_CLAMP_C
00939 #endif
00940 
00941 #if defined(BN_S_MP_EXPTMOD_C)
00942    #define BN_MP_COUNT_BITS_C
00943    #define BN_MP_INIT_C
00944    #define BN_MP_CLEAR_C
00945    #define BN_MP_REDUCE_SETUP_C
00946    #define BN_MP_REDUCE_C
00947    #define BN_MP_REDUCE_2K_SETUP_L_C
00948    #define BN_MP_REDUCE_2K_L_C
00949    #define BN_MP_MOD_C
00950    #define BN_MP_COPY_C
00951    #define BN_MP_SQR_C
00952    #define BN_MP_MUL_C
00953    #define BN_MP_SET_C
00954    #define BN_MP_EXCH_C
00955 #endif
00956 
00957 #if defined(BN_S_MP_MUL_DIGS_C)
00958    #define BN_FAST_S_MP_MUL_DIGS_C
00959    #define BN_MP_INIT_SIZE_C
00960    #define BN_MP_CLAMP_C
00961    #define BN_MP_EXCH_C
00962    #define BN_MP_CLEAR_C
00963 #endif
00964 
00965 #if defined(BN_S_MP_MUL_HIGH_DIGS_C)
00966    #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
00967    #define BN_MP_INIT_SIZE_C
00968    #define BN_MP_CLAMP_C
00969    #define BN_MP_EXCH_C
00970    #define BN_MP_CLEAR_C
00971 #endif
00972 
00973 #if defined(BN_S_MP_SQR_C)
00974    #define BN_MP_INIT_SIZE_C
00975    #define BN_MP_CLAMP_C
00976    #define BN_MP_EXCH_C
00977    #define BN_MP_CLEAR_C
00978 #endif
00979 
00980 #if defined(BN_S_MP_SUB_C)
00981    #define BN_MP_GROW_C
00982    #define BN_MP_CLAMP_C
00983 #endif
00984 
00985 #if defined(BNCORE_C)
00986 #endif
00987 
00988 #ifdef LTM3
00989 #define LTM_LAST
00990 #endif
00991 #include "mpi_superclass.h"
00992 #include "mpi_class.h"
00993 #else
00994 #define LTM_LAST
00995 #endif
00996