diff options
author | hans <hans@pkgsrc.org> | 2011-09-15 13:01:14 +0000 |
---|---|---|
committer | hans <hans@pkgsrc.org> | 2011-09-15 13:01:14 +0000 |
commit | c9308949bbb7589dba6847765c82a73cfd6f3f50 (patch) | |
tree | 2a259544498fa5f15f015cc787c0a803f1faa9c3 /security/heimdal | |
parent | 5b452fc01cce59e10bf30aa813e2bda0d0639c40 (diff) | |
download | pkgsrc-c9308949bbb7589dba6847765c82a73cfd6f3f50.tar.gz |
Split and clean up tommath patches. Requested by wiz.
Diffstat (limited to 'security/heimdal')
4 files changed, 1086 insertions, 1085 deletions
diff --git a/security/heimdal/distinfo b/security/heimdal/distinfo index 905f618c581..fca332e9f8b 100644 --- a/security/heimdal/distinfo +++ b/security/heimdal/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.31 2011/09/15 09:32:32 wiz Exp $ +$NetBSD: distinfo,v 1.32 2011/09/15 13:01:14 hans Exp $ SHA1 (heimdal-1.4.tar.gz) = b4c876df3637a11deea72f87a6e54f6caf501679 RMD160 (heimdal-1.4.tar.gz) = 055288f1ab37781f1533299bdff9b0d1e264d470 @@ -7,5 +7,7 @@ SHA1 (patch-ad) = 37c2a7cdc4dba695a84057b40aae3c5a971cb546 SHA1 (patch-al) = 022d5f3723bd1db7fe5e92eea5d0106851a5d424 SHA1 (patch-ar) = 0a3e7bbd3cb04deb0f6772afd9a6b6b5353463d3 SHA1 (patch-kdc_version-script.map) = 42b0417a16b19a680f30ae34cfffd082f609d4a6 -SHA1 (patch-lib_hcrypto_libtommath_tommath.h) = 42f9067dab75f1795e841a0858416aa1f903d192 +SHA1 (patch-lib_hcrypto_libtommath_tommath.h) = 60f223bb23145854f2a144da9e0a9484728b618a +SHA1 (patch-lib_hcrypto_libtommath_tommath_class.h) = 8c7b1e8d30cda79fd59a8ef83094a611b47a43df +SHA1 (patch-lib_hcrypto_libtommath_tommath_superclass.h) = 141e75b5b310446694769b16a977fa5b25160fbd SHA1 (patch-lib_otp_Makefile.in) = 830f0e536a103478d147bb03e7752d5d38ddf03b diff --git a/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath.h b/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath.h index 0e07ac8138d..64a374e5a4a 100644 --- a/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath.h +++ b/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath.h @@ -1,8 +1,8 @@ -$NetBSD: patch-lib_hcrypto_libtommath_tommath.h,v 1.2 2011/09/15 09:32:32 wiz Exp $ +$NetBSD: patch-lib_hcrypto_libtommath_tommath.h,v 1.3 2011/09/15 13:01:14 hans Exp $ ---- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ lib/hcrypto/libtommath/tommath.h 29 Oct 2010 01:14:54 -0000 -@@ -0,0 +1,588 @@ +--- lib/hcrypto/libtommath/tommath.h.orig 2011-09-15 09:31:23.190661136 +0200 ++++ lib/hcrypto/libtommath/tommath.h 2011-09-15 09:32:00.326647970 +0200 +@@ -0,0 +1,587 @@ +/* LibTomMath, multiple-precision integer library -- Tom St Denis + * + * LibTomMath is a library that provides multiple-precision @@ -590,1082 +590,3 @@ $NetBSD: patch-lib_hcrypto_libtommath_tommath.h,v 1.2 2011/09/15 09:32:32 wiz Ex +#endif + +#endif -+ -+ -+/* $Source: /cvsroot/pkgsrc/security/heimdal/patches/Attic/patch-lib_hcrypto_libtommath_tommath.h,v $ */ -+/* $Revision: 1.2 $ */ -+/* $Date: 2011/09/15 09:32:32 $ */ ---- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ lib/hcrypto/libtommath/tommath_class.h 29 Oct 2010 01:14:54 -0000 -@@ -0,0 +1,1000 @@ -+#if !(defined(LTM1) && defined(LTM2) && defined(LTM3)) -+#if defined(LTM2) -+#define LTM3 -+#endif -+#if defined(LTM1) -+#define LTM2 -+#endif -+#define LTM1 -+ -+#if defined(LTM_ALL) -+#define BN_ERROR_C -+#define BN_FAST_MP_INVMOD_C -+#define BN_FAST_MP_MONTGOMERY_REDUCE_C -+#define BN_FAST_S_MP_MUL_DIGS_C -+#define BN_FAST_S_MP_MUL_HIGH_DIGS_C -+#define BN_FAST_S_MP_SQR_C -+#define BN_MP_2EXPT_C -+#define BN_MP_ABS_C -+#define BN_MP_ADD_C -+#define BN_MP_ADD_D_C -+#define BN_MP_ADDMOD_C -+#define BN_MP_AND_C -+#define BN_MP_CLAMP_C -+#define BN_MP_CLEAR_C -+#define BN_MP_CLEAR_MULTI_C -+#define BN_MP_CMP_C -+#define BN_MP_CMP_D_C -+#define BN_MP_CMP_MAG_C -+#define BN_MP_CNT_LSB_C -+#define BN_MP_COPY_C -+#define BN_MP_COUNT_BITS_C -+#define BN_MP_DIV_C -+#define BN_MP_DIV_2_C -+#define BN_MP_DIV_2D_C -+#define BN_MP_DIV_3_C -+#define BN_MP_DIV_D_C -+#define BN_MP_DR_IS_MODULUS_C -+#define BN_MP_DR_REDUCE_C -+#define BN_MP_DR_SETUP_C -+#define BN_MP_EXCH_C -+#define BN_MP_EXPT_D_C -+#define BN_MP_EXPTMOD_C -+#define BN_MP_EXPTMOD_FAST_C -+#define BN_MP_EXTEUCLID_C -+#define BN_MP_FREAD_C -+#define BN_MP_FWRITE_C -+#define BN_MP_GCD_C -+#define BN_MP_GET_INT_C -+#define BN_MP_GROW_C -+#define BN_MP_INIT_C -+#define BN_MP_INIT_COPY_C -+#define BN_MP_INIT_MULTI_C -+#define BN_MP_INIT_SET_C -+#define BN_MP_INIT_SET_INT_C -+#define BN_MP_INIT_SIZE_C -+#define BN_MP_INVMOD_C -+#define BN_MP_INVMOD_SLOW_C -+#define BN_MP_IS_SQUARE_C -+#define BN_MP_JACOBI_C -+#define BN_MP_KARATSUBA_MUL_C -+#define BN_MP_KARATSUBA_SQR_C -+#define BN_MP_LCM_C -+#define BN_MP_LSHD_C -+#define BN_MP_MOD_C -+#define BN_MP_MOD_2D_C -+#define BN_MP_MOD_D_C -+#define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C -+#define BN_MP_MONTGOMERY_REDUCE_C -+#define BN_MP_MONTGOMERY_SETUP_C -+#define BN_MP_MUL_C -+#define BN_MP_MUL_2_C -+#define BN_MP_MUL_2D_C -+#define BN_MP_MUL_D_C -+#define BN_MP_MULMOD_C -+#define BN_MP_N_ROOT_C -+#define BN_MP_NEG_C -+#define BN_MP_OR_C -+#define BN_MP_PRIME_FERMAT_C -+#define BN_MP_PRIME_IS_DIVISIBLE_C -+#define BN_MP_PRIME_IS_PRIME_C -+#define BN_MP_PRIME_MILLER_RABIN_C -+#define BN_MP_PRIME_NEXT_PRIME_C -+#define BN_MP_PRIME_RABIN_MILLER_TRIALS_C -+#define BN_MP_PRIME_RANDOM_EX_C -+#define BN_MP_RADIX_SIZE_C -+#define BN_MP_RADIX_SMAP_C -+#define BN_MP_RAND_C -+#define BN_MP_READ_RADIX_C -+#define BN_MP_READ_SIGNED_BIN_C -+#define BN_MP_READ_UNSIGNED_BIN_C -+#define BN_MP_REDUCE_C -+#define BN_MP_REDUCE_2K_C -+#define BN_MP_REDUCE_2K_L_C -+#define BN_MP_REDUCE_2K_SETUP_C -+#define BN_MP_REDUCE_2K_SETUP_L_C -+#define BN_MP_REDUCE_IS_2K_C -+#define BN_MP_REDUCE_IS_2K_L_C -+#define BN_MP_REDUCE_SETUP_C -+#define BN_MP_RSHD_C -+#define BN_MP_SET_C -+#define BN_MP_SET_INT_C -+#define BN_MP_SHRINK_C -+#define BN_MP_SIGNED_BIN_SIZE_C -+#define BN_MP_SQR_C -+#define BN_MP_SQRMOD_C -+#define BN_MP_SQRT_C -+#define BN_MP_SUB_C -+#define BN_MP_SUB_D_C -+#define BN_MP_SUBMOD_C -+#define BN_MP_TO_SIGNED_BIN_C -+#define BN_MP_TO_SIGNED_BIN_N_C -+#define BN_MP_TO_UNSIGNED_BIN_C -+#define BN_MP_TO_UNSIGNED_BIN_N_C -+#define BN_MP_TOOM_MUL_C -+#define BN_MP_TOOM_SQR_C -+#define BN_MP_TORADIX_C -+#define BN_MP_TORADIX_N_C -+#define BN_MP_UNSIGNED_BIN_SIZE_C -+#define BN_MP_XOR_C -+#define BN_MP_ZERO_C -+#define BN_MP_ZERO_MULTI_C -+#define BN_PRIME_TAB_C -+#define BN_REVERSE_C -+#define BN_S_MP_ADD_C -+#define BN_S_MP_EXPTMOD_C -+#define BN_S_MP_MUL_DIGS_C -+#define BN_S_MP_MUL_HIGH_DIGS_C -+#define BN_S_MP_SQR_C -+#define BN_S_MP_SUB_C -+#define BNCORE_C -+#endif -+ -+#if defined(BN_ERROR_C) -+ #define BN_MP_ERROR_TO_STRING_C -+#endif -+ -+#if defined(BN_FAST_MP_INVMOD_C) -+ #define BN_MP_ISEVEN_C -+ #define BN_MP_INIT_MULTI_C -+ #define BN_MP_COPY_C -+ #define BN_MP_MOD_C -+ #define BN_MP_SET_C -+ #define BN_MP_DIV_2_C -+ #define BN_MP_ISODD_C -+ #define BN_MP_SUB_C -+ #define BN_MP_CMP_C -+ #define BN_MP_ISZERO_C -+ #define BN_MP_CMP_D_C -+ #define BN_MP_ADD_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_MULTI_C -+#endif -+ -+#if defined(BN_FAST_MP_MONTGOMERY_REDUCE_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_RSHD_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_S_MP_SUB_C -+#endif -+ -+#if defined(BN_FAST_S_MP_MUL_DIGS_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_FAST_S_MP_MUL_HIGH_DIGS_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_FAST_S_MP_SQR_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_2EXPT_C) -+ #define BN_MP_ZERO_C -+ #define BN_MP_GROW_C -+#endif -+ -+#if defined(BN_MP_ABS_C) -+ #define BN_MP_COPY_C -+#endif -+ -+#if defined(BN_MP_ADD_C) -+ #define BN_S_MP_ADD_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_S_MP_SUB_C -+#endif -+ -+#if defined(BN_MP_ADD_D_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_SUB_D_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_ADDMOD_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_ADD_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_MOD_C -+#endif -+ -+#if defined(BN_MP_AND_C) -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_CLAMP_C) -+#endif -+ -+#if defined(BN_MP_CLEAR_C) -+#endif -+ -+#if defined(BN_MP_CLEAR_MULTI_C) -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_CMP_C) -+ #define BN_MP_CMP_MAG_C -+#endif -+ -+#if defined(BN_MP_CMP_D_C) -+#endif -+ -+#if defined(BN_MP_CMP_MAG_C) -+#endif -+ -+#if defined(BN_MP_CNT_LSB_C) -+ #define BN_MP_ISZERO_C -+#endif -+ -+#if defined(BN_MP_COPY_C) -+ #define BN_MP_GROW_C -+#endif -+ -+#if defined(BN_MP_COUNT_BITS_C) -+#endif -+ -+#if defined(BN_MP_DIV_C) -+ #define BN_MP_ISZERO_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_MP_COPY_C -+ #define BN_MP_ZERO_C -+ #define BN_MP_INIT_MULTI_C -+ #define BN_MP_SET_C -+ #define BN_MP_COUNT_BITS_C -+ #define BN_MP_ABS_C -+ #define BN_MP_MUL_2D_C -+ #define BN_MP_CMP_C -+ #define BN_MP_SUB_C -+ #define BN_MP_ADD_C -+ #define BN_MP_DIV_2D_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_MULTI_C -+ #define BN_MP_INIT_SIZE_C -+ #define BN_MP_INIT_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_LSHD_C -+ #define BN_MP_RSHD_C -+ #define BN_MP_MUL_D_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_DIV_2_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_DIV_2D_C) -+ #define BN_MP_COPY_C -+ #define BN_MP_ZERO_C -+ #define BN_MP_INIT_C -+ #define BN_MP_MOD_2D_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_RSHD_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+#endif -+ -+#if defined(BN_MP_DIV_3_C) -+ #define BN_MP_INIT_SIZE_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_DIV_D_C) -+ #define BN_MP_ISZERO_C -+ #define BN_MP_COPY_C -+ #define BN_MP_DIV_2D_C -+ #define BN_MP_DIV_3_C -+ #define BN_MP_INIT_SIZE_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_DR_IS_MODULUS_C) -+#endif -+ -+#if defined(BN_MP_DR_REDUCE_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_S_MP_SUB_C -+#endif -+ -+#if defined(BN_MP_DR_SETUP_C) -+#endif -+ -+#if defined(BN_MP_EXCH_C) -+#endif -+ -+#if defined(BN_MP_EXPT_D_C) -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_SET_C -+ #define BN_MP_SQR_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_MUL_C -+#endif -+ -+#if defined(BN_MP_EXPTMOD_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_INVMOD_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_ABS_C -+ #define BN_MP_CLEAR_MULTI_C -+ #define BN_MP_REDUCE_IS_2K_L_C -+ #define BN_S_MP_EXPTMOD_C -+ #define BN_MP_DR_IS_MODULUS_C -+ #define BN_MP_REDUCE_IS_2K_C -+ #define BN_MP_ISODD_C -+ #define BN_MP_EXPTMOD_FAST_C -+#endif -+ -+#if defined(BN_MP_EXPTMOD_FAST_C) -+ #define BN_MP_COUNT_BITS_C -+ #define BN_MP_INIT_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_MONTGOMERY_SETUP_C -+ #define BN_FAST_MP_MONTGOMERY_REDUCE_C -+ #define BN_MP_MONTGOMERY_REDUCE_C -+ #define BN_MP_DR_SETUP_C -+ #define BN_MP_DR_REDUCE_C -+ #define BN_MP_REDUCE_2K_SETUP_C -+ #define BN_MP_REDUCE_2K_C -+ #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C -+ #define BN_MP_MULMOD_C -+ #define BN_MP_SET_C -+ #define BN_MP_MOD_C -+ #define BN_MP_COPY_C -+ #define BN_MP_SQR_C -+ #define BN_MP_MUL_C -+ #define BN_MP_EXCH_C -+#endif -+ -+#if defined(BN_MP_EXTEUCLID_C) -+ #define BN_MP_INIT_MULTI_C -+ #define BN_MP_SET_C -+ #define BN_MP_COPY_C -+ #define BN_MP_ISZERO_C -+ #define BN_MP_DIV_C -+ #define BN_MP_MUL_C -+ #define BN_MP_SUB_C -+ #define BN_MP_NEG_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_MULTI_C -+#endif -+ -+#if defined(BN_MP_FREAD_C) -+ #define BN_MP_ZERO_C -+ #define BN_MP_S_RMAP_C -+ #define BN_MP_MUL_D_C -+ #define BN_MP_ADD_D_C -+ #define BN_MP_CMP_D_C -+#endif -+ -+#if defined(BN_MP_FWRITE_C) -+ #define BN_MP_RADIX_SIZE_C -+ #define BN_MP_TORADIX_C -+#endif -+ -+#if defined(BN_MP_GCD_C) -+ #define BN_MP_ISZERO_C -+ #define BN_MP_ABS_C -+ #define BN_MP_ZERO_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_CNT_LSB_C -+ #define BN_MP_DIV_2D_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_MP_EXCH_C -+ #define BN_S_MP_SUB_C -+ #define BN_MP_MUL_2D_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_GET_INT_C) -+#endif -+ -+#if defined(BN_MP_GROW_C) -+#endif -+ -+#if defined(BN_MP_INIT_C) -+#endif -+ -+#if defined(BN_MP_INIT_COPY_C) -+ #define BN_MP_COPY_C -+#endif -+ -+#if defined(BN_MP_INIT_MULTI_C) -+ #define BN_MP_ERR_C -+ #define BN_MP_INIT_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_INIT_SET_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_SET_C -+#endif -+ -+#if defined(BN_MP_INIT_SET_INT_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_SET_INT_C -+#endif -+ -+#if defined(BN_MP_INIT_SIZE_C) -+ #define BN_MP_INIT_C -+#endif -+ -+#if defined(BN_MP_INVMOD_C) -+ #define BN_MP_ISZERO_C -+ #define BN_MP_ISODD_C -+ #define BN_FAST_MP_INVMOD_C -+ #define BN_MP_INVMOD_SLOW_C -+#endif -+ -+#if defined(BN_MP_INVMOD_SLOW_C) -+ #define BN_MP_ISZERO_C -+ #define BN_MP_INIT_MULTI_C -+ #define BN_MP_MOD_C -+ #define BN_MP_COPY_C -+ #define BN_MP_ISEVEN_C -+ #define BN_MP_SET_C -+ #define BN_MP_DIV_2_C -+ #define BN_MP_ISODD_C -+ #define BN_MP_ADD_C -+ #define BN_MP_SUB_C -+ #define BN_MP_CMP_C -+ #define BN_MP_CMP_D_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_MULTI_C -+#endif -+ -+#if defined(BN_MP_IS_SQUARE_C) -+ #define BN_MP_MOD_D_C -+ #define BN_MP_INIT_SET_INT_C -+ #define BN_MP_MOD_C -+ #define BN_MP_GET_INT_C -+ #define BN_MP_SQRT_C -+ #define BN_MP_SQR_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_JACOBI_C) -+ #define BN_MP_CMP_D_C -+ #define BN_MP_ISZERO_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_CNT_LSB_C -+ #define BN_MP_DIV_2D_C -+ #define BN_MP_MOD_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_KARATSUBA_MUL_C) -+ #define BN_MP_MUL_C -+ #define BN_MP_INIT_SIZE_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_SUB_C -+ #define BN_MP_ADD_C -+ #define BN_MP_LSHD_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_KARATSUBA_SQR_C) -+ #define BN_MP_INIT_SIZE_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_SQR_C -+ #define BN_MP_SUB_C -+ #define BN_S_MP_ADD_C -+ #define BN_MP_LSHD_C -+ #define BN_MP_ADD_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_LCM_C) -+ #define BN_MP_INIT_MULTI_C -+ #define BN_MP_GCD_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_MP_DIV_C -+ #define BN_MP_MUL_C -+ #define BN_MP_CLEAR_MULTI_C -+#endif -+ -+#if defined(BN_MP_LSHD_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_RSHD_C -+#endif -+ -+#if defined(BN_MP_MOD_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_DIV_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_ADD_C -+ #define BN_MP_EXCH_C -+#endif -+ -+#if defined(BN_MP_MOD_2D_C) -+ #define BN_MP_ZERO_C -+ #define BN_MP_COPY_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_MOD_D_C) -+ #define BN_MP_DIV_D_C -+#endif -+ -+#if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C) -+ #define BN_MP_COUNT_BITS_C -+ #define BN_MP_2EXPT_C -+ #define BN_MP_SET_C -+ #define BN_MP_MUL_2_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_S_MP_SUB_C -+#endif -+ -+#if defined(BN_MP_MONTGOMERY_REDUCE_C) -+ #define BN_FAST_MP_MONTGOMERY_REDUCE_C -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_RSHD_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_S_MP_SUB_C -+#endif -+ -+#if defined(BN_MP_MONTGOMERY_SETUP_C) -+#endif -+ -+#if defined(BN_MP_MUL_C) -+ #define BN_MP_TOOM_MUL_C -+ #define BN_MP_KARATSUBA_MUL_C -+ #define BN_FAST_S_MP_MUL_DIGS_C -+ #define BN_S_MP_MUL_C -+ #define BN_S_MP_MUL_DIGS_C -+#endif -+ -+#if defined(BN_MP_MUL_2_C) -+ #define BN_MP_GROW_C -+#endif -+ -+#if defined(BN_MP_MUL_2D_C) -+ #define BN_MP_COPY_C -+ #define BN_MP_GROW_C -+ #define BN_MP_LSHD_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_MUL_D_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_MULMOD_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_MUL_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_MOD_C -+#endif -+ -+#if defined(BN_MP_N_ROOT_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_SET_C -+ #define BN_MP_COPY_C -+ #define BN_MP_EXPT_D_C -+ #define BN_MP_MUL_C -+ #define BN_MP_SUB_C -+ #define BN_MP_MUL_D_C -+ #define BN_MP_DIV_C -+ #define BN_MP_CMP_C -+ #define BN_MP_SUB_D_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_NEG_C) -+ #define BN_MP_COPY_C -+ #define BN_MP_ISZERO_C -+#endif -+ -+#if defined(BN_MP_OR_C) -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_PRIME_FERMAT_C) -+ #define BN_MP_CMP_D_C -+ #define BN_MP_INIT_C -+ #define BN_MP_EXPTMOD_C -+ #define BN_MP_CMP_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_PRIME_IS_DIVISIBLE_C) -+ #define BN_MP_MOD_D_C -+#endif -+ -+#if defined(BN_MP_PRIME_IS_PRIME_C) -+ #define BN_MP_CMP_D_C -+ #define BN_MP_PRIME_IS_DIVISIBLE_C -+ #define BN_MP_INIT_C -+ #define BN_MP_SET_C -+ #define BN_MP_PRIME_MILLER_RABIN_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_PRIME_MILLER_RABIN_C) -+ #define BN_MP_CMP_D_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_SUB_D_C -+ #define BN_MP_CNT_LSB_C -+ #define BN_MP_DIV_2D_C -+ #define BN_MP_EXPTMOD_C -+ #define BN_MP_CMP_C -+ #define BN_MP_SQRMOD_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_PRIME_NEXT_PRIME_C) -+ #define BN_MP_CMP_D_C -+ #define BN_MP_SET_C -+ #define BN_MP_SUB_D_C -+ #define BN_MP_ISEVEN_C -+ #define BN_MP_MOD_D_C -+ #define BN_MP_INIT_C -+ #define BN_MP_ADD_D_C -+ #define BN_MP_PRIME_MILLER_RABIN_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C) -+#endif -+ -+#if defined(BN_MP_PRIME_RANDOM_EX_C) -+ #define BN_MP_READ_UNSIGNED_BIN_C -+ #define BN_MP_PRIME_IS_PRIME_C -+ #define BN_MP_SUB_D_C -+ #define BN_MP_DIV_2_C -+ #define BN_MP_MUL_2_C -+ #define BN_MP_ADD_D_C -+#endif -+ -+#if defined(BN_MP_RADIX_SIZE_C) -+ #define BN_MP_COUNT_BITS_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_ISZERO_C -+ #define BN_MP_DIV_D_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_RADIX_SMAP_C) -+ #define BN_MP_S_RMAP_C -+#endif -+ -+#if defined(BN_MP_RAND_C) -+ #define BN_MP_ZERO_C -+ #define BN_MP_ADD_D_C -+ #define BN_MP_LSHD_C -+#endif -+ -+#if defined(BN_MP_READ_RADIX_C) -+ #define BN_MP_ZERO_C -+ #define BN_MP_S_RMAP_C -+ #define BN_MP_RADIX_SMAP_C -+ #define BN_MP_MUL_D_C -+ #define BN_MP_ADD_D_C -+ #define BN_MP_ISZERO_C -+#endif -+ -+#if defined(BN_MP_READ_SIGNED_BIN_C) -+ #define BN_MP_READ_UNSIGNED_BIN_C -+#endif -+ -+#if defined(BN_MP_READ_UNSIGNED_BIN_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_ZERO_C -+ #define BN_MP_MUL_2D_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_REDUCE_C) -+ #define BN_MP_REDUCE_SETUP_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_RSHD_C -+ #define BN_MP_MUL_C -+ #define BN_S_MP_MUL_HIGH_DIGS_C -+ #define BN_FAST_S_MP_MUL_HIGH_DIGS_C -+ #define BN_MP_MOD_2D_C -+ #define BN_S_MP_MUL_DIGS_C -+ #define BN_MP_SUB_C -+ #define BN_MP_CMP_D_C -+ #define BN_MP_SET_C -+ #define BN_MP_LSHD_C -+ #define BN_MP_ADD_C -+ #define BN_MP_CMP_C -+ #define BN_S_MP_SUB_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_REDUCE_2K_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_COUNT_BITS_C -+ #define BN_MP_DIV_2D_C -+ #define BN_MP_MUL_D_C -+ #define BN_S_MP_ADD_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_S_MP_SUB_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_REDUCE_2K_L_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_COUNT_BITS_C -+ #define BN_MP_DIV_2D_C -+ #define BN_MP_MUL_C -+ #define BN_S_MP_ADD_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_S_MP_SUB_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_REDUCE_2K_SETUP_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_COUNT_BITS_C -+ #define BN_MP_2EXPT_C -+ #define BN_MP_CLEAR_C -+ #define BN_S_MP_SUB_C -+#endif -+ -+#if defined(BN_MP_REDUCE_2K_SETUP_L_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_2EXPT_C -+ #define BN_MP_COUNT_BITS_C -+ #define BN_S_MP_SUB_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_REDUCE_IS_2K_C) -+ #define BN_MP_REDUCE_2K_C -+ #define BN_MP_COUNT_BITS_C -+#endif -+ -+#if defined(BN_MP_REDUCE_IS_2K_L_C) -+#endif -+ -+#if defined(BN_MP_REDUCE_SETUP_C) -+ #define BN_MP_2EXPT_C -+ #define BN_MP_DIV_C -+#endif -+ -+#if defined(BN_MP_RSHD_C) -+ #define BN_MP_ZERO_C -+#endif -+ -+#if defined(BN_MP_SET_C) -+ #define BN_MP_ZERO_C -+#endif -+ -+#if defined(BN_MP_SET_INT_C) -+ #define BN_MP_ZERO_C -+ #define BN_MP_MUL_2D_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_SHRINK_C) -+#endif -+ -+#if defined(BN_MP_SIGNED_BIN_SIZE_C) -+ #define BN_MP_UNSIGNED_BIN_SIZE_C -+#endif -+ -+#if defined(BN_MP_SQR_C) -+ #define BN_MP_TOOM_SQR_C -+ #define BN_MP_KARATSUBA_SQR_C -+ #define BN_FAST_S_MP_SQR_C -+ #define BN_S_MP_SQR_C -+#endif -+ -+#if defined(BN_MP_SQRMOD_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_SQR_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_MOD_C -+#endif -+ -+#if defined(BN_MP_SQRT_C) -+ #define BN_MP_N_ROOT_C -+ #define BN_MP_ISZERO_C -+ #define BN_MP_ZERO_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_RSHD_C -+ #define BN_MP_DIV_C -+ #define BN_MP_ADD_C -+ #define BN_MP_DIV_2_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_SUB_C) -+ #define BN_S_MP_ADD_C -+ #define BN_MP_CMP_MAG_C -+ #define BN_S_MP_SUB_C -+#endif -+ -+#if defined(BN_MP_SUB_D_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_ADD_D_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_MP_SUBMOD_C) -+ #define BN_MP_INIT_C -+ #define BN_MP_SUB_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_MOD_C -+#endif -+ -+#if defined(BN_MP_TO_SIGNED_BIN_C) -+ #define BN_MP_TO_UNSIGNED_BIN_C -+#endif -+ -+#if defined(BN_MP_TO_SIGNED_BIN_N_C) -+ #define BN_MP_SIGNED_BIN_SIZE_C -+ #define BN_MP_TO_SIGNED_BIN_C -+#endif -+ -+#if defined(BN_MP_TO_UNSIGNED_BIN_C) -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_ISZERO_C -+ #define BN_MP_DIV_2D_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_TO_UNSIGNED_BIN_N_C) -+ #define BN_MP_UNSIGNED_BIN_SIZE_C -+ #define BN_MP_TO_UNSIGNED_BIN_C -+#endif -+ -+#if defined(BN_MP_TOOM_MUL_C) -+ #define BN_MP_INIT_MULTI_C -+ #define BN_MP_MOD_2D_C -+ #define BN_MP_COPY_C -+ #define BN_MP_RSHD_C -+ #define BN_MP_MUL_C -+ #define BN_MP_MUL_2_C -+ #define BN_MP_ADD_C -+ #define BN_MP_SUB_C -+ #define BN_MP_DIV_2_C -+ #define BN_MP_MUL_2D_C -+ #define BN_MP_MUL_D_C -+ #define BN_MP_DIV_3_C -+ #define BN_MP_LSHD_C -+ #define BN_MP_CLEAR_MULTI_C -+#endif -+ -+#if defined(BN_MP_TOOM_SQR_C) -+ #define BN_MP_INIT_MULTI_C -+ #define BN_MP_MOD_2D_C -+ #define BN_MP_COPY_C -+ #define BN_MP_RSHD_C -+ #define BN_MP_SQR_C -+ #define BN_MP_MUL_2_C -+ #define BN_MP_ADD_C -+ #define BN_MP_SUB_C -+ #define BN_MP_DIV_2_C -+ #define BN_MP_MUL_2D_C -+ #define BN_MP_MUL_D_C -+ #define BN_MP_DIV_3_C -+ #define BN_MP_LSHD_C -+ #define BN_MP_CLEAR_MULTI_C -+#endif -+ -+#if defined(BN_MP_TORADIX_C) -+ #define BN_MP_ISZERO_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_DIV_D_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_S_RMAP_C -+#endif -+ -+#if defined(BN_MP_TORADIX_N_C) -+ #define BN_MP_ISZERO_C -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_DIV_D_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_S_RMAP_C -+#endif -+ -+#if defined(BN_MP_UNSIGNED_BIN_SIZE_C) -+ #define BN_MP_COUNT_BITS_C -+#endif -+ -+#if defined(BN_MP_XOR_C) -+ #define BN_MP_INIT_COPY_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_MP_ZERO_C) -+#endif -+ -+#if defined(BN_PRIME_TAB_C) -+#endif -+ -+#if defined(BN_REVERSE_C) -+#endif -+ -+#if defined(BN_S_MP_ADD_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BN_S_MP_EXPTMOD_C) -+ #define BN_MP_COUNT_BITS_C -+ #define BN_MP_INIT_C -+ #define BN_MP_CLEAR_C -+ #define BN_MP_REDUCE_SETUP_C -+ #define BN_MP_REDUCE_C -+ #define BN_MP_REDUCE_2K_SETUP_L_C -+ #define BN_MP_REDUCE_2K_L_C -+ #define BN_MP_MOD_C -+ #define BN_MP_COPY_C -+ #define BN_MP_SQR_C -+ #define BN_MP_MUL_C -+ #define BN_MP_SET_C -+ #define BN_MP_EXCH_C -+#endif -+ -+#if defined(BN_S_MP_MUL_DIGS_C) -+ #define BN_FAST_S_MP_MUL_DIGS_C -+ #define BN_MP_INIT_SIZE_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_S_MP_MUL_HIGH_DIGS_C) -+ #define BN_FAST_S_MP_MUL_HIGH_DIGS_C -+ #define BN_MP_INIT_SIZE_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_S_MP_SQR_C) -+ #define BN_MP_INIT_SIZE_C -+ #define BN_MP_CLAMP_C -+ #define BN_MP_EXCH_C -+ #define BN_MP_CLEAR_C -+#endif -+ -+#if defined(BN_S_MP_SUB_C) -+ #define BN_MP_GROW_C -+ #define BN_MP_CLAMP_C -+#endif -+ -+#if defined(BNCORE_C) -+#endif -+ -+#ifdef LTM3 -+#define LTM_LAST -+#endif -+#include <tommath_superclass.h> -+#include <tommath_class.h> -+#else -+#define LTM_LAST -+#endif ---- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ lib/hcrypto/libtommath/tommath_superclass.h 29 Oct 2010 01:14:54 -0000 -@@ -0,0 +1,72 @@ -+/* super class file for PK algos */ -+ -+/* default ... include all MPI */ -+#define LTM_ALL -+ -+/* RSA only (does not support DH/DSA/ECC) */ -+/* #define SC_RSA_1 */ -+ -+/* For reference.... On an Athlon64 optimizing for speed... -+ -+ LTM's mpi.o with all functions [striped] is 142KiB in size. -+ -+*/ -+ -+/* Works for RSA only, mpi.o is 68KiB */ -+#ifdef SC_RSA_1 -+ #define BN_MP_SHRINK_C -+ #define BN_MP_LCM_C -+ #define BN_MP_PRIME_RANDOM_EX_C -+ #define BN_MP_INVMOD_C -+ #define BN_MP_GCD_C -+ #define BN_MP_MOD_C -+ #define BN_MP_MULMOD_C -+ #define BN_MP_ADDMOD_C -+ #define BN_MP_EXPTMOD_C -+ #define BN_MP_SET_INT_C -+ #define BN_MP_INIT_MULTI_C -+ #define BN_MP_CLEAR_MULTI_C -+ #define BN_MP_UNSIGNED_BIN_SIZE_C -+ #define BN_MP_TO_UNSIGNED_BIN_C -+ #define BN_MP_MOD_D_C -+ #define BN_MP_PRIME_RABIN_MILLER_TRIALS_C -+ #define BN_REVERSE_C -+ #define BN_PRIME_TAB_C -+ -+ /* other modifiers */ -+ #define BN_MP_DIV_SMALL /* Slower division, not critical */ -+ -+ /* here we are on the last pass so we turn things off. The functions classes are still there -+ * but we remove them specifically from the build. This also invokes tweaks in functions -+ * like removing support for even moduli, etc... -+ */ -+#ifdef LTM_LAST -+ #undef BN_MP_TOOM_MUL_C -+ #undef BN_MP_TOOM_SQR_C -+ #undef BN_MP_KARATSUBA_MUL_C -+ #undef BN_MP_KARATSUBA_SQR_C -+ #undef BN_MP_REDUCE_C -+ #undef BN_MP_REDUCE_SETUP_C -+ #undef BN_MP_DR_IS_MODULUS_C -+ #undef BN_MP_DR_SETUP_C -+ #undef BN_MP_DR_REDUCE_C -+ #undef BN_MP_REDUCE_IS_2K_C -+ #undef BN_MP_REDUCE_2K_SETUP_C -+ #undef BN_MP_REDUCE_2K_C -+ #undef BN_S_MP_EXPTMOD_C -+ #undef BN_MP_DIV_3_C -+ #undef BN_S_MP_MUL_HIGH_DIGS_C -+ #undef BN_FAST_S_MP_MUL_HIGH_DIGS_C -+ #undef BN_FAST_MP_INVMOD_C -+ -+ /* To safely undefine these you have to make sure your RSA key won't exceed the Comba threshold -+ * which is roughly 255 digits [7140 bits for 32-bit machines, 15300 bits for 64-bit machines] -+ * which means roughly speaking you can handle upto 2536-bit RSA keys with these defined without -+ * trouble. -+ */ -+ #undef BN_S_MP_MUL_DIGS_C -+ #undef BN_S_MP_SQR_C -+ #undef BN_MP_MONTGOMERY_REDUCE_C -+#endif -+ -+#endif diff --git a/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath_class.h b/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath_class.h new file mode 100644 index 00000000000..c78f04c1146 --- /dev/null +++ b/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath_class.h @@ -0,0 +1,1001 @@ +$NetBSD: patch-lib_hcrypto_libtommath_tommath_class.h,v 1.1 2011/09/15 13:01:14 hans Exp $ + +--- lib/hcrypto/libtommath/tommath_class.h.orig 2011-09-15 09:31:23.191236417 +0200 ++++ lib/hcrypto/libtommath/tommath_class.h 2011-09-15 09:32:14.747447160 +0200 +@@ -0,0 +1,996 @@ ++#if !(defined(LTM1) && defined(LTM2) && defined(LTM3)) ++#if defined(LTM2) ++#define LTM3 ++#endif ++#if defined(LTM1) ++#define LTM2 ++#endif ++#define LTM1 ++ ++#if defined(LTM_ALL) ++#define BN_ERROR_C ++#define BN_FAST_MP_INVMOD_C ++#define BN_FAST_MP_MONTGOMERY_REDUCE_C ++#define BN_FAST_S_MP_MUL_DIGS_C ++#define BN_FAST_S_MP_MUL_HIGH_DIGS_C ++#define BN_FAST_S_MP_SQR_C ++#define BN_MP_2EXPT_C ++#define BN_MP_ABS_C ++#define BN_MP_ADD_C ++#define BN_MP_ADD_D_C ++#define BN_MP_ADDMOD_C ++#define BN_MP_AND_C ++#define BN_MP_CLAMP_C ++#define BN_MP_CLEAR_C ++#define BN_MP_CLEAR_MULTI_C ++#define BN_MP_CMP_C ++#define BN_MP_CMP_D_C ++#define BN_MP_CMP_MAG_C ++#define BN_MP_CNT_LSB_C ++#define BN_MP_COPY_C ++#define BN_MP_COUNT_BITS_C ++#define BN_MP_DIV_C ++#define BN_MP_DIV_2_C ++#define BN_MP_DIV_2D_C ++#define BN_MP_DIV_3_C ++#define BN_MP_DIV_D_C ++#define BN_MP_DR_IS_MODULUS_C ++#define BN_MP_DR_REDUCE_C ++#define BN_MP_DR_SETUP_C ++#define BN_MP_EXCH_C ++#define BN_MP_EXPT_D_C ++#define BN_MP_EXPTMOD_C ++#define BN_MP_EXPTMOD_FAST_C ++#define BN_MP_EXTEUCLID_C ++#define BN_MP_FREAD_C ++#define BN_MP_FWRITE_C ++#define BN_MP_GCD_C ++#define BN_MP_GET_INT_C ++#define BN_MP_GROW_C ++#define BN_MP_INIT_C ++#define BN_MP_INIT_COPY_C ++#define BN_MP_INIT_MULTI_C ++#define BN_MP_INIT_SET_C ++#define BN_MP_INIT_SET_INT_C ++#define BN_MP_INIT_SIZE_C ++#define BN_MP_INVMOD_C ++#define BN_MP_INVMOD_SLOW_C ++#define BN_MP_IS_SQUARE_C ++#define BN_MP_JACOBI_C ++#define BN_MP_KARATSUBA_MUL_C ++#define BN_MP_KARATSUBA_SQR_C ++#define BN_MP_LCM_C ++#define BN_MP_LSHD_C ++#define BN_MP_MOD_C ++#define BN_MP_MOD_2D_C ++#define BN_MP_MOD_D_C ++#define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C ++#define BN_MP_MONTGOMERY_REDUCE_C ++#define BN_MP_MONTGOMERY_SETUP_C ++#define BN_MP_MUL_C ++#define BN_MP_MUL_2_C ++#define BN_MP_MUL_2D_C ++#define BN_MP_MUL_D_C ++#define BN_MP_MULMOD_C ++#define BN_MP_N_ROOT_C ++#define BN_MP_NEG_C ++#define BN_MP_OR_C ++#define BN_MP_PRIME_FERMAT_C ++#define BN_MP_PRIME_IS_DIVISIBLE_C ++#define BN_MP_PRIME_IS_PRIME_C ++#define BN_MP_PRIME_MILLER_RABIN_C ++#define BN_MP_PRIME_NEXT_PRIME_C ++#define BN_MP_PRIME_RABIN_MILLER_TRIALS_C ++#define BN_MP_PRIME_RANDOM_EX_C ++#define BN_MP_RADIX_SIZE_C ++#define BN_MP_RADIX_SMAP_C ++#define BN_MP_RAND_C ++#define BN_MP_READ_RADIX_C ++#define BN_MP_READ_SIGNED_BIN_C ++#define BN_MP_READ_UNSIGNED_BIN_C ++#define BN_MP_REDUCE_C ++#define BN_MP_REDUCE_2K_C ++#define BN_MP_REDUCE_2K_L_C ++#define BN_MP_REDUCE_2K_SETUP_C ++#define BN_MP_REDUCE_2K_SETUP_L_C ++#define BN_MP_REDUCE_IS_2K_C ++#define BN_MP_REDUCE_IS_2K_L_C ++#define BN_MP_REDUCE_SETUP_C ++#define BN_MP_RSHD_C ++#define BN_MP_SET_C ++#define BN_MP_SET_INT_C ++#define BN_MP_SHRINK_C ++#define BN_MP_SIGNED_BIN_SIZE_C ++#define BN_MP_SQR_C ++#define BN_MP_SQRMOD_C ++#define BN_MP_SQRT_C ++#define BN_MP_SUB_C ++#define BN_MP_SUB_D_C ++#define BN_MP_SUBMOD_C ++#define BN_MP_TO_SIGNED_BIN_C ++#define BN_MP_TO_SIGNED_BIN_N_C ++#define BN_MP_TO_UNSIGNED_BIN_C ++#define BN_MP_TO_UNSIGNED_BIN_N_C ++#define BN_MP_TOOM_MUL_C ++#define BN_MP_TOOM_SQR_C ++#define BN_MP_TORADIX_C ++#define BN_MP_TORADIX_N_C ++#define BN_MP_UNSIGNED_BIN_SIZE_C ++#define BN_MP_XOR_C ++#define BN_MP_ZERO_C ++#define BN_MP_ZERO_MULTI_C ++#define BN_PRIME_TAB_C ++#define BN_REVERSE_C ++#define BN_S_MP_ADD_C ++#define BN_S_MP_EXPTMOD_C ++#define BN_S_MP_MUL_DIGS_C ++#define BN_S_MP_MUL_HIGH_DIGS_C ++#define BN_S_MP_SQR_C ++#define BN_S_MP_SUB_C ++#define BNCORE_C ++#endif ++ ++#if defined(BN_ERROR_C) ++ #define BN_MP_ERROR_TO_STRING_C ++#endif ++ ++#if defined(BN_FAST_MP_INVMOD_C) ++ #define BN_MP_ISEVEN_C ++ #define BN_MP_INIT_MULTI_C ++ #define BN_MP_COPY_C ++ #define BN_MP_MOD_C ++ #define BN_MP_SET_C ++ #define BN_MP_DIV_2_C ++ #define BN_MP_ISODD_C ++ #define BN_MP_SUB_C ++ #define BN_MP_CMP_C ++ #define BN_MP_ISZERO_C ++ #define BN_MP_CMP_D_C ++ #define BN_MP_ADD_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_MULTI_C ++#endif ++ ++#if defined(BN_FAST_MP_MONTGOMERY_REDUCE_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_RSHD_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_S_MP_SUB_C ++#endif ++ ++#if defined(BN_FAST_S_MP_MUL_DIGS_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_FAST_S_MP_MUL_HIGH_DIGS_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_FAST_S_MP_SQR_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_2EXPT_C) ++ #define BN_MP_ZERO_C ++ #define BN_MP_GROW_C ++#endif ++ ++#if defined(BN_MP_ABS_C) ++ #define BN_MP_COPY_C ++#endif ++ ++#if defined(BN_MP_ADD_C) ++ #define BN_S_MP_ADD_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_S_MP_SUB_C ++#endif ++ ++#if defined(BN_MP_ADD_D_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_SUB_D_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_ADDMOD_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_ADD_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_MOD_C ++#endif ++ ++#if defined(BN_MP_AND_C) ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_CLAMP_C) ++#endif ++ ++#if defined(BN_MP_CLEAR_C) ++#endif ++ ++#if defined(BN_MP_CLEAR_MULTI_C) ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_CMP_C) ++ #define BN_MP_CMP_MAG_C ++#endif ++ ++#if defined(BN_MP_CMP_D_C) ++#endif ++ ++#if defined(BN_MP_CMP_MAG_C) ++#endif ++ ++#if defined(BN_MP_CNT_LSB_C) ++ #define BN_MP_ISZERO_C ++#endif ++ ++#if defined(BN_MP_COPY_C) ++ #define BN_MP_GROW_C ++#endif ++ ++#if defined(BN_MP_COUNT_BITS_C) ++#endif ++ ++#if defined(BN_MP_DIV_C) ++ #define BN_MP_ISZERO_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_MP_COPY_C ++ #define BN_MP_ZERO_C ++ #define BN_MP_INIT_MULTI_C ++ #define BN_MP_SET_C ++ #define BN_MP_COUNT_BITS_C ++ #define BN_MP_ABS_C ++ #define BN_MP_MUL_2D_C ++ #define BN_MP_CMP_C ++ #define BN_MP_SUB_C ++ #define BN_MP_ADD_C ++ #define BN_MP_DIV_2D_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_MULTI_C ++ #define BN_MP_INIT_SIZE_C ++ #define BN_MP_INIT_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_LSHD_C ++ #define BN_MP_RSHD_C ++ #define BN_MP_MUL_D_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_DIV_2_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_DIV_2D_C) ++ #define BN_MP_COPY_C ++ #define BN_MP_ZERO_C ++ #define BN_MP_INIT_C ++ #define BN_MP_MOD_2D_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_RSHD_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++#endif ++ ++#if defined(BN_MP_DIV_3_C) ++ #define BN_MP_INIT_SIZE_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_DIV_D_C) ++ #define BN_MP_ISZERO_C ++ #define BN_MP_COPY_C ++ #define BN_MP_DIV_2D_C ++ #define BN_MP_DIV_3_C ++ #define BN_MP_INIT_SIZE_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_DR_IS_MODULUS_C) ++#endif ++ ++#if defined(BN_MP_DR_REDUCE_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_S_MP_SUB_C ++#endif ++ ++#if defined(BN_MP_DR_SETUP_C) ++#endif ++ ++#if defined(BN_MP_EXCH_C) ++#endif ++ ++#if defined(BN_MP_EXPT_D_C) ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_SET_C ++ #define BN_MP_SQR_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_MUL_C ++#endif ++ ++#if defined(BN_MP_EXPTMOD_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_INVMOD_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_ABS_C ++ #define BN_MP_CLEAR_MULTI_C ++ #define BN_MP_REDUCE_IS_2K_L_C ++ #define BN_S_MP_EXPTMOD_C ++ #define BN_MP_DR_IS_MODULUS_C ++ #define BN_MP_REDUCE_IS_2K_C ++ #define BN_MP_ISODD_C ++ #define BN_MP_EXPTMOD_FAST_C ++#endif ++ ++#if defined(BN_MP_EXPTMOD_FAST_C) ++ #define BN_MP_COUNT_BITS_C ++ #define BN_MP_INIT_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_MONTGOMERY_SETUP_C ++ #define BN_FAST_MP_MONTGOMERY_REDUCE_C ++ #define BN_MP_MONTGOMERY_REDUCE_C ++ #define BN_MP_DR_SETUP_C ++ #define BN_MP_DR_REDUCE_C ++ #define BN_MP_REDUCE_2K_SETUP_C ++ #define BN_MP_REDUCE_2K_C ++ #define BN_MP_MONTGOMERY_CALC_NORMALIZATION_C ++ #define BN_MP_MULMOD_C ++ #define BN_MP_SET_C ++ #define BN_MP_MOD_C ++ #define BN_MP_COPY_C ++ #define BN_MP_SQR_C ++ #define BN_MP_MUL_C ++ #define BN_MP_EXCH_C ++#endif ++ ++#if defined(BN_MP_EXTEUCLID_C) ++ #define BN_MP_INIT_MULTI_C ++ #define BN_MP_SET_C ++ #define BN_MP_COPY_C ++ #define BN_MP_ISZERO_C ++ #define BN_MP_DIV_C ++ #define BN_MP_MUL_C ++ #define BN_MP_SUB_C ++ #define BN_MP_NEG_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_MULTI_C ++#endif ++ ++#if defined(BN_MP_FREAD_C) ++ #define BN_MP_ZERO_C ++ #define BN_MP_S_RMAP_C ++ #define BN_MP_MUL_D_C ++ #define BN_MP_ADD_D_C ++ #define BN_MP_CMP_D_C ++#endif ++ ++#if defined(BN_MP_FWRITE_C) ++ #define BN_MP_RADIX_SIZE_C ++ #define BN_MP_TORADIX_C ++#endif ++ ++#if defined(BN_MP_GCD_C) ++ #define BN_MP_ISZERO_C ++ #define BN_MP_ABS_C ++ #define BN_MP_ZERO_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_CNT_LSB_C ++ #define BN_MP_DIV_2D_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_MP_EXCH_C ++ #define BN_S_MP_SUB_C ++ #define BN_MP_MUL_2D_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_GET_INT_C) ++#endif ++ ++#if defined(BN_MP_GROW_C) ++#endif ++ ++#if defined(BN_MP_INIT_C) ++#endif ++ ++#if defined(BN_MP_INIT_COPY_C) ++ #define BN_MP_COPY_C ++#endif ++ ++#if defined(BN_MP_INIT_MULTI_C) ++ #define BN_MP_ERR_C ++ #define BN_MP_INIT_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_INIT_SET_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_SET_C ++#endif ++ ++#if defined(BN_MP_INIT_SET_INT_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_SET_INT_C ++#endif ++ ++#if defined(BN_MP_INIT_SIZE_C) ++ #define BN_MP_INIT_C ++#endif ++ ++#if defined(BN_MP_INVMOD_C) ++ #define BN_MP_ISZERO_C ++ #define BN_MP_ISODD_C ++ #define BN_FAST_MP_INVMOD_C ++ #define BN_MP_INVMOD_SLOW_C ++#endif ++ ++#if defined(BN_MP_INVMOD_SLOW_C) ++ #define BN_MP_ISZERO_C ++ #define BN_MP_INIT_MULTI_C ++ #define BN_MP_MOD_C ++ #define BN_MP_COPY_C ++ #define BN_MP_ISEVEN_C ++ #define BN_MP_SET_C ++ #define BN_MP_DIV_2_C ++ #define BN_MP_ISODD_C ++ #define BN_MP_ADD_C ++ #define BN_MP_SUB_C ++ #define BN_MP_CMP_C ++ #define BN_MP_CMP_D_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_MULTI_C ++#endif ++ ++#if defined(BN_MP_IS_SQUARE_C) ++ #define BN_MP_MOD_D_C ++ #define BN_MP_INIT_SET_INT_C ++ #define BN_MP_MOD_C ++ #define BN_MP_GET_INT_C ++ #define BN_MP_SQRT_C ++ #define BN_MP_SQR_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_JACOBI_C) ++ #define BN_MP_CMP_D_C ++ #define BN_MP_ISZERO_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_CNT_LSB_C ++ #define BN_MP_DIV_2D_C ++ #define BN_MP_MOD_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_KARATSUBA_MUL_C) ++ #define BN_MP_MUL_C ++ #define BN_MP_INIT_SIZE_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_SUB_C ++ #define BN_MP_ADD_C ++ #define BN_MP_LSHD_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_KARATSUBA_SQR_C) ++ #define BN_MP_INIT_SIZE_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_SQR_C ++ #define BN_MP_SUB_C ++ #define BN_S_MP_ADD_C ++ #define BN_MP_LSHD_C ++ #define BN_MP_ADD_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_LCM_C) ++ #define BN_MP_INIT_MULTI_C ++ #define BN_MP_GCD_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_MP_DIV_C ++ #define BN_MP_MUL_C ++ #define BN_MP_CLEAR_MULTI_C ++#endif ++ ++#if defined(BN_MP_LSHD_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_RSHD_C ++#endif ++ ++#if defined(BN_MP_MOD_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_DIV_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_ADD_C ++ #define BN_MP_EXCH_C ++#endif ++ ++#if defined(BN_MP_MOD_2D_C) ++ #define BN_MP_ZERO_C ++ #define BN_MP_COPY_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_MOD_D_C) ++ #define BN_MP_DIV_D_C ++#endif ++ ++#if defined(BN_MP_MONTGOMERY_CALC_NORMALIZATION_C) ++ #define BN_MP_COUNT_BITS_C ++ #define BN_MP_2EXPT_C ++ #define BN_MP_SET_C ++ #define BN_MP_MUL_2_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_S_MP_SUB_C ++#endif ++ ++#if defined(BN_MP_MONTGOMERY_REDUCE_C) ++ #define BN_FAST_MP_MONTGOMERY_REDUCE_C ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_RSHD_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_S_MP_SUB_C ++#endif ++ ++#if defined(BN_MP_MONTGOMERY_SETUP_C) ++#endif ++ ++#if defined(BN_MP_MUL_C) ++ #define BN_MP_TOOM_MUL_C ++ #define BN_MP_KARATSUBA_MUL_C ++ #define BN_FAST_S_MP_MUL_DIGS_C ++ #define BN_S_MP_MUL_C ++ #define BN_S_MP_MUL_DIGS_C ++#endif ++ ++#if defined(BN_MP_MUL_2_C) ++ #define BN_MP_GROW_C ++#endif ++ ++#if defined(BN_MP_MUL_2D_C) ++ #define BN_MP_COPY_C ++ #define BN_MP_GROW_C ++ #define BN_MP_LSHD_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_MUL_D_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_MULMOD_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_MUL_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_MOD_C ++#endif ++ ++#if defined(BN_MP_N_ROOT_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_SET_C ++ #define BN_MP_COPY_C ++ #define BN_MP_EXPT_D_C ++ #define BN_MP_MUL_C ++ #define BN_MP_SUB_C ++ #define BN_MP_MUL_D_C ++ #define BN_MP_DIV_C ++ #define BN_MP_CMP_C ++ #define BN_MP_SUB_D_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_NEG_C) ++ #define BN_MP_COPY_C ++ #define BN_MP_ISZERO_C ++#endif ++ ++#if defined(BN_MP_OR_C) ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_PRIME_FERMAT_C) ++ #define BN_MP_CMP_D_C ++ #define BN_MP_INIT_C ++ #define BN_MP_EXPTMOD_C ++ #define BN_MP_CMP_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_PRIME_IS_DIVISIBLE_C) ++ #define BN_MP_MOD_D_C ++#endif ++ ++#if defined(BN_MP_PRIME_IS_PRIME_C) ++ #define BN_MP_CMP_D_C ++ #define BN_MP_PRIME_IS_DIVISIBLE_C ++ #define BN_MP_INIT_C ++ #define BN_MP_SET_C ++ #define BN_MP_PRIME_MILLER_RABIN_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_PRIME_MILLER_RABIN_C) ++ #define BN_MP_CMP_D_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_SUB_D_C ++ #define BN_MP_CNT_LSB_C ++ #define BN_MP_DIV_2D_C ++ #define BN_MP_EXPTMOD_C ++ #define BN_MP_CMP_C ++ #define BN_MP_SQRMOD_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_PRIME_NEXT_PRIME_C) ++ #define BN_MP_CMP_D_C ++ #define BN_MP_SET_C ++ #define BN_MP_SUB_D_C ++ #define BN_MP_ISEVEN_C ++ #define BN_MP_MOD_D_C ++ #define BN_MP_INIT_C ++ #define BN_MP_ADD_D_C ++ #define BN_MP_PRIME_MILLER_RABIN_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_PRIME_RABIN_MILLER_TRIALS_C) ++#endif ++ ++#if defined(BN_MP_PRIME_RANDOM_EX_C) ++ #define BN_MP_READ_UNSIGNED_BIN_C ++ #define BN_MP_PRIME_IS_PRIME_C ++ #define BN_MP_SUB_D_C ++ #define BN_MP_DIV_2_C ++ #define BN_MP_MUL_2_C ++ #define BN_MP_ADD_D_C ++#endif ++ ++#if defined(BN_MP_RADIX_SIZE_C) ++ #define BN_MP_COUNT_BITS_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_ISZERO_C ++ #define BN_MP_DIV_D_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_RADIX_SMAP_C) ++ #define BN_MP_S_RMAP_C ++#endif ++ ++#if defined(BN_MP_RAND_C) ++ #define BN_MP_ZERO_C ++ #define BN_MP_ADD_D_C ++ #define BN_MP_LSHD_C ++#endif ++ ++#if defined(BN_MP_READ_RADIX_C) ++ #define BN_MP_ZERO_C ++ #define BN_MP_S_RMAP_C ++ #define BN_MP_RADIX_SMAP_C ++ #define BN_MP_MUL_D_C ++ #define BN_MP_ADD_D_C ++ #define BN_MP_ISZERO_C ++#endif ++ ++#if defined(BN_MP_READ_SIGNED_BIN_C) ++ #define BN_MP_READ_UNSIGNED_BIN_C ++#endif ++ ++#if defined(BN_MP_READ_UNSIGNED_BIN_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_ZERO_C ++ #define BN_MP_MUL_2D_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_REDUCE_C) ++ #define BN_MP_REDUCE_SETUP_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_RSHD_C ++ #define BN_MP_MUL_C ++ #define BN_S_MP_MUL_HIGH_DIGS_C ++ #define BN_FAST_S_MP_MUL_HIGH_DIGS_C ++ #define BN_MP_MOD_2D_C ++ #define BN_S_MP_MUL_DIGS_C ++ #define BN_MP_SUB_C ++ #define BN_MP_CMP_D_C ++ #define BN_MP_SET_C ++ #define BN_MP_LSHD_C ++ #define BN_MP_ADD_C ++ #define BN_MP_CMP_C ++ #define BN_S_MP_SUB_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_REDUCE_2K_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_COUNT_BITS_C ++ #define BN_MP_DIV_2D_C ++ #define BN_MP_MUL_D_C ++ #define BN_S_MP_ADD_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_S_MP_SUB_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_REDUCE_2K_L_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_COUNT_BITS_C ++ #define BN_MP_DIV_2D_C ++ #define BN_MP_MUL_C ++ #define BN_S_MP_ADD_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_S_MP_SUB_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_REDUCE_2K_SETUP_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_COUNT_BITS_C ++ #define BN_MP_2EXPT_C ++ #define BN_MP_CLEAR_C ++ #define BN_S_MP_SUB_C ++#endif ++ ++#if defined(BN_MP_REDUCE_2K_SETUP_L_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_2EXPT_C ++ #define BN_MP_COUNT_BITS_C ++ #define BN_S_MP_SUB_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_REDUCE_IS_2K_C) ++ #define BN_MP_REDUCE_2K_C ++ #define BN_MP_COUNT_BITS_C ++#endif ++ ++#if defined(BN_MP_REDUCE_IS_2K_L_C) ++#endif ++ ++#if defined(BN_MP_REDUCE_SETUP_C) ++ #define BN_MP_2EXPT_C ++ #define BN_MP_DIV_C ++#endif ++ ++#if defined(BN_MP_RSHD_C) ++ #define BN_MP_ZERO_C ++#endif ++ ++#if defined(BN_MP_SET_C) ++ #define BN_MP_ZERO_C ++#endif ++ ++#if defined(BN_MP_SET_INT_C) ++ #define BN_MP_ZERO_C ++ #define BN_MP_MUL_2D_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_SHRINK_C) ++#endif ++ ++#if defined(BN_MP_SIGNED_BIN_SIZE_C) ++ #define BN_MP_UNSIGNED_BIN_SIZE_C ++#endif ++ ++#if defined(BN_MP_SQR_C) ++ #define BN_MP_TOOM_SQR_C ++ #define BN_MP_KARATSUBA_SQR_C ++ #define BN_FAST_S_MP_SQR_C ++ #define BN_S_MP_SQR_C ++#endif ++ ++#if defined(BN_MP_SQRMOD_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_SQR_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_MOD_C ++#endif ++ ++#if defined(BN_MP_SQRT_C) ++ #define BN_MP_N_ROOT_C ++ #define BN_MP_ISZERO_C ++ #define BN_MP_ZERO_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_RSHD_C ++ #define BN_MP_DIV_C ++ #define BN_MP_ADD_C ++ #define BN_MP_DIV_2_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_SUB_C) ++ #define BN_S_MP_ADD_C ++ #define BN_MP_CMP_MAG_C ++ #define BN_S_MP_SUB_C ++#endif ++ ++#if defined(BN_MP_SUB_D_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_ADD_D_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_MP_SUBMOD_C) ++ #define BN_MP_INIT_C ++ #define BN_MP_SUB_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_MOD_C ++#endif ++ ++#if defined(BN_MP_TO_SIGNED_BIN_C) ++ #define BN_MP_TO_UNSIGNED_BIN_C ++#endif ++ ++#if defined(BN_MP_TO_SIGNED_BIN_N_C) ++ #define BN_MP_SIGNED_BIN_SIZE_C ++ #define BN_MP_TO_SIGNED_BIN_C ++#endif ++ ++#if defined(BN_MP_TO_UNSIGNED_BIN_C) ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_ISZERO_C ++ #define BN_MP_DIV_2D_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_TO_UNSIGNED_BIN_N_C) ++ #define BN_MP_UNSIGNED_BIN_SIZE_C ++ #define BN_MP_TO_UNSIGNED_BIN_C ++#endif ++ ++#if defined(BN_MP_TOOM_MUL_C) ++ #define BN_MP_INIT_MULTI_C ++ #define BN_MP_MOD_2D_C ++ #define BN_MP_COPY_C ++ #define BN_MP_RSHD_C ++ #define BN_MP_MUL_C ++ #define BN_MP_MUL_2_C ++ #define BN_MP_ADD_C ++ #define BN_MP_SUB_C ++ #define BN_MP_DIV_2_C ++ #define BN_MP_MUL_2D_C ++ #define BN_MP_MUL_D_C ++ #define BN_MP_DIV_3_C ++ #define BN_MP_LSHD_C ++ #define BN_MP_CLEAR_MULTI_C ++#endif ++ ++#if defined(BN_MP_TOOM_SQR_C) ++ #define BN_MP_INIT_MULTI_C ++ #define BN_MP_MOD_2D_C ++ #define BN_MP_COPY_C ++ #define BN_MP_RSHD_C ++ #define BN_MP_SQR_C ++ #define BN_MP_MUL_2_C ++ #define BN_MP_ADD_C ++ #define BN_MP_SUB_C ++ #define BN_MP_DIV_2_C ++ #define BN_MP_MUL_2D_C ++ #define BN_MP_MUL_D_C ++ #define BN_MP_DIV_3_C ++ #define BN_MP_LSHD_C ++ #define BN_MP_CLEAR_MULTI_C ++#endif ++ ++#if defined(BN_MP_TORADIX_C) ++ #define BN_MP_ISZERO_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_DIV_D_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_S_RMAP_C ++#endif ++ ++#if defined(BN_MP_TORADIX_N_C) ++ #define BN_MP_ISZERO_C ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_DIV_D_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_S_RMAP_C ++#endif ++ ++#if defined(BN_MP_UNSIGNED_BIN_SIZE_C) ++ #define BN_MP_COUNT_BITS_C ++#endif ++ ++#if defined(BN_MP_XOR_C) ++ #define BN_MP_INIT_COPY_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_MP_ZERO_C) ++#endif ++ ++#if defined(BN_PRIME_TAB_C) ++#endif ++ ++#if defined(BN_REVERSE_C) ++#endif ++ ++#if defined(BN_S_MP_ADD_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BN_S_MP_EXPTMOD_C) ++ #define BN_MP_COUNT_BITS_C ++ #define BN_MP_INIT_C ++ #define BN_MP_CLEAR_C ++ #define BN_MP_REDUCE_SETUP_C ++ #define BN_MP_REDUCE_C ++ #define BN_MP_REDUCE_2K_SETUP_L_C ++ #define BN_MP_REDUCE_2K_L_C ++ #define BN_MP_MOD_C ++ #define BN_MP_COPY_C ++ #define BN_MP_SQR_C ++ #define BN_MP_MUL_C ++ #define BN_MP_SET_C ++ #define BN_MP_EXCH_C ++#endif ++ ++#if defined(BN_S_MP_MUL_DIGS_C) ++ #define BN_FAST_S_MP_MUL_DIGS_C ++ #define BN_MP_INIT_SIZE_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_S_MP_MUL_HIGH_DIGS_C) ++ #define BN_FAST_S_MP_MUL_HIGH_DIGS_C ++ #define BN_MP_INIT_SIZE_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_S_MP_SQR_C) ++ #define BN_MP_INIT_SIZE_C ++ #define BN_MP_CLAMP_C ++ #define BN_MP_EXCH_C ++ #define BN_MP_CLEAR_C ++#endif ++ ++#if defined(BN_S_MP_SUB_C) ++ #define BN_MP_GROW_C ++ #define BN_MP_CLAMP_C ++#endif ++ ++#if defined(BNCORE_C) ++#endif ++ ++#ifdef LTM3 ++#define LTM_LAST ++#endif ++#include <tommath_superclass.h> ++#include <tommath_class.h> ++#else ++#define LTM_LAST ++#endif diff --git a/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath_superclass.h b/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath_superclass.h new file mode 100644 index 00000000000..c90792e6719 --- /dev/null +++ b/security/heimdal/patches/patch-lib_hcrypto_libtommath_tommath_superclass.h @@ -0,0 +1,77 @@ +$NetBSD: patch-lib_hcrypto_libtommath_tommath_superclass.h,v 1.1 2011/09/15 13:01:14 hans Exp $ + +--- lib/hcrypto/libtommath/tommath_superclass.h.orig 2011-09-15 09:31:23.191396242 +0200 ++++ lib/hcrypto/libtommath/tommath_superclass.h 2011-09-15 09:32:22.227978670 +0200 +@@ -0,0 +1,72 @@ ++/* super class file for PK algos */ ++ ++/* default ... include all MPI */ ++#define LTM_ALL ++ ++/* RSA only (does not support DH/DSA/ECC) */ ++/* #define SC_RSA_1 */ ++ ++/* For reference.... On an Athlon64 optimizing for speed... ++ ++ LTM's mpi.o with all functions [striped] is 142KiB in size. ++ ++*/ ++ ++/* Works for RSA only, mpi.o is 68KiB */ ++#ifdef SC_RSA_1 ++ #define BN_MP_SHRINK_C ++ #define BN_MP_LCM_C ++ #define BN_MP_PRIME_RANDOM_EX_C ++ #define BN_MP_INVMOD_C ++ #define BN_MP_GCD_C ++ #define BN_MP_MOD_C ++ #define BN_MP_MULMOD_C ++ #define BN_MP_ADDMOD_C ++ #define BN_MP_EXPTMOD_C ++ #define BN_MP_SET_INT_C ++ #define BN_MP_INIT_MULTI_C ++ #define BN_MP_CLEAR_MULTI_C ++ #define BN_MP_UNSIGNED_BIN_SIZE_C ++ #define BN_MP_TO_UNSIGNED_BIN_C ++ #define BN_MP_MOD_D_C ++ #define BN_MP_PRIME_RABIN_MILLER_TRIALS_C ++ #define BN_REVERSE_C ++ #define BN_PRIME_TAB_C ++ ++ /* other modifiers */ ++ #define BN_MP_DIV_SMALL /* Slower division, not critical */ ++ ++ /* here we are on the last pass so we turn things off. The functions classes are still there ++ * but we remove them specifically from the build. This also invokes tweaks in functions ++ * like removing support for even moduli, etc... ++ */ ++#ifdef LTM_LAST ++ #undef BN_MP_TOOM_MUL_C ++ #undef BN_MP_TOOM_SQR_C ++ #undef BN_MP_KARATSUBA_MUL_C ++ #undef BN_MP_KARATSUBA_SQR_C ++ #undef BN_MP_REDUCE_C ++ #undef BN_MP_REDUCE_SETUP_C ++ #undef BN_MP_DR_IS_MODULUS_C ++ #undef BN_MP_DR_SETUP_C ++ #undef BN_MP_DR_REDUCE_C ++ #undef BN_MP_REDUCE_IS_2K_C ++ #undef BN_MP_REDUCE_2K_SETUP_C ++ #undef BN_MP_REDUCE_2K_C ++ #undef BN_S_MP_EXPTMOD_C ++ #undef BN_MP_DIV_3_C ++ #undef BN_S_MP_MUL_HIGH_DIGS_C ++ #undef BN_FAST_S_MP_MUL_HIGH_DIGS_C ++ #undef BN_FAST_MP_INVMOD_C ++ ++ /* To safely undefine these you have to make sure your RSA key won't exceed the Comba threshold ++ * which is roughly 255 digits [7140 bits for 32-bit machines, 15300 bits for 64-bit machines] ++ * which means roughly speaking you can handle upto 2536-bit RSA keys with these defined without ++ * trouble. ++ */ ++ #undef BN_S_MP_MUL_DIGS_C ++ #undef BN_S_MP_SQR_C ++ #undef BN_MP_MONTGOMERY_REDUCE_C ++#endif ++ ++#endif |