186559Sjake/* $FreeBSD$ */
286559Sjake/* opensslconf.h */
386559Sjake/* WARNING: Generated automatically from opensslconf.h.in by Configure. */
486559Sjake
5280297Sjkim#ifdef  __cplusplus
6280297Sjkimextern "C" {
7280297Sjkim#endif
886559Sjake/* OpenSSL was configured with the following options: */
9160819Ssimon#ifndef OPENSSL_DOING_MAKEDEPEND
10160819Ssimon
11238405Sjkim
12238405Sjkim#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
13238405Sjkim# define OPENSSL_NO_EC_NISTP_64_GCC_128
14162915Ssimon#endif
15238405Sjkim#ifndef OPENSSL_NO_GMP
16238405Sjkim# define OPENSSL_NO_GMP
17194207Ssimon#endif
18194207Ssimon#ifndef OPENSSL_NO_JPAKE
19194207Ssimon# define OPENSSL_NO_JPAKE
20194207Ssimon#endif
21160819Ssimon#ifndef OPENSSL_NO_KRB5
22160819Ssimon# define OPENSSL_NO_KRB5
23160819Ssimon#endif
24290207Sjkim#ifndef OPENSSL_NO_LIBUNBOUND
25290207Sjkim# define OPENSSL_NO_LIBUNBOUND
26290207Sjkim#endif
27238405Sjkim#ifndef OPENSSL_NO_MD2
28238405Sjkim# define OPENSSL_NO_MD2
29238405Sjkim#endif
30238405Sjkim#ifndef OPENSSL_NO_SCTP
31238405Sjkim# define OPENSSL_NO_SCTP
32238405Sjkim#endif
33290207Sjkim#ifndef OPENSSL_NO_SSL_TRACE
34290207Sjkim# define OPENSSL_NO_SSL_TRACE
35290207Sjkim#endif
36280306Sjkim#ifndef OPENSSL_NO_SSL2
37280306Sjkim# define OPENSSL_NO_SSL2
38280306Sjkim#endif
39238405Sjkim#ifndef OPENSSL_NO_STORE
40238405Sjkim# define OPENSSL_NO_STORE
41238405Sjkim#endif
42280297Sjkim#ifndef OPENSSL_NO_UNIT_TEST
43280297Sjkim# define OPENSSL_NO_UNIT_TEST
44280297Sjkim#endif
45296279Sjkim#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
46296279Sjkim# define OPENSSL_NO_WEAK_SSL_CIPHERS
47296279Sjkim#endif
48160819Ssimon
49160819Ssimon#endif /* OPENSSL_DOING_MAKEDEPEND */
50238405Sjkim
51160819Ssimon#ifndef OPENSSL_THREADS
52160819Ssimon# define OPENSSL_THREADS
53160819Ssimon#endif
54304320Sjkim%%NO_ASM%%#ifndef OPENSSL_NO_ASM
55304320Sjkim%%NO_ASM%%# define OPENSSL_NO_ASM
56304320Sjkim%%NO_ASM%%#endif
57160819Ssimon#ifndef OPENSSL_NO_STATIC_ENGINE
58160819Ssimon# define OPENSSL_NO_STATIC_ENGINE
59160819Ssimon#endif
60160819Ssimon
61160819Ssimon/* The OPENSSL_NO_* macros are also defined as NO_* if the application
62160819Ssimon   asks for it.  This is a transient feature that is provided for those
63160819Ssimon   who haven't had the time to do the appropriate changes in their
64160819Ssimon   applications.  */
6586559Sjake#ifdef OPENSSL_ALGORITHM_DEFINES
66238405Sjkim# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128)
67238405Sjkim#  define NO_EC_NISTP_64_GCC_128
68238405Sjkim# endif
69160819Ssimon# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP)
70160819Ssimon#  define NO_GMP
7186559Sjake# endif
72238405Sjkim# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE)
73238405Sjkim#  define NO_JPAKE
74238405Sjkim# endif
75160819Ssimon# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
76160819Ssimon#  define NO_KRB5
77160819Ssimon# endif
78290207Sjkim# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND)
79290207Sjkim#  define NO_LIBUNBOUND
80290207Sjkim# endif
81238405Sjkim# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2)
82238405Sjkim#  define NO_MD2
83160819Ssimon# endif
84238405Sjkim# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP)
85238405Sjkim#  define NO_SCTP
8686559Sjake# endif
87290207Sjkim# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE)
88290207Sjkim#  define NO_SSL_TRACE
89290207Sjkim# endif
90280306Sjkim# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2)
91280306Sjkim#  define NO_SSL2
92280306Sjkim# endif
93238405Sjkim# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE)
94238405Sjkim#  define NO_STORE
95238405Sjkim# endif
96280297Sjkim# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST)
97280297Sjkim#  define NO_UNIT_TEST
98280297Sjkim# endif
99296279Sjkim# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS)
100296279Sjkim#  define NO_WEAK_SSL_CIPHERS
101296279Sjkim# endif
10286559Sjake#endif
10386559Sjake
104304320Sjkim%%ASM%%#define OPENSSL_CPUID_OBJ
105304320Sjkim%%ASM%%
10686559Sjake/* crypto/opensslconf.h.in */
10786559Sjake
10886559Sjake/* Generate 80386 code? */
10986559Sjake#undef I386_ONLY
11086559Sjake
11186559Sjake#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
11286559Sjake#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
113160819Ssimon#define ENGINESDIR "/usr/lib/engines"
11486559Sjake#define OPENSSLDIR "/etc/ssl"
11586559Sjake#endif
11686559Sjake#endif
11786559Sjake
118160819Ssimon#undef OPENSSL_UNISTD
11986559Sjake#define OPENSSL_UNISTD <unistd.h>
12086559Sjake
121160819Ssimon#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
122160819Ssimon
12386559Sjake#if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
12486559Sjake#define IDEA_INT unsigned int
12586559Sjake#endif
12686559Sjake
12786559Sjake#if defined(HEADER_MD2_H) && !defined(MD2_INT)
12886559Sjake#define MD2_INT unsigned int
12986559Sjake#endif
13086559Sjake
13186559Sjake#if defined(HEADER_RC2_H) && !defined(RC2_INT)
13286559Sjake/* I need to put in a mod for the alpha - eay */
13386559Sjake#define RC2_INT unsigned int
13486559Sjake#endif
13586559Sjake
13686559Sjake#if defined(HEADER_RC4_H)
13786559Sjake#if !defined(RC4_INT)
13886559Sjake/* using int types make the structure larger but make the code faster
13986559Sjake * on most boxes I have tested - up to %20 faster. */
14086559Sjake/*
14186559Sjake * I don't know what does "most" mean, but declaring "int" is a must on:
14286559Sjake * - Intel P6 because partial register stalls are very expensive;
14386559Sjake * - elder Alpha because it lacks byte load/store instructions;
14486559Sjake */
14586559Sjake#define RC4_INT unsigned int
14686559Sjake#endif
14786559Sjake#if !defined(RC4_CHUNK)
14886559Sjake/*
14986559Sjake * This enables code handling data aligned at natural CPU word
15086559Sjake * boundary. See crypto/rc4/rc4_enc.c for further details.
15186559Sjake */
15286559Sjake#undef RC4_CHUNK
15386559Sjake#endif
15486559Sjake#endif
15586559Sjake
156160819Ssimon#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
15786559Sjake/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
15886559Sjake * %20 speed up (longs are 8 bytes, int's are 4). */
15986559Sjake#ifndef DES_LONG
16086559Sjake#define DES_LONG unsigned int
16186559Sjake#endif
16286559Sjake#endif
16386559Sjake
16486559Sjake#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
16586559Sjake#define CONFIG_HEADER_BN_H
16686559Sjake#undef BN_LLONG
16786559Sjake
16886559Sjake/* Should we define BN_DIV2W here? */
16986559Sjake
17086559Sjake/* Only one for the following should be defined */
17186559Sjake#define SIXTY_FOUR_BIT_LONG
17286559Sjake#undef SIXTY_FOUR_BIT
17386559Sjake#undef THIRTY_TWO_BIT
17486559Sjake#endif
17586559Sjake
17686559Sjake#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
17786559Sjake#define CONFIG_HEADER_RC4_LOCL_H
17886559Sjake/* if this is defined data[i] is used instead of *data, this is a %20
17986559Sjake * speedup on x86 */
18086559Sjake#undef RC4_INDEX
18186559Sjake#endif
18286559Sjake
18386559Sjake#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
18486559Sjake#define CONFIG_HEADER_BF_LOCL_H
18586559Sjake#undef BF_PTR
18686559Sjake#endif /* HEADER_BF_LOCL_H */
18786559Sjake
18886559Sjake#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
18986559Sjake#define CONFIG_HEADER_DES_LOCL_H
19086559Sjake#ifndef DES_DEFAULT_OPTIONS
19186559Sjake/* the following is tweaked from a config script, that is why it is a
19286559Sjake * protected undef/define */
19386559Sjake#ifndef DES_PTR
19486559Sjake#define DES_PTR
19586559Sjake#endif
19686559Sjake
19786559Sjake/* This helps C compiler generate the correct code for multiple functional
19886559Sjake * units.  It reduces register dependancies at the expense of 2 more
19986559Sjake * registers */
20086559Sjake#ifndef DES_RISC1
20186559Sjake#undef DES_RISC1
20286559Sjake#endif
20386559Sjake
20486559Sjake#ifndef DES_RISC2
20586559Sjake#define DES_RISC2
20686559Sjake#endif
20786559Sjake
20886559Sjake#if defined(DES_RISC1) && defined(DES_RISC2)
209290207Sjkim#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
21086559Sjake#endif
21186559Sjake
21286559Sjake/* Unroll the inner loop, this sometimes helps, sometimes hinders.
21386559Sjake * Very mucy CPU dependant */
21486559Sjake#ifndef DES_UNROLL
21586559Sjake#undef DES_UNROLL
21686559Sjake#endif
21786559Sjake
21886559Sjake/* These default values were supplied by
21986559Sjake * Peter Gutman <pgut001@cs.auckland.ac.nz>
22086559Sjake * They are only used if nothing else has been defined */
22186559Sjake#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
22286559Sjake/* Special defines which change the way the code is built depending on the
22386559Sjake   CPU and OS.  For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
22486559Sjake   even newer MIPS CPU's, but at the moment one size fits all for
22586559Sjake   optimization options.  Older Sparc's work better with only UNROLL, but
22686559Sjake   there's no way to tell at compile time what it is you're running on */
22786559Sjake 
228296279Sjkim#if defined( __sun ) || defined ( sun )		/* Newer Sparc's */
22986559Sjake#  define DES_PTR
23086559Sjake#  define DES_RISC1
23186559Sjake#  define DES_UNROLL
23286559Sjake#elif defined( __ultrix )	/* Older MIPS */
23386559Sjake#  define DES_PTR
23486559Sjake#  define DES_RISC2
23586559Sjake#  define DES_UNROLL
23686559Sjake#elif defined( __osf1__ )	/* Alpha */
23786559Sjake#  define DES_PTR
23886559Sjake#  define DES_RISC2
23986559Sjake#elif defined ( _AIX )		/* RS6000 */
24086559Sjake  /* Unknown */
24186559Sjake#elif defined( __hpux )		/* HP-PA */
24286559Sjake  /* Unknown */
24386559Sjake#elif defined( __aux )		/* 68K */
24486559Sjake  /* Unknown */
24586559Sjake#elif defined( __dgux )		/* 88K (but P6 in latest boxes) */
24686559Sjake#  define DES_UNROLL
24786559Sjake#elif defined( __sgi )		/* Newer MIPS */
24886559Sjake#  define DES_PTR
24986559Sjake#  define DES_RISC2
25086559Sjake#  define DES_UNROLL
251238405Sjkim#elif defined(i386) || defined(__i386__)	/* x86 boxes, should be gcc */
25286559Sjake#  define DES_PTR
25386559Sjake#  define DES_RISC1
25486559Sjake#  define DES_UNROLL
25586559Sjake#endif /* Systems-specific speed defines */
25686559Sjake#endif
25786559Sjake
25886559Sjake#endif /* DES_DEFAULT_OPTIONS */
25986559Sjake#endif /* HEADER_DES_LOCL_H */
260280297Sjkim#ifdef  __cplusplus
261280297Sjkim}
262280297Sjkim#endif
263