cryptopp_config.h
00001
00002
00003
00004
00005 #ifndef CRYPTOPP_CONFIG_H
00006 #define CRYPTOPP_CONFIG_H
00007
00008
00009
00010
00011 #define _PACKAGE_BUGREPORT PACKAGE_BUGREPORT
00012 #define _PACKAGE_NAME PACKAGE_NAME
00013 #define _PACKAGE_STRING PACKAGE_STRING
00014 #define _PACKAGE_TARNAME PACKAGE_TARNAME
00015 #define _PACKAGE_VERSION PACKAGE_VERSION
00016
00017
00018
00019 #define HAVE_ARPA_INET_H 1
00020
00021
00022 #define HAVE_DLFCN_H 1
00023
00024
00025 #define HAVE_FCNTL_H 1
00026
00027
00028 #define HAVE_GETHOSTBYNAME 1
00029
00030
00031 #define HAVE_GETTIMEOFDAY 1
00032
00033
00034 #define HAVE_INTTYPES_H 1
00035
00036
00037 #define HAVE_LIMITS_H 1
00038
00039
00040
00041 #define HAVE_MALLOC 1
00042
00043
00044 #define HAVE_MALLOC_H 1
00045
00046
00047 #define HAVE_MEMMOVE 1
00048
00049
00050 #define HAVE_MEMORY_H 1
00051
00052
00053 #define HAVE_MEMSET 1
00054
00055
00056 #define HAVE_NETDB_H 1
00057
00058
00059 #define HAVE_NETINET_IN_H 1
00060
00061
00062
00063
00064
00065 #define HAVE_PTRDIFF_T 1
00066
00067
00068 #define HAVE_SELECT 1
00069
00070
00071 #define HAVE_SOCKET 1
00072
00073
00074 #define HAVE_STDBOOL_H 1
00075
00076
00077 #define HAVE_STDDEF_H 1
00078
00079
00080 #define HAVE_STDINT_H 1
00081
00082
00083 #define HAVE_STDLIB_H 1
00084
00085
00086 #define HAVE_STRINGS_H 1
00087
00088
00089 #define HAVE_STRING_H 1
00090
00091
00092 #define HAVE_SYS_IOCTL_H 1
00093
00094
00095 #define HAVE_SYS_SELECT_H 1
00096
00097
00098 #define HAVE_SYS_SOCKET_H 1
00099
00100
00101 #define HAVE_SYS_STAT_H 1
00102
00103
00104 #define HAVE_SYS_TIME_H 1
00105
00106
00107 #define HAVE_SYS_TYPES_H 1
00108
00109
00110 #define HAVE_UNISTD_H 1
00111
00112
00113 #define HAVE__BOOL 1
00114
00115
00116
00117
00118
00119 #define IS_LITTLE_ENDIAN
00120
00121
00122 #define PACKAGE_BUGREPORT ""
00123
00124
00125 #define PACKAGE_NAME "crypto++"
00126
00127
00128 #define PACKAGE_STRING "crypto++ 5.2"
00129
00130
00131 #define PACKAGE_TARNAME "crypto--"
00132
00133
00134 #define PACKAGE_VERSION "5.2"
00135
00136
00137 #define RETSIGTYPE void
00138
00139
00140 #define SELECT_TYPE_ARG1 int
00141
00142
00143 #define SELECT_TYPE_ARG234 (fd_set *)
00144
00145
00146 #define SELECT_TYPE_ARG5 (struct timeval *)
00147
00148
00149 #define SIZEOF_LONG 8
00150
00151
00152 #define STDC_HEADERS 1
00153
00154
00155 #define TIME_WITH_SYS_TIME 1
00156
00157
00158
00159
00160
00161
00162
00163
00164
00165 #ifndef __cplusplus
00166
00167 #endif
00168
00169
00170
00171
00172
00173
00174
00175
00176
00177 #ifndef CRYPTOPP_BUILD
00178
00179
00180
00181
00182 #define PACKAGE_BUGREPORT ""
00183 #define PACKAGE_NAME "crypto++"
00184 #define PACKAGE_STRING "crypto++ 5.2"
00185 #define PACKAGE_TARNAME "crypto--"
00186 #define PACKAGE_VERSION "5.2"
00187 #define PACKAGE_BUGREPORT ""
00188 #define PACKAGE_NAME "crypto++"
00189 #define PACKAGE_STRING "crypto++ 5.2"
00190 #define PACKAGE_TARNAME "crypto--"
00191 #define PACKAGE_VERSION "5.2"
00192
00193 #endif
00194
00195
00196
00197
00198
00199
00200
00201
00202
00203
00204 #define USE_MS_CRYPTOAPI
00205
00206
00207 #ifndef DSA_1024_BIT_MODULUS_ONLY
00208 # define DSA_1024_BIT_MODULUS_ONLY 1
00209 #endif
00210
00211
00212
00213
00214
00215
00216 #define GZIP_OS_CODE 0
00217
00218
00219
00220
00221
00222
00223
00224
00225
00226
00227
00228 #define PREFER_BERKELEY_STYLE_SOCKETS
00229
00230
00231
00232
00233
00234
00235 #ifdef NO_NAMESPACE
00236 # error namespace support is now required
00237 #endif
00238
00239
00240
00241
00242 #define WORKAROUND_MS_BUG_Q258000
00243
00244 #ifdef CRYPTOPP_DOXYGEN_PROCESSING
00245
00246 # define CryptoPP
00247 # define NAMESPACE_BEGIN(x)
00248 # define NAMESPACE_END
00249
00250 # define DOCUMENTED_TYPEDEF(x, y) class y : public x {};
00251 #else
00252 # define NAMESPACE_BEGIN(x) namespace x {
00253 # define NAMESPACE_END }
00254 # define DOCUMENTED_TYPEDEF(x, y) typedef x y;
00255 #endif
00256 #define ANONYMOUS_NAMESPACE_BEGIN namespace {
00257 #define USING_NAMESPACE(x) using namespace x;
00258 #define DOCUMENTED_NAMESPACE_BEGIN(x) namespace x {
00259 #define DOCUMENTED_NAMESPACE_END }
00260
00261
00262 #ifndef TYPE_OF_SOCKLEN_T
00263 # if defined(_WIN32) || defined(__CYGWIN__) || defined(__MACH__)
00264 # define TYPE_OF_SOCKLEN_T int
00265 # else
00266 # define TYPE_OF_SOCKLEN_T ::socklen_t
00267 # endif
00268 #endif
00269
00270 #if defined(__CYGWIN__) && defined(PREFER_WINDOWS_STYLE_SOCKETS)
00271 # define __USE_W32_SOCKETS
00272 #endif
00273
00274 typedef unsigned char byte;
00275
00276 NAMESPACE_BEGIN(CryptoPP)
00277
00278 typedef unsigned short word16;
00279 typedef unsigned int word32;
00280
00281 #if defined(__GNUC__) || defined(__MWERKS__)
00282 #define WORD64_AVAILABLE
00283 typedef unsigned long long word64;
00284 #define W64LIT(x) x##LL
00285 #elif defined(_MSC_VER) || defined(__BCPLUSPLUS__)
00286 #define WORD64_AVAILABLE
00287 typedef unsigned __int64 word64;
00288 #define W64LIT(x) x##ui64
00289 #endif
00290
00291
00292 #ifdef WORD64_AVAILABLE
00293 typedef word64 lword;
00294 #else
00295 typedef word32 lword;
00296 #endif
00297
00298 #if defined(__alpha__) || defined(__ia64__) || defined(_ARCH_PPC64) || defined(__x86_64__) || defined(__mips64)
00299
00300
00301
00302
00303 typedef word32 hword;
00304 typedef word64 word;
00305 #else
00306 #define CRYPTOPP_NATIVE_DWORD_AVAILABLE
00307 #ifdef WORD64_AVAILABLE
00308 #define CRYPTOPP_SLOW_WORD64
00309 typedef word16 hword;
00310 typedef word32 word;
00311 typedef word64 dword;
00312 #else
00313 typedef word8 hword;
00314 typedef word16 word;
00315 typedef word32 dword;
00316 #endif
00317 #endif
00318
00319 const unsigned int WORD_SIZE = sizeof(word);
00320 const unsigned int WORD_BITS = WORD_SIZE * 8;
00321
00322 #if defined(_MSC_VER) || defined(__BCPLUSPLUS__)
00323 #define INTEL_INTRINSICS
00324 #define FAST_ROTATE
00325 #elif defined(__MWERKS__) && TARGET_CPU_PPC
00326 #define PPC_INTRINSICS
00327 #define FAST_ROTATE
00328 #elif defined(__GNUC__) && defined(__i386__)
00329
00330 #define FAST_ROTATE
00331 #endif
00332
00333 NAMESPACE_END
00334
00335
00336 #if defined(_MSC_VER) && (_MSC_VER < 1300)
00337 #define CPP_TYPENAME
00338 #else
00339 #define CPP_TYPENAME typename
00340 #endif
00341
00342 #ifdef _MSC_VER
00343 #define CRYPTOPP_NO_VTABLE __declspec(novtable)
00344 #else
00345 #define CRYPTOPP_NO_VTABLE
00346 #endif
00347
00348 #ifdef _MSC_VER
00349
00350
00351
00352
00353
00354
00355
00356
00357 # pragma warning(disable: 4231 4250 4251 4275 4660 4661 4786 4355)
00358 #endif
00359
00360 #if (defined(_MSC_VER) && _MSC_VER <= 1300) || defined(__MWERKS__) || defined(_STLPORT_VERSION)
00361 #define CRYPTOPP_DISABLE_UNCAUGHT_EXCEPTION
00362 #endif
00363
00364 #ifndef CRYPTOPP_DISABLE_UNCAUGHT_EXCEPTION
00365 #define CRYPTOPP_UNCAUGHT_EXCEPTION_AVAILABLE
00366 #endif
00367
00368
00369 #if !defined(CRYPTOPP_DISABLE_X86ASM) && ((defined(_MSC_VER) && !defined(__MWERKS__) && defined(_M_IX86)) || (defined(__GNUC__) && defined(__i386__)))
00370 #define CRYPTOPP_X86ASM_AVAILABLE
00371 #endif
00372
00373
00374
00375 #ifndef NO_OS_DEPENDENCE
00376
00377 #if defined(_WIN32) || defined(__CYGWIN__)
00378 #define CRYPTOPP_WIN32_AVAILABLE
00379 #endif
00380
00381 #if defined(__unix__) || defined(__MACH__)
00382 #define CRYPTOPP_UNIX_AVAILABLE
00383 #endif
00384
00385 #if defined(WORD64_AVAILABLE) && (defined(CRYPTOPP_WIN32_AVAILABLE) || defined(CRYPTOPP_UNIX_AVAILABLE))
00386 # define HIGHRES_TIMER_AVAILABLE
00387 #endif
00388
00389 #ifdef CRYPTOPP_UNIX_AVAILABLE
00390 # define HAS_BERKELEY_STYLE_SOCKETS
00391 #endif
00392
00393 #ifdef CRYPTOPP_WIN32_AVAILABLE
00394 # define HAS_WINDOWS_STYLE_SOCKETS
00395 #endif
00396
00397 #if defined(HIGHRES_TIMER_AVAILABLE) && (defined(HAS_BERKELEY_STYLE_SOCKETS) || defined(HAS_WINDOWS_STYLE_SOCKETS))
00398 # define SOCKETS_AVAILABLE
00399 #endif
00400
00401 #if defined(HAS_WINDOWS_STYLE_SOCKETS) && (!defined(HAS_BERKELEY_STYLE_SOCKETS) || defined(PREFER_WINDOWS_STYLE_SOCKETS))
00402 # define USE_WINDOWS_STYLE_SOCKETS
00403 #else
00404 # define USE_BERKELEY_STYLE_SOCKETS
00405 #endif
00406
00407 #if defined(CRYPTOPP_WIN32_AVAILABLE) && !defined(USE_BERKELEY_STYLE_SOCKETS)
00408 # define WINDOWS_PIPES_AVAILABLE
00409 #endif
00410
00411 #if defined(CRYPTOPP_WIN32_AVAILABLE) && defined(USE_MS_CRYPTOAPI)
00412 # define NONBLOCKING_RNG_AVAILABLE
00413 # define OS_RNG_AVAILABLE
00414 #endif
00415
00416 #if defined(CRYPTOPP_UNIX_AVAILABLE) || defined(CRYPTOPP_DOXYGEN_PROCESSING)
00417 # define NONBLOCKING_RNG_AVAILABLE
00418 # define BLOCKING_RNG_AVAILABLE
00419 # define OS_RNG_AVAILABLE
00420 # define HAS_PTHREADS
00421 # define THREADS_AVAILABLE
00422 #endif
00423
00424 #ifdef CRYPTOPP_WIN32_AVAILABLE
00425 # define HAS_WINTHREADS
00426 # define THREADS_AVAILABLE
00427 #endif
00428
00429 #if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
00430 # define CRYPTOPP_MALLOC_ALIGNMENT_IS_16
00431 #endif
00432
00433 #if defined(__linux__) || defined(__sun__) || defined(__CYGWIN__)
00434 # define CRYPTOPP_MEMALIGN_AVAILABLE
00435 #endif
00436
00437 #endif
00438
00439
00440
00441 #ifdef CRYPTOPP_WIN32_AVAILABLE
00442
00443 #ifdef CRYPTOPP_EXPORTS
00444 #define CRYPTOPP_IS_DLL
00445 #define CRYPTOPP_DLL __declspec(dllexport)
00446 #elif defined(CRYPTOPP_IMPORTS)
00447 #define CRYPTOPP_IS_DLL
00448 #define CRYPTOPP_DLL __declspec(dllimport)
00449 #else
00450 #define CRYPTOPP_DLL
00451 #endif
00452
00453 #define CRYPTOPP_API __stdcall
00454 #define CRYPTOPP_CDECL __cdecl
00455
00456 #else
00457
00458 #define CRYPTOPP_DLL
00459 #define CRYPTOPP_API
00460 #define CRYPTOPP_CDECL
00461
00462 #endif
00463
00464 #if defined(CRYPTOPP_MANUALLY_INSTANTIATE_TEMPLATES) && !defined(CRYPTOPP_IMPORTS)
00465 #define CRYPTOPP_DLL_TEMPLATE_CLASS template class CRYPTOPP_DLL
00466 #elif defined(__MWERKS__)
00467 #define CRYPTOPP_DLL_TEMPLATE_CLASS extern class CRYPTOPP_DLL
00468 #else
00469 #define CRYPTOPP_DLL_TEMPLATE_CLASS extern template class CRYPTOPP_DLL
00470 #endif
00471
00472 #if defined(CRYPTOPP_MANUALLY_INSTANTIATE_TEMPLATES) && !defined(CRYPTOPP_EXPORTS)
00473 #define CRYPTOPP_STATIC_TEMPLATE_CLASS template class
00474 #elif defined(__MWERKS__)
00475 #define CRYPTOPP_STATIC_TEMPLATE_CLASS extern class
00476 #else
00477 #define CRYPTOPP_STATIC_TEMPLATE_CLASS extern template class
00478 #endif
00479
00480 #endif
00481
Generated on Fri Aug 27 13:29:33 2004 for Crypto++ by
1.3.8