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