opensslconf-64.h revision 172e83c468abf3056f83091c83b1d506af8fe973
1400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* opensslconf.h */
2400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* WARNING: Generated automatically from opensslconf.h.in by Configure. */
3400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
4400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* OpenSSL was configured with the following options: */
5400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_DOING_MAKEDEPEND
6400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
7400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
8400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_CAMELLIA
9400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_CAMELLIA
10400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
11400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_CAPIENG
12400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_CAPIENG
13400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
14400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_CAST
15400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_CAST
16400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
17400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_DTLS1
18400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_DTLS1
19400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
20400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
21400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_EC_NISTP_64_GCC_128
22400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
23400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_GMP
24400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_GMP
25400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
26400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_GOST
27400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_GOST
28400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
29400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_HEARTBEATS
30400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_HEARTBEATS
31400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
32400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_IDEA
33400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_IDEA
34400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
35400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_JPAKE
36400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_JPAKE
37400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
38400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_KRB5
39400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_KRB5
40400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
41400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_MD2
42400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_MD2
43400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
44400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_MDC2
45400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_MDC2
46400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
47400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_RC5
48400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_RC5
49400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
50400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_RDRAND
51400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_RDRAND
52400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
53400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_RFC3779
54400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_RFC3779
55400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
56172e83c468abf3056f83091c83b1d506af8fe973Kenny Root#ifndef OPENSSL_NO_RIPEMD
57172e83c468abf3056f83091c83b1d506af8fe973Kenny Root# define OPENSSL_NO_RIPEMD
58172e83c468abf3056f83091c83b1d506af8fe973Kenny Root#endif
59400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_RSAX
60400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_RSAX
61400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
62400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_SCTP
63400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_SCTP
64400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
65400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_SEED
66400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_SEED
67400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
68400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_SHA0
69400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_SHA0
70400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
71400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_STATIC_ENGINE
72400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_STATIC_ENGINE
73400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
74400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_STORE
75400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_STORE
76400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
77400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_WHIRLPOOL
78400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_WHIRLPOOL
79400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
80400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
81400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif /* OPENSSL_DOING_MAKEDEPEND */
82400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
83400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_THREADS
84400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_THREADS
85400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
86400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef OPENSSL_NO_DYNAMIC_ENGINE
87400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# define OPENSSL_NO_DYNAMIC_ENGINE
88400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
89400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
90400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* The OPENSSL_NO_* macros are also defined as NO_* if the application
91400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov   asks for it.  This is a transient feature that is provided for those
92400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov   who haven't had the time to do the appropriate changes in their
93400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov   applications.  */
94400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifdef OPENSSL_ALGORITHM_DEFINES
95400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_CAMELLIA) && !defined(NO_CAMELLIA)
96400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_CAMELLIA
97400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
98400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_CAPIENG) && !defined(NO_CAPIENG)
99400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_CAPIENG
100400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
101400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_CAST) && !defined(NO_CAST)
102400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_CAST
103400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
104400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_DTLS1) && !defined(NO_DTLS1)
105400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_DTLS1
106400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
107400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128)
108400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_EC_NISTP_64_GCC_128
109400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
110400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP)
111400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_GMP
112400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
113400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_GOST) && !defined(NO_GOST)
114400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_GOST
115400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
116400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_HEARTBEATS) && !defined(NO_HEARTBEATS)
117400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_HEARTBEATS
118400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
119400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_IDEA) && !defined(NO_IDEA)
120400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_IDEA
121400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
122400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE)
123400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_JPAKE
124400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
125400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
126400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_KRB5
127400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
128400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2)
129400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_MD2
130400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
131400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_MDC2) && !defined(NO_MDC2)
132400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_MDC2
133400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
134400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_RC5) && !defined(NO_RC5)
135400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_RC5
136400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
137400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_RDRAND) && !defined(NO_RDRAND)
138400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_RDRAND
139400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
140400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_RFC3779) && !defined(NO_RFC3779)
141400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_RFC3779
142400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
143172e83c468abf3056f83091c83b1d506af8fe973Kenny Root# if defined(OPENSSL_NO_RIPEMD) && !defined(NO_RIPEMD)
144172e83c468abf3056f83091c83b1d506af8fe973Kenny Root#  define NO_RIPEMD
145172e83c468abf3056f83091c83b1d506af8fe973Kenny Root# endif
146400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_RSAX) && !defined(NO_RSAX)
147400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_RSAX
148400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
149400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP)
150400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_SCTP
151400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
152400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_SEED) && !defined(NO_SEED)
153400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_SEED
154400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
155400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_SHA0) && !defined(NO_SHA0)
156400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_SHA0
157400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
158400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_STATIC_ENGINE) && !defined(NO_STATIC_ENGINE)
159400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_STATIC_ENGINE
160400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
161400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE)
162400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_STORE
163400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
164400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# if defined(OPENSSL_NO_WHIRLPOOL) && !defined(NO_WHIRLPOOL)
165400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define NO_WHIRLPOOL
166400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov# endif
167400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
168400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
169400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* crypto/opensslconf.h.in */
170400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
171400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* Generate 80386 code? */
172400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef I386_ONLY
173400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
174400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
175400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
176400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define ENGINESDIR "/usr/local/ssl/lib/engines"
177400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define OPENSSLDIR "/usr/local/ssl"
178400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
179400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
180400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
181400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef OPENSSL_UNISTD
182400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define OPENSSL_UNISTD <unistd.h>
183400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
184400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
185400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
186400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
187400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define IDEA_INT unsigned int
188400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
189400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
190400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_MD2_H) && !defined(MD2_INT)
191400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define MD2_INT unsigned int
192400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
193400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
194400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_RC2_H) && !defined(RC2_INT)
195400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* I need to put in a mod for the alpha - eay */
196400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define RC2_INT unsigned int
197400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
198400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
199400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_RC4_H)
200400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if !defined(RC4_INT)
201400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* using int types make the structure larger but make the code faster
202400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * on most boxes I have tested - up to %20 faster. */
203400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/*
204400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * I don't know what does "most" mean, but declaring "int" is a must on:
205400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * - Intel P6 because partial register stalls are very expensive;
206400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * - elder Alpha because it lacks byte load/store instructions;
207400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov */
208400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define RC4_INT unsigned char
209400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
210400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if !defined(RC4_CHUNK)
211400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/*
212400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * This enables code handling data aligned at natural CPU word
213400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * boundary. See crypto/rc4/rc4_enc.c for further details.
214400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov */
215400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define RC4_CHUNK unsigned long
216400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
217400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
218400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
219400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
220400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
221400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * %20 speed up (longs are 8 bytes, int's are 4). */
222400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef DES_LONG
223400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define DES_LONG unsigned int
224400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
225400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
226400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
227400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
228400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define CONFIG_HEADER_BN_H
229400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef BN_LLONG
230400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
231400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* Should we define BN_DIV2W here? */
232400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
233400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* Only one for the following should be defined */
234400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define SIXTY_FOUR_BIT_LONG
235400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef SIXTY_FOUR_BIT
236400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef THIRTY_TWO_BIT
237400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
238400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
239400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
240400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define CONFIG_HEADER_RC4_LOCL_H
241400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* if this is defined data[i] is used instead of *data, this is a %20
242400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * speedup on x86 */
243400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef RC4_INDEX
244400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
245400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
246400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
247400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define CONFIG_HEADER_BF_LOCL_H
248400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define BF_PTR
249400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif /* HEADER_BF_LOCL_H */
250400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
251400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
252400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define CONFIG_HEADER_DES_LOCL_H
253400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef DES_DEFAULT_OPTIONS
254400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* the following is tweaked from a config script, that is why it is a
255400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * protected undef/define */
256400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef DES_PTR
257400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef DES_PTR
258400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
259400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
260400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* This helps C compiler generate the correct code for multiple functional
261400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * units.  It reduces register dependancies at the expense of 2 more
262400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * registers */
263400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef DES_RISC1
264400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef DES_RISC1
265400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
266400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
267400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef DES_RISC2
268400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#undef DES_RISC2
269400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
270400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
271400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined(DES_RISC1) && defined(DES_RISC2)
272400df0a1337a517d628426522a358a1c5d22fccfAlexey VolkovYOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
273400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
274400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
275400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* Unroll the inner loop, this sometimes helps, sometimes hinders.
276400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * Very mucy CPU dependant */
277400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#ifndef DES_UNROLL
278400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#define DES_UNROLL
279400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
280400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
281400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* These default values were supplied by
282400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * Peter Gutman <pgut001@cs.auckland.ac.nz>
283400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov * They are only used if nothing else has been defined */
284400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
285400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov/* Special defines which change the way the code is built depending on the
286400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov   CPU and OS.  For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
287400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov   even newer MIPS CPU's, but at the moment one size fits all for
288400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov   optimization options.  Older Sparc's work better with only UNROLL, but
289400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov   there's no way to tell at compile time what it is you're running on */
290400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
291400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#if defined( sun )		/* Newer Sparc's */
292400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_PTR
293400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_RISC1
294400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_UNROLL
295400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#elif defined( __ultrix )	/* Older MIPS */
296400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_PTR
297400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_RISC2
298400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_UNROLL
299400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#elif defined( __osf1__ )	/* Alpha */
300400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_PTR
301400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_RISC2
302400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#elif defined ( _AIX )		/* RS6000 */
303400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov  /* Unknown */
304400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#elif defined( __hpux )		/* HP-PA */
305400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov  /* Unknown */
306400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#elif defined( __aux )		/* 68K */
307400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov  /* Unknown */
308400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#elif defined( __dgux )		/* 88K (but P6 in latest boxes) */
309400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_UNROLL
310400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#elif defined( __sgi )		/* Newer MIPS */
311400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_PTR
312400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_RISC2
313400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_UNROLL
314400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#elif defined(i386) || defined(__i386__)	/* x86 boxes, should be gcc */
315400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_PTR
316400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_RISC1
317400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#  define DES_UNROLL
318400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif /* Systems-specific speed defines */
319400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif
320400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov
321400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif /* DES_DEFAULT_OPTIONS */
322400df0a1337a517d628426522a358a1c5d22fccfAlexey Volkov#endif /* HEADER_DES_LOCL_H */
323