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