3 * Copyright (C) 2006-2014 wolfSSL Inc.
5 * This file is part of CyaSSL.
7 * CyaSSL is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * CyaSSL is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
23 #if !(defined(LTM1) && defined(LTM2) && defined(LTM3))
34 #define BN_FAST_MP_INVMOD_C
35 #define BN_FAST_MP_MONTGOMERY_REDUCE_C
36 #define BN_FAST_S_MP_MUL_DIGS_C
37 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
38 #define BN_FAST_S_MP_SQR_C
43 #define BN_MP_ADDMOD_C
47 #define BN_MP_CLEAR_MULTI_C
50 #define BN_MP_CMP_MAG_C
51 #define BN_MP_CNT_LSB_C
53 #define BN_MP_COUNT_BITS_C
56 #define BN_MP_DIV_2D_C
59 #define BN_MP_DR_IS_MODULUS_C
60 #define BN_MP_DR_REDUCE_C
61 #define BN_MP_DR_SETUP_C
63 #define BN_MP_EXPT_D_C
64 #define BN_MP_EXPTMOD_C
65 #define BN_MP_EXPTMOD_FAST_C
66 #define BN_MP_EXTEUCLID_C
68 #define BN_MP_FWRITE_C
70 #define BN_MP_GET_INT_C
73 #define BN_MP_INIT_COPY_C
74 #define BN_MP_INIT_MULTI_C
75 #define BN_MP_INIT_SET_C
76 #define BN_MP_INIT_SET_INT_C
77 #define BN_MP_INIT_SIZE_C
78 #define BN_MP_INVMOD_C
79 #define BN_MP_INVMOD_SLOW_C
80 #define BN_MP_IS_SQUARE_C
81 #define BN_MP_JACOBI_C
82 #define BN_MP_KARATSUBA_MUL_C
83 #define BN_MP_KARATSUBA_SQR_C
87 #define BN_MP_MOD_2D_C
89 #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C
90 #define BN_MP_MONTGOMERY_REDUCE_C
91 #define BN_MP_MONTGOMERY_SETUP_C
94 #define BN_MP_MUL_2D_C
96 #define BN_MP_MULMOD_C
97 #define BN_MP_N_ROOT_C
100 #define BN_MP_PRIME_FERMAT_C
101 #define BN_MP_PRIME_IS_DIVISIBLE_C
102 #define BN_MP_PRIME_IS_PRIME_C
103 #define BN_MP_PRIME_MILLER_RABIN_C
104 #define BN_MP_PRIME_NEXT_PRIME_C
105 #define BN_MP_PRIME_RABIN_MILLER_TRIALS_C
106 #define BN_MP_PRIME_RANDOM_EX_C
107 #define BN_MP_RADIX_SIZE_C
108 #define BN_MP_RADIX_SMAP_C
110 #define BN_MP_READ_RADIX_C
111 #define BN_MP_READ_SIGNED_BIN_C
112 #define BN_MP_READ_UNSIGNED_BIN_C
113 #define BN_MP_REDUCE_C
114 #define BN_MP_REDUCE_2K_C
115 #define BN_MP_REDUCE_2K_L_C
116 #define BN_MP_REDUCE_2K_SETUP_C
117 #define BN_MP_REDUCE_2K_SETUP_L_C
118 #define BN_MP_REDUCE_IS_2K_C
119 #define BN_MP_REDUCE_IS_2K_L_C
120 #define BN_MP_REDUCE_SETUP_C
123 #define BN_MP_SET_INT_C
124 #define BN_MP_SHRINK_C
125 #define BN_MP_SIGNED_BIN_SIZE_C
127 #define BN_MP_SQRMOD_C
130 #define BN_MP_SUB_D_C
131 #define BN_MP_SUBMOD_C
132 #define BN_MP_TO_SIGNED_BIN_C
133 #define BN_MP_TO_SIGNED_BIN_N_C
134 #define BN_MP_TO_UNSIGNED_BIN_C
135 #define BN_MP_TO_UNSIGNED_BIN_N_C
136 #define BN_MP_TOOM_MUL_C
137 #define BN_MP_TOOM_SQR_C
138 #define BN_MP_TORADIX_C
139 #define BN_MP_TORADIX_N_C
140 #define BN_MP_UNSIGNED_BIN_SIZE_C
143 #define BN_PRIME_TAB_C
145 #define BN_S_MP_ADD_C
146 #define BN_S_MP_EXPTMOD_C
147 #define BN_S_MP_MUL_DIGS_C
148 #define BN_S_MP_MUL_HIGH_DIGS_C
149 #define BN_S_MP_SQR_C
150 #define BN_S_MP_SUB_C
154 #if defined(BN_ERROR_C)
155 #define BN_MP_ERROR_TO_STRING_C
158 #if defined(BN_FAST_MP_INVMOD_C)
159 #define BN_MP_ISEVEN_C
160 #define BN_MP_INIT_MULTI_C
164 #define BN_MP_DIV_2_C
165 #define BN_MP_ISODD_C
168 #define BN_MP_ISZERO_C
169 #define BN_MP_CMP_D_C
172 #define BN_MP_CLEAR_MULTI_C
175 #if defined(BN_FAST_MP_MONTGOMERY_REDUCE_C)
178 #define BN_MP_CLAMP_C
179 #define BN_MP_CMP_MAG_C
180 #define BN_S_MP_SUB_C
183 #if defined(BN_FAST_S_MP_MUL_DIGS_C)
185 #define BN_MP_CLAMP_C
188 #if defined(BN_FAST_S_MP_MUL_HIGH_DIGS_C)
190 #define BN_MP_CLAMP_C
193 #if defined(BN_FAST_S_MP_SQR_C)
195 #define BN_MP_CLAMP_C
198 #if defined(BN_MP_2EXPT_C)
203 #if defined(BN_MP_ABS_C)
207 #if defined(BN_MP_ADD_C)
208 #define BN_S_MP_ADD_C
209 #define BN_MP_CMP_MAG_C
210 #define BN_S_MP_SUB_C
213 #if defined(BN_MP_ADD_D_C)
215 #define BN_MP_SUB_D_C
216 #define BN_MP_CLAMP_C
219 #if defined(BN_MP_ADDMOD_C)
222 #define BN_MP_CLEAR_C
226 #if defined(BN_MP_AND_C)
227 #define BN_MP_INIT_COPY_C
228 #define BN_MP_CLAMP_C
230 #define BN_MP_CLEAR_C
233 #if defined(BN_MP_CLAMP_C)
236 #if defined(BN_MP_CLEAR_C)
239 #if defined(BN_MP_CLEAR_MULTI_C)
240 #define BN_MP_CLEAR_C
243 #if defined(BN_MP_CMP_C)
244 #define BN_MP_CMP_MAG_C
247 #if defined(BN_MP_CMP_D_C)
250 #if defined(BN_MP_CMP_MAG_C)
253 #if defined(BN_MP_CNT_LSB_C)
254 #define BN_MP_ISZERO_C
257 #if defined(BN_MP_COPY_C)
261 #if defined(BN_MP_COUNT_BITS_C)
264 #if defined(BN_MP_DIV_C)
265 #define BN_MP_ISZERO_C
266 #define BN_MP_CMP_MAG_C
269 #define BN_MP_INIT_MULTI_C
271 #define BN_MP_COUNT_BITS_C
273 #define BN_MP_MUL_2D_C
277 #define BN_MP_DIV_2D_C
279 #define BN_MP_CLEAR_MULTI_C
280 #define BN_MP_INIT_SIZE_C
282 #define BN_MP_INIT_COPY_C
285 #define BN_MP_MUL_D_C
286 #define BN_MP_CLAMP_C
287 #define BN_MP_CLEAR_C
290 #if defined(BN_MP_DIV_2_C)
292 #define BN_MP_CLAMP_C
295 #if defined(BN_MP_DIV_2D_C)
299 #define BN_MP_MOD_2D_C
300 #define BN_MP_CLEAR_C
302 #define BN_MP_CLAMP_C
306 #if defined(BN_MP_DIV_3_C)
307 #define BN_MP_INIT_SIZE_C
308 #define BN_MP_CLAMP_C
310 #define BN_MP_CLEAR_C
313 #if defined(BN_MP_DIV_D_C)
314 #define BN_MP_ISZERO_C
316 #define BN_MP_DIV_2D_C
317 #define BN_MP_DIV_3_C
318 #define BN_MP_INIT_SIZE_C
319 #define BN_MP_CLAMP_C
321 #define BN_MP_CLEAR_C
324 #if defined(BN_MP_DR_IS_MODULUS_C)
327 #if defined(BN_MP_DR_REDUCE_C)
329 #define BN_MP_CLAMP_C
330 #define BN_MP_CMP_MAG_C
331 #define BN_S_MP_SUB_C
334 #if defined(BN_MP_DR_SETUP_C)
337 #if defined(BN_MP_EXCH_C)
340 #if defined(BN_MP_EXPT_D_C)
341 #define BN_MP_INIT_COPY_C
344 #define BN_MP_CLEAR_C
348 #if defined(BN_MP_EXPTMOD_C)
350 #define BN_MP_INVMOD_C
351 #define BN_MP_CLEAR_C
353 #define BN_MP_CLEAR_MULTI_C
354 #define BN_MP_REDUCE_IS_2K_L_C
355 #define BN_S_MP_EXPTMOD_C
356 #define BN_MP_DR_IS_MODULUS_C
357 #define BN_MP_REDUCE_IS_2K_C
358 #define BN_MP_ISODD_C
359 #define BN_MP_EXPTMOD_FAST_C
362 #if defined(BN_MP_EXPTMOD_FAST_C)
363 #define BN_MP_COUNT_BITS_C
365 #define BN_MP_CLEAR_C
366 #define BN_MP_MONTGOMERY_SETUP_C
367 #define BN_FAST_MP_MONTGOMERY_REDUCE_C
368 #define BN_MP_MONTGOMERY_REDUCE_C
369 #define BN_MP_DR_SETUP_C
370 #define BN_MP_DR_REDUCE_C
371 #define BN_MP_REDUCE_2K_SETUP_C
372 #define BN_MP_REDUCE_2K_C
373 #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C
374 #define BN_MP_MULMOD_C
383 #if defined(BN_MP_EXTEUCLID_C)
384 #define BN_MP_INIT_MULTI_C
387 #define BN_MP_ISZERO_C
393 #define BN_MP_CLEAR_MULTI_C
396 #if defined(BN_MP_FREAD_C)
398 #define BN_MP_S_RMAP_C
399 #define BN_MP_MUL_D_C
400 #define BN_MP_ADD_D_C
401 #define BN_MP_CMP_D_C
404 #if defined(BN_MP_FWRITE_C)
405 #define BN_MP_RADIX_SIZE_C
406 #define BN_MP_TORADIX_C
409 #if defined(BN_MP_GCD_C)
410 #define BN_MP_ISZERO_C
413 #define BN_MP_INIT_COPY_C
414 #define BN_MP_CNT_LSB_C
415 #define BN_MP_DIV_2D_C
416 #define BN_MP_CMP_MAG_C
418 #define BN_S_MP_SUB_C
419 #define BN_MP_MUL_2D_C
420 #define BN_MP_CLEAR_C
423 #if defined(BN_MP_GET_INT_C)
426 #if defined(BN_MP_GROW_C)
429 #if defined(BN_MP_INIT_C)
432 #if defined(BN_MP_INIT_COPY_C)
436 #if defined(BN_MP_INIT_MULTI_C)
439 #define BN_MP_CLEAR_C
442 #if defined(BN_MP_INIT_SET_C)
447 #if defined(BN_MP_INIT_SET_INT_C)
449 #define BN_MP_SET_INT_C
452 #if defined(BN_MP_INIT_SIZE_C)
456 #if defined(BN_MP_INVMOD_C)
457 #define BN_MP_ISZERO_C
458 #define BN_MP_ISODD_C
459 #define BN_FAST_MP_INVMOD_C
460 #define BN_MP_INVMOD_SLOW_C
463 #if defined(BN_MP_INVMOD_SLOW_C)
464 #define BN_MP_ISZERO_C
465 #define BN_MP_INIT_MULTI_C
468 #define BN_MP_ISEVEN_C
470 #define BN_MP_DIV_2_C
471 #define BN_MP_ISODD_C
475 #define BN_MP_CMP_D_C
476 #define BN_MP_CMP_MAG_C
478 #define BN_MP_CLEAR_MULTI_C
481 #if defined(BN_MP_IS_SQUARE_C)
482 #define BN_MP_MOD_D_C
483 #define BN_MP_INIT_SET_INT_C
485 #define BN_MP_GET_INT_C
488 #define BN_MP_CMP_MAG_C
489 #define BN_MP_CLEAR_C
492 #if defined(BN_MP_JACOBI_C)
493 #define BN_MP_CMP_D_C
494 #define BN_MP_ISZERO_C
495 #define BN_MP_INIT_COPY_C
496 #define BN_MP_CNT_LSB_C
497 #define BN_MP_DIV_2D_C
499 #define BN_MP_CLEAR_C
502 #if defined(BN_MP_KARATSUBA_MUL_C)
504 #define BN_MP_INIT_SIZE_C
505 #define BN_MP_CLAMP_C
509 #define BN_MP_CLEAR_C
512 #if defined(BN_MP_KARATSUBA_SQR_C)
513 #define BN_MP_INIT_SIZE_C
514 #define BN_MP_CLAMP_C
517 #define BN_S_MP_ADD_C
520 #define BN_MP_CLEAR_C
523 #if defined(BN_MP_LCM_C)
524 #define BN_MP_INIT_MULTI_C
526 #define BN_MP_CMP_MAG_C
529 #define BN_MP_CLEAR_MULTI_C
532 #if defined(BN_MP_LSHD_C)
537 #if defined(BN_MP_MOD_C)
540 #define BN_MP_CLEAR_C
545 #if defined(BN_MP_MOD_2D_C)
548 #define BN_MP_CLAMP_C
551 #if defined(BN_MP_MOD_D_C)
552 #define BN_MP_DIV_D_C
555 #if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C)
556 #define BN_MP_COUNT_BITS_C
557 #define BN_MP_2EXPT_C
559 #define BN_MP_MUL_2_C
560 #define BN_MP_CMP_MAG_C
561 #define BN_S_MP_SUB_C
564 #if defined(BN_MP_MONTGOMERY_REDUCE_C)
565 #define BN_FAST_MP_MONTGOMERY_REDUCE_C
567 #define BN_MP_CLAMP_C
569 #define BN_MP_CMP_MAG_C
570 #define BN_S_MP_SUB_C
573 #if defined(BN_MP_MONTGOMERY_SETUP_C)
576 #if defined(BN_MP_MUL_C)
577 #define BN_MP_TOOM_MUL_C
578 #define BN_MP_KARATSUBA_MUL_C
579 #define BN_FAST_S_MP_MUL_DIGS_C
580 #define BN_S_MP_MUL_C
581 #define BN_S_MP_MUL_DIGS_C
584 #if defined(BN_MP_MUL_2_C)
588 #if defined(BN_MP_MUL_2D_C)
592 #define BN_MP_CLAMP_C
595 #if defined(BN_MP_MUL_D_C)
597 #define BN_MP_CLAMP_C
600 #if defined(BN_MP_MULMOD_C)
603 #define BN_MP_CLEAR_C
607 #if defined(BN_MP_N_ROOT_C)
611 #define BN_MP_EXPT_D_C
614 #define BN_MP_MUL_D_C
617 #define BN_MP_SUB_D_C
619 #define BN_MP_CLEAR_C
622 #if defined(BN_MP_NEG_C)
624 #define BN_MP_ISZERO_C
627 #if defined(BN_MP_OR_C)
628 #define BN_MP_INIT_COPY_C
629 #define BN_MP_CLAMP_C
631 #define BN_MP_CLEAR_C
634 #if defined(BN_MP_PRIME_FERMAT_C)
635 #define BN_MP_CMP_D_C
637 #define BN_MP_EXPTMOD_C
639 #define BN_MP_CLEAR_C
642 #if defined(BN_MP_PRIME_IS_DIVISIBLE_C)
643 #define BN_MP_MOD_D_C
646 #if defined(BN_MP_PRIME_IS_PRIME_C)
647 #define BN_MP_CMP_D_C
648 #define BN_MP_PRIME_IS_DIVISIBLE_C
651 #define BN_MP_PRIME_MILLER_RABIN_C
652 #define BN_MP_CLEAR_C
655 #if defined(BN_MP_PRIME_MILLER_RABIN_C)
656 #define BN_MP_CMP_D_C
657 #define BN_MP_INIT_COPY_C
658 #define BN_MP_SUB_D_C
659 #define BN_MP_CNT_LSB_C
660 #define BN_MP_DIV_2D_C
661 #define BN_MP_EXPTMOD_C
663 #define BN_MP_SQRMOD_C
664 #define BN_MP_CLEAR_C
667 #if defined(BN_MP_PRIME_NEXT_PRIME_C)
668 #define BN_MP_CMP_D_C
670 #define BN_MP_SUB_D_C
671 #define BN_MP_ISEVEN_C
672 #define BN_MP_MOD_D_C
674 #define BN_MP_ADD_D_C
675 #define BN_MP_PRIME_MILLER_RABIN_C
676 #define BN_MP_CLEAR_C
679 #if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C)
682 #if defined(BN_MP_PRIME_RANDOM_EX_C)
683 #define BN_MP_READ_UNSIGNED_BIN_C
684 #define BN_MP_PRIME_IS_PRIME_C
685 #define BN_MP_SUB_D_C
686 #define BN_MP_DIV_2_C
687 #define BN_MP_MUL_2_C
688 #define BN_MP_ADD_D_C
691 #if defined(BN_MP_RADIX_SIZE_C)
692 #define BN_MP_COUNT_BITS_C
693 #define BN_MP_INIT_COPY_C
694 #define BN_MP_ISZERO_C
695 #define BN_MP_DIV_D_C
696 #define BN_MP_CLEAR_C
699 #if defined(BN_MP_RADIX_SMAP_C)
700 #define BN_MP_S_RMAP_C
703 #if defined(BN_MP_RAND_C)
705 #define BN_MP_ADD_D_C
709 #if defined(BN_MP_READ_RADIX_C)
711 #define BN_MP_S_RMAP_C
712 #define BN_MP_RADIX_SMAP_C
713 #define BN_MP_MUL_D_C
714 #define BN_MP_ADD_D_C
715 #define BN_MP_ISZERO_C
718 #if defined(BN_MP_READ_SIGNED_BIN_C)
719 #define BN_MP_READ_UNSIGNED_BIN_C
722 #if defined(BN_MP_READ_UNSIGNED_BIN_C)
725 #define BN_MP_MUL_2D_C
726 #define BN_MP_CLAMP_C
729 #if defined(BN_MP_REDUCE_C)
730 #define BN_MP_REDUCE_SETUP_C
731 #define BN_MP_INIT_COPY_C
734 #define BN_S_MP_MUL_HIGH_DIGS_C
735 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
736 #define BN_MP_MOD_2D_C
737 #define BN_S_MP_MUL_DIGS_C
739 #define BN_MP_CMP_D_C
744 #define BN_S_MP_SUB_C
745 #define BN_MP_CLEAR_C
748 #if defined(BN_MP_REDUCE_2K_C)
750 #define BN_MP_COUNT_BITS_C
751 #define BN_MP_DIV_2D_C
752 #define BN_MP_MUL_D_C
753 #define BN_S_MP_ADD_C
754 #define BN_MP_CMP_MAG_C
755 #define BN_S_MP_SUB_C
756 #define BN_MP_CLEAR_C
759 #if defined(BN_MP_REDUCE_2K_L_C)
761 #define BN_MP_COUNT_BITS_C
762 #define BN_MP_DIV_2D_C
764 #define BN_S_MP_ADD_C
765 #define BN_MP_CMP_MAG_C
766 #define BN_S_MP_SUB_C
767 #define BN_MP_CLEAR_C
770 #if defined(BN_MP_REDUCE_2K_SETUP_C)
772 #define BN_MP_COUNT_BITS_C
773 #define BN_MP_2EXPT_C
774 #define BN_MP_CLEAR_C
775 #define BN_S_MP_SUB_C
778 #if defined(BN_MP_REDUCE_2K_SETUP_L_C)
780 #define BN_MP_2EXPT_C
781 #define BN_MP_COUNT_BITS_C
782 #define BN_S_MP_SUB_C
783 #define BN_MP_CLEAR_C
786 #if defined(BN_MP_REDUCE_IS_2K_C)
787 #define BN_MP_REDUCE_2K_C
788 #define BN_MP_COUNT_BITS_C
791 #if defined(BN_MP_REDUCE_IS_2K_L_C)
794 #if defined(BN_MP_REDUCE_SETUP_C)
795 #define BN_MP_2EXPT_C
799 #if defined(BN_MP_RSHD_C)
803 #if defined(BN_MP_SET_C)
807 #if defined(BN_MP_SET_INT_C)
809 #define BN_MP_MUL_2D_C
810 #define BN_MP_CLAMP_C
813 #if defined(BN_MP_SHRINK_C)
816 #if defined(BN_MP_SIGNED_BIN_SIZE_C)
817 #define BN_MP_UNSIGNED_BIN_SIZE_C
820 #if defined(BN_MP_SQR_C)
821 #define BN_MP_TOOM_SQR_C
822 #define BN_MP_KARATSUBA_SQR_C
823 #define BN_FAST_S_MP_SQR_C
824 #define BN_S_MP_SQR_C
827 #if defined(BN_MP_SQRMOD_C)
830 #define BN_MP_CLEAR_C
834 #if defined(BN_MP_SQRT_C)
835 #define BN_MP_N_ROOT_C
836 #define BN_MP_ISZERO_C
838 #define BN_MP_INIT_COPY_C
842 #define BN_MP_DIV_2_C
843 #define BN_MP_CMP_MAG_C
845 #define BN_MP_CLEAR_C
848 #if defined(BN_MP_SUB_C)
849 #define BN_S_MP_ADD_C
850 #define BN_MP_CMP_MAG_C
851 #define BN_S_MP_SUB_C
854 #if defined(BN_MP_SUB_D_C)
856 #define BN_MP_ADD_D_C
857 #define BN_MP_CLAMP_C
860 #if defined(BN_MP_SUBMOD_C)
863 #define BN_MP_CLEAR_C
867 #if defined(BN_MP_TO_SIGNED_BIN_C)
868 #define BN_MP_TO_UNSIGNED_BIN_C
871 #if defined(BN_MP_TO_SIGNED_BIN_N_C)
872 #define BN_MP_SIGNED_BIN_SIZE_C
873 #define BN_MP_TO_SIGNED_BIN_C
876 #if defined(BN_MP_TO_UNSIGNED_BIN_C)
877 #define BN_MP_INIT_COPY_C
878 #define BN_MP_ISZERO_C
879 #define BN_MP_DIV_2D_C
880 #define BN_MP_CLEAR_C
883 #if defined(BN_MP_TO_UNSIGNED_BIN_N_C)
884 #define BN_MP_UNSIGNED_BIN_SIZE_C
885 #define BN_MP_TO_UNSIGNED_BIN_C
888 #if defined(BN_MP_TOOM_MUL_C)
889 #define BN_MP_INIT_MULTI_C
890 #define BN_MP_MOD_2D_C
894 #define BN_MP_MUL_2_C
897 #define BN_MP_DIV_2_C
898 #define BN_MP_MUL_2D_C
899 #define BN_MP_MUL_D_C
900 #define BN_MP_DIV_3_C
902 #define BN_MP_CLEAR_MULTI_C
905 #if defined(BN_MP_TOOM_SQR_C)
906 #define BN_MP_INIT_MULTI_C
907 #define BN_MP_MOD_2D_C
911 #define BN_MP_MUL_2_C
914 #define BN_MP_DIV_2_C
915 #define BN_MP_MUL_2D_C
916 #define BN_MP_MUL_D_C
917 #define BN_MP_DIV_3_C
919 #define BN_MP_CLEAR_MULTI_C
922 #if defined(BN_MP_TORADIX_C)
923 #define BN_MP_ISZERO_C
924 #define BN_MP_INIT_COPY_C
925 #define BN_MP_DIV_D_C
926 #define BN_MP_CLEAR_C
927 #define BN_MP_S_RMAP_C
930 #if defined(BN_MP_TORADIX_N_C)
931 #define BN_MP_ISZERO_C
932 #define BN_MP_INIT_COPY_C
933 #define BN_MP_DIV_D_C
934 #define BN_MP_CLEAR_C
935 #define BN_MP_S_RMAP_C
938 #if defined(BN_MP_UNSIGNED_BIN_SIZE_C)
939 #define BN_MP_COUNT_BITS_C
942 #if defined(BN_MP_XOR_C)
943 #define BN_MP_INIT_COPY_C
944 #define BN_MP_CLAMP_C
946 #define BN_MP_CLEAR_C
949 #if defined(BN_MP_ZERO_C)
952 #if defined(BN_PRIME_TAB_C)
955 #if defined(BN_REVERSE_C)
958 #if defined(BN_S_MP_ADD_C)
960 #define BN_MP_CLAMP_C
963 #if defined(BN_S_MP_EXPTMOD_C)
964 #define BN_MP_COUNT_BITS_C
966 #define BN_MP_CLEAR_C
967 #define BN_MP_REDUCE_SETUP_C
968 #define BN_MP_REDUCE_C
969 #define BN_MP_REDUCE_2K_SETUP_L_C
970 #define BN_MP_REDUCE_2K_L_C
979 #if defined(BN_S_MP_MUL_DIGS_C)
980 #define BN_FAST_S_MP_MUL_DIGS_C
981 #define BN_MP_INIT_SIZE_C
982 #define BN_MP_CLAMP_C
984 #define BN_MP_CLEAR_C
987 #if defined(BN_S_MP_MUL_HIGH_DIGS_C)
988 #define BN_FAST_S_MP_MUL_HIGH_DIGS_C
989 #define BN_MP_INIT_SIZE_C
990 #define BN_MP_CLAMP_C
992 #define BN_MP_CLEAR_C
995 #if defined(BN_S_MP_SQR_C)
996 #define BN_MP_INIT_SIZE_C
997 #define BN_MP_CLAMP_C
999 #define BN_MP_CLEAR_C
1002 #if defined(BN_S_MP_SUB_C)
1003 #define BN_MP_GROW_C
1004 #define BN_MP_CLAMP_C
1007 #if defined(BNCORE_C)
1013 #include "mpi_superclass.h"
1014 #include "mpi_class.h"