1 #include <openssl/opensslfeatures.h> 2 /* crypto/opensslconf.h.in */ 3 4 #if defined(HEADER_CRYPTO_LOCAL_H) && !defined(OPENSSLDIR) 5 #define OPENSSLDIR "/etc/ssl" 6 #endif 7 8 #undef OPENSSL_EXPORT_VAR_AS_FUNCTION 9 10 #if defined(HEADER_IDEA_H) && !defined(IDEA_INT) 11 #define IDEA_INT unsigned int 12 #endif 13 14 #if defined(HEADER_MD2_H) && !defined(MD2_INT) 15 #define MD2_INT unsigned int 16 #endif 17 18 #if defined(HEADER_RC2_H) && !defined(RC2_INT) 19 /* I need to put in a mod for the alpha - eay */ 20 #define RC2_INT unsigned int 21 #endif 22 23 #if defined(HEADER_RC4_H) 24 #if !defined(RC4_INT) 25 /* using int types make the structure larger but make the code faster 26 * on most boxes I have tested - up to %20 faster. */ 27 /* 28 * I don't know what does "most" mean, but declaring "int" is a must on: 29 * - Intel P6 because partial register stalls are very expensive; 30 * - elder Alpha because it lacks byte load/store instructions; 31 */ 32 #define RC4_INT unsigned int 33 #endif 34 #if !defined(RC4_CHUNK) 35 /* 36 * This enables code handling data aligned at natural CPU word 37 * boundary. See crypto/rc4/rc4_enc.c for further details. 38 */ 39 #undef RC4_CHUNK 40 #endif 41 #endif 42 43 #if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) 44 /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a 45 * %20 speed up (longs are 8 bytes, int's are 4). */ 46 #ifndef DES_LONG 47 #define DES_LONG unsigned int 48 #endif 49 #endif 50 51 #if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) 52 #define CONFIG_HEADER_BN_H 53 #define BN_LLONG 54 55 /* Should we define BN_DIV2W here? */ 56 57 /* Only one for the following should be defined */ 58 /* The prime number generation stuff may not work when 59 * EIGHT_BIT but I don't care since I've only used this mode 60 * for debugging the bignum libraries */ 61 #undef SIXTY_FOUR_BIT_LONG 62 #undef SIXTY_FOUR_BIT 63 #define THIRTY_TWO_BIT 64 #undef SIXTEEN_BIT 65 #undef EIGHT_BIT 66 #endif 67 68 #if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) 69 #define CONFIG_HEADER_RC4_LOCL_H 70 /* if this is defined data[i] is used instead of *data, this is a %20 71 * speedup on x86 */ 72 #define RC4_INDEX 73 #endif 74 75 #if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) 76 #define CONFIG_HEADER_BF_LOCL_H 77 #undef BF_PTR 78 #endif /* HEADER_BF_LOCL_H */ 79 80 #if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) 81 #define CONFIG_HEADER_DES_LOCL_H 82 #ifndef DES_DEFAULT_OPTIONS 83 /* the following is tweaked from a config script, that is why it is a 84 * protected undef/define */ 85 #ifndef DES_PTR 86 #undef DES_PTR 87 #endif 88 89 /* This helps C compiler generate the correct code for multiple functional 90 * units. It reduces register dependencies at the expense of 2 more 91 * registers */ 92 #ifndef DES_RISC1 93 #undef DES_RISC1 94 #endif 95 96 #ifndef DES_RISC2 97 #undef DES_RISC2 98 #endif 99 100 #if defined(DES_RISC1) && defined(DES_RISC2) 101 YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! 102 #endif 103 104 /* Unroll the inner loop, this sometimes helps, sometimes hinders. 105 * Very much CPU dependent */ 106 #ifndef DES_UNROLL 107 #define DES_UNROLL 108 #endif 109 110 /* These default values were supplied by 111 * Peter Gutman <pgut001@cs.auckland.ac.nz> 112 * They are only used if nothing else has been defined */ 113 #if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) 114 /* Special defines which change the way the code is built depending on the 115 CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find 116 even newer MIPS CPU's, but at the moment one size fits all for 117 optimization options. Older Sparc's work better with only UNROLL, but 118 there's no way to tell at compile time what it is you're running on */ 119 120 #if defined( sun ) /* Newer Sparc's */ 121 # define DES_PTR 122 # define DES_RISC1 123 # define DES_UNROLL 124 #elif defined( __ultrix ) /* Older MIPS */ 125 # define DES_PTR 126 # define DES_RISC2 127 # define DES_UNROLL 128 #elif defined( __osf1__ ) /* Alpha */ 129 # define DES_PTR 130 # define DES_RISC2 131 #elif defined ( _AIX ) /* RS6000 */ 132 /* Unknown */ 133 #elif defined( __hpux ) /* HP-PA */ 134 /* Unknown */ 135 #elif defined( __aux ) /* 68K */ 136 /* Unknown */ 137 #elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ 138 # define DES_UNROLL 139 #elif defined( __sgi ) /* Newer MIPS */ 140 # define DES_PTR 141 # define DES_RISC2 142 # define DES_UNROLL 143 #elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ 144 # define DES_PTR 145 # define DES_RISC1 146 # define DES_UNROLL 147 #endif /* Systems-specific speed defines */ 148 #endif 149 150 #endif /* DES_DEFAULT_OPTIONS */ 151 #endif /* HEADER_DES_LOCL_H */ 152