120 lines
3.5 KiB
C
120 lines
3.5 KiB
C
|
|
#ifndef _CHILKATDEFS_H_INCLUDED_
|
|
#define _CHILKATDEFS_H_INCLUDED_
|
|
|
|
|
|
// Is this a Windows platform of any type?
|
|
#if !defined(CK_WINDOWS)
|
|
#if defined(WIN32) || defined(_WIN32) || defined(_WINDOWS) || defined(_Windows) || defined(WINCE) || defined(WINAPI_FAMILY) || defined(__MINGW32__) || defined(__WIN32__) || defined(_WIN64)
|
|
#define CK_WINDOWS
|
|
#endif
|
|
#endif
|
|
|
|
|
|
#include "ck_inttypes.h"
|
|
|
|
// #if defined(CK_WINDOWS)
|
|
// typedef unsigned long ckUInt32;
|
|
// #else
|
|
// typedef uint32_t ckUInt32;
|
|
// #define CK_USE_UINT_T
|
|
// #endif
|
|
|
|
|
|
// Determine if Mailman SMTPQ related methods are included.
|
|
// SMTPQ is included for Windows-based builds that are not CE or Windows Phone
|
|
#if defined(CK_WINDOWS) && !defined(WINCE)
|
|
#define CK_SMTPQ_INCLUDED
|
|
#endif
|
|
|
|
// Determine if the SFX (Self-extracting EXE) functionality is included.
|
|
#if defined(CK_WINDOWS) && !defined(WINCE) && !defined(LINKAGE_TESTING)
|
|
#define CK_SFX_INCLUDED
|
|
#endif
|
|
|
|
// Determine if Windows-based Cryptographic Service Provider (CSP) functionality is available
|
|
#if defined(CK_WINDOWS) && !defined(WINCE) && !defined(CK_NO_CRYPTO_API)
|
|
#define CK_CSP_INCLUDED
|
|
#endif
|
|
|
|
// Determine if Windows-based CryptoAPI related functionality is available
|
|
// These are methods that entirely depend on an underlying MS Crypto API implementation.
|
|
#if defined(CK_WINDOWS) && !defined(WINCE) && !defined(CK_NO_CRYPTO_API)
|
|
#define CK_CRYPTOAPI_INCLUDED
|
|
#endif
|
|
|
|
// Determine if methods relating to the Windows registry-based certificate stores are included.
|
|
#if defined(CK_WINDOWS) && !defined(WINCE) && !defined(CK_NO_CRYPTO_API)
|
|
#define CK_WINCERTSTORE_INCLUDED
|
|
#endif
|
|
|
|
// Determine if MX DNS lookups are available.
|
|
// -We are missing MX DNS lookups on the following systems:
|
|
#if !defined(WINCE) && !defined(CK_NO_CRYPTO_API)
|
|
#define CK_MX_INCLUDED
|
|
#endif
|
|
|
|
#include "SystemTime.h"
|
|
#include "FileTime.h"
|
|
|
|
#if defined(__BORLANDC__) && defined(__WIN32__)
|
|
#pragma link "ws2_32.lib"
|
|
#pragma link "crypt32.lib"
|
|
#endif
|
|
|
|
// This define is also in winStdAfx.h (make sure they agree)
|
|
#if !defined(CK_VISIBLE_PUBLIC)
|
|
#if defined(__SUNPRO_CC)
|
|
// Solaris Studio compiler.
|
|
#define CK_VISIBLE_PUBLIC __global
|
|
#define CK_VISIBLE_PRIVATE __hidden
|
|
#elif defined(__MINGW32__)
|
|
#define CK_VISIBLE_PUBLIC
|
|
#define CK_VISIBLE_PRIVATE
|
|
#elif defined(CK_WINDOWS) || defined(CK_SOLARIS)
|
|
#define CK_VISIBLE_PUBLIC
|
|
#define CK_VISIBLE_PRIVATE
|
|
#else
|
|
#if __GNUC__ >= 3
|
|
#define CK_VISIBLE_PUBLIC __attribute__ ((visibility ("default")))
|
|
#define CK_VISIBLE_PRIVATE __attribute__ ((visibility ("hidden")))
|
|
#else
|
|
#define CK_VISIBLE_PUBLIC
|
|
#define CK_VISIBLE_PRIVATE
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
|
|
// This define is also in winStdAfx.h (make sure they agree)
|
|
#if !defined(CK_C_VISIBLE_PUBLIC)
|
|
#if defined(EMB_DEV_CPP)
|
|
#define CK_C_VISIBLE_PUBLIC
|
|
#define CK_C_VISIBLE_PRIVATE
|
|
#elif defined(__SUNPRO_CC)
|
|
//Solaris Studio compiler.
|
|
#define CK_C_VISIBLE_PUBLIC __global
|
|
#define CK_C_VISIBLE_PRIVATE __hidden
|
|
#elif defined(__MINGW32__)
|
|
#define CK_C_VISIBLE_PUBLIC __declspec(dllexport)
|
|
#define CK_C_VISIBLE_PRIVATE
|
|
#elif defined(CK_WINDOWS) || defined(CK_SOLARIS)
|
|
#define CK_C_VISIBLE_PUBLIC
|
|
#define CK_C_VISIBLE_PRIVATE
|
|
#else
|
|
#if __GNUC__ >= 3
|
|
#define CK_C_VISIBLE_PUBLIC __attribute__ ((visibility ("default")))
|
|
#define CK_C_VISIBLE_PRIVATE __attribute__ ((visibility ("hidden")))
|
|
#else
|
|
#define CK_C_VISIBLE_PUBLIC
|
|
#define CK_C_VISIBLE_PRIVATE
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
// We don't want any idiotic macros named "access". It'll collide with CkSecureString's "access" method.
|
|
#undef access
|
|
|
|
#endif // _CHILKATDEFS_H_INCLUDED_
|
|
|