186559Sjake/* $FreeBSD$ */
286559Sjake/* opensslconf.h */
386559Sjake/* WARNING: Generated automatically from opensslconf.h.in by Configure. */
486559Sjake
5296341Sdelphij#ifdef  __cplusplus
6296341Sdelphijextern "C" {
7296341Sdelphij#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
24238405Sjkim#ifndef OPENSSL_NO_MD2
25238405Sjkim# define OPENSSL_NO_MD2
26238405Sjkim#endif
27238405Sjkim#ifndef OPENSSL_NO_SCTP
28238405Sjkim# define OPENSSL_NO_SCTP
29238405Sjkim#endif
30238405Sjkim#ifndef OPENSSL_NO_STORE
31238405Sjkim# define OPENSSL_NO_STORE
32238405Sjkim#endif
33296341Sdelphij#ifndef OPENSSL_NO_UNIT_TEST
34296341Sdelphij# define OPENSSL_NO_UNIT_TEST
35296341Sdelphij#endif
36160819Ssimon
37160819Ssimon#endif /* OPENSSL_DOING_MAKEDEPEND */
38238405Sjkim
39160819Ssimon#ifndef OPENSSL_THREADS
40160819Ssimon# define OPENSSL_THREADS
41160819Ssimon#endif
42238405Sjkim#ifndef OPENSSL_NO_ASM
43238405Sjkim# define OPENSSL_NO_ASM
44238405Sjkim#endif
45160819Ssimon#ifndef OPENSSL_NO_STATIC_ENGINE
46160819Ssimon# define OPENSSL_NO_STATIC_ENGINE
47160819Ssimon#endif
48160819Ssimon
49160819Ssimon/* The OPENSSL_NO_* macros are also defined as NO_* if the application
50160819Ssimon   asks for it.  This is a transient feature that is provided for those
51160819Ssimon   who haven't had the time to do the appropriate changes in their
52160819Ssimon   applications.  */
5386559Sjake#ifdef OPENSSL_ALGORITHM_DEFINES
54238405Sjkim# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128)
55238405Sjkim#  define NO_EC_NISTP_64_GCC_128
56238405Sjkim# endif
57160819Ssimon# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP)
58160819Ssimon#  define NO_GMP
5986559Sjake# endif
60238405Sjkim# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE)
61238405Sjkim#  define NO_JPAKE
62238405Sjkim# endif
63160819Ssimon# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
64160819Ssimon#  define NO_KRB5
65160819Ssimon# endif
66238405Sjkim# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2)
67238405Sjkim#  define NO_MD2
68160819Ssimon# endif
69238405Sjkim# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP)
70238405Sjkim#  define NO_SCTP
7186559Sjake# endif
72238405Sjkim# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE)
73238405Sjkim#  define NO_STORE
74238405Sjkim# endif
75296341Sdelphij# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST)
76296341Sdelphij#  define NO_UNIT_TEST
77296341Sdelphij# endif
7886559Sjake#endif
7986559Sjake
8086559Sjake/* crypto/opensslconf.h.in */
8186559Sjake
8286559Sjake/* Generate 80386 code? */
8386559Sjake#undef I386_ONLY
8486559Sjake
8586559Sjake#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
8686559Sjake#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
87160819Ssimon#define ENGINESDIR "/usr/lib/engines"
8886559Sjake#define OPENSSLDIR "/etc/ssl"
8986559Sjake#endif
9086559Sjake#endif
9186559Sjake
92160819Ssimon#undef OPENSSL_UNISTD
9386559Sjake#define OPENSSL_UNISTD <unistd.h>
9486559Sjake
95160819Ssimon#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
96160819Ssimon
9786559Sjake#if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
9886559Sjake#define IDEA_INT unsigned int
9986559Sjake#endif
10086559Sjake
10186559Sjake#if defined(HEADER_MD2_H) && !defined(MD2_INT)
10286559Sjake#define MD2_INT unsigned int
10386559Sjake#endif
10486559Sjake
10586559Sjake#if defined(HEADER_RC2_H) && !defined(RC2_INT)
10686559Sjake/* I need to put in a mod for the alpha - eay */
10786559Sjake#define RC2_INT unsigned int
10886559Sjake#endif
10986559Sjake
11086559Sjake#if defined(HEADER_RC4_H)
11186559Sjake#if !defined(RC4_INT)
11286559Sjake/* using int types make the structure larger but make the code faster
11386559Sjake * on most boxes I have tested - up to %20 faster. */
11486559Sjake/*
11586559Sjake * I don't know what does "most" mean, but declaring "int" is a must on:
11686559Sjake * - Intel P6 because partial register stalls are very expensive;
11786559Sjake * - elder Alpha because it lacks byte load/store instructions;
11886559Sjake */
11986559Sjake#define RC4_INT unsigned int
12086559Sjake#endif
12186559Sjake#if !defined(RC4_CHUNK)
12286559Sjake/*
12386559Sjake * This enables code handling data aligned at natural CPU word
12486559Sjake * boundary. See crypto/rc4/rc4_enc.c for further details.
12586559Sjake */
12686559Sjake#undef RC4_CHUNK
12786559Sjake#endif
12886559Sjake#endif
12986559Sjake
130160819Ssimon#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
13186559Sjake/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
13286559Sjake * %20 speed up (longs are 8 bytes, int's are 4). */
13386559Sjake#ifndef DES_LONG
13486559Sjake#define DES_LONG unsigned int
13586559Sjake#endif
13686559Sjake#endif
13786559Sjake
13886559Sjake#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
13986559Sjake#define CONFIG_HEADER_BN_H
14086559Sjake#undef BN_LLONG
14186559Sjake
14286559Sjake/* Should we define BN_DIV2W here? */
14386559Sjake
14486559Sjake/* Only one for the following should be defined */
14586559Sjake#define SIXTY_FOUR_BIT_LONG
14686559Sjake#undef SIXTY_FOUR_BIT
14786559Sjake#undef THIRTY_TWO_BIT
14886559Sjake#endif
14986559Sjake
15086559Sjake#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
15186559Sjake#define CONFIG_HEADER_RC4_LOCL_H
15286559Sjake/* if this is defined data[i] is used instead of *data, this is a %20
15386559Sjake * speedup on x86 */
15486559Sjake#undef RC4_INDEX
15586559Sjake#endif
15686559Sjake
15786559Sjake#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
15886559Sjake#define CONFIG_HEADER_BF_LOCL_H
15986559Sjake#undef BF_PTR
16086559Sjake#endif /* HEADER_BF_LOCL_H */
16186559Sjake
16286559Sjake#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
16386559Sjake#define CONFIG_HEADER_DES_LOCL_H
16486559Sjake#ifndef DES_DEFAULT_OPTIONS
16586559Sjake/* the following is tweaked from a config script, that is why it is a
16686559Sjake * protected undef/define */
16786559Sjake#ifndef DES_PTR
16886559Sjake#define DES_PTR
16986559Sjake#endif
17086559Sjake
17186559Sjake/* This helps C compiler generate the correct code for multiple functional
17286559Sjake * units.  It reduces register dependancies at the expense of 2 more
17386559Sjake * registers */
17486559Sjake#ifndef DES_RISC1
17586559Sjake#undef DES_RISC1
17686559Sjake#endif
17786559Sjake
17886559Sjake#ifndef DES_RISC2
17986559Sjake#define DES_RISC2
18086559Sjake#endif
18186559Sjake
18286559Sjake#if defined(DES_RISC1) && defined(DES_RISC2)
18386559SjakeYOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
18486559Sjake#endif
18586559Sjake
18686559Sjake/* Unroll the inner loop, this sometimes helps, sometimes hinders.
18786559Sjake * Very mucy CPU dependant */
18886559Sjake#ifndef DES_UNROLL
18986559Sjake#undef DES_UNROLL
19086559Sjake#endif
19186559Sjake
19286559Sjake/* These default values were supplied by
19386559Sjake * Peter Gutman <pgut001@cs.auckland.ac.nz>
19486559Sjake * They are only used if nothing else has been defined */
19586559Sjake#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
19686559Sjake/* Special defines which change the way the code is built depending on the
19786559Sjake   CPU and OS.  For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
19886559Sjake   even newer MIPS CPU's, but at the moment one size fits all for
19986559Sjake   optimization options.  Older Sparc's work better with only UNROLL, but
20086559Sjake   there's no way to tell at compile time what it is you're running on */
20186559Sjake
20286559Sjake#if defined( sun )		/* Newer Sparc's */
20386559Sjake#  define DES_PTR
20486559Sjake#  define DES_RISC1
20586559Sjake#  define DES_UNROLL
20686559Sjake#elif defined( __ultrix )	/* Older MIPS */
20786559Sjake#  define DES_PTR
20886559Sjake#  define DES_RISC2
20986559Sjake#  define DES_UNROLL
21086559Sjake#elif defined( __osf1__ )	/* Alpha */
21186559Sjake#  define DES_PTR
21286559Sjake#  define DES_RISC2
21386559Sjake#elif defined ( _AIX )		/* RS6000 */
21486559Sjake  /* Unknown */
21586559Sjake#elif defined( __hpux )		/* HP-PA */
21686559Sjake  /* Unknown */
21786559Sjake#elif defined( __aux )		/* 68K */
21886559Sjake  /* Unknown */
21986559Sjake#elif defined( __dgux )		/* 88K (but P6 in latest boxes) */
22086559Sjake#  define DES_UNROLL
22186559Sjake#elif defined( __sgi )		/* Newer MIPS */
22286559Sjake#  define DES_PTR
22386559Sjake#  define DES_RISC2
22486559Sjake#  define DES_UNROLL
225238405Sjkim#elif defined(i386) || defined(__i386__)	/* x86 boxes, should be gcc */
22686559Sjake#  define DES_PTR
22786559Sjake#  define DES_RISC1
22886559Sjake#  define DES_UNROLL
22986559Sjake#endif /* Systems-specific speed defines */
23086559Sjake#endif
23186559Sjake
23286559Sjake#endif /* DES_DEFAULT_OPTIONS */
23386559Sjake#endif /* HEADER_DES_LOCL_H */
234296341Sdelphij#ifdef  __cplusplus
235296341Sdelphij}
236296341Sdelphij#endif
237