Fabcoin Core  0.16.2
P2P Digital Currency
dll.h
Go to the documentation of this file.
1 // dll.h - written and placed in the public domain by Wei Dai
2 
6 
7 #ifndef CRYPTOPP_DLL_H
8 #define CRYPTOPP_DLL_H
9 
10 #if !defined(CRYPTOPP_IMPORTS) && !defined(CRYPTOPP_EXPORTS) && !defined(CRYPTOPP_DEFAULT_NO_DLL)
11 #ifdef CRYPTOPP_CONFIG_H
12 #error To use the DLL version of Crypto++, this file must be included before any other Crypto++ header files.
13 #endif
14 #define CRYPTOPP_IMPORTS
15 #endif
16 
17 #include "aes.h"
18 #include "cbcmac.h"
19 #include "ccm.h"
20 #include "cmac.h"
21 #include "channels.h"
22 #include "des.h"
23 #include "dh.h"
24 #include "dsa.h"
25 #include "ec2n.h"
26 #include "eccrypto.h"
27 #include "ecp.h"
28 #include "files.h"
29 #include "fips140.h"
30 #include "gcm.h"
31 #include "hex.h"
32 #include "hmac.h"
33 #include "modes.h"
34 #include "mqueue.h"
35 #include "nbtheory.h"
36 #include "osrng.h"
37 #include "pkcspad.h"
38 #include "pssr.h"
39 #include "randpool.h"
40 #include "rsa.h"
41 #include "rw.h"
42 #include "sha.h"
43 #include "skipjack.h"
44 #include "trdlocal.h"
45 
46 #ifdef CRYPTOPP_IMPORTS
47 
48 #ifdef _DLL
49 // cause CRT DLL to be initialized before Crypto++ so that we can use malloc and free during DllMain()
50 #ifdef CRYPTOPP_DEBUG
51 # pragma comment(lib, "msvcrtd")
52 # pragma comment(lib, "cryptopp")
53 #else
54 # pragma comment(lib, "msvcrt")
55 # pragma comment(lib, "cryptopp")
56 #endif
57 #endif
58 
59 #endif // #ifdef CRYPTOPP_IMPORTS
60 
61 #include <new> // for new_handler
62 
64 
65 typedef void * (CRYPTOPP_API * PNew)(size_t);
66 typedef void (CRYPTOPP_API * PDelete)(void *);
67 typedef void (CRYPTOPP_API * PGetNewAndDelete)(PNew &, PDelete &);
68 typedef std::new_handler (CRYPTOPP_API * PSetNewHandler)(std::new_handler);
69 typedef void (CRYPTOPP_API * PSetNewAndDelete)(PNew, PDelete, PSetNewHandler);
70 
72 
73 #endif
void(CRYPTOPP_API * PSetNewAndDelete)(PNew, PDelete, PSetNewHandler)
Definition: dll.h:69
Class file for Randomness Pool.
Class file for modes of operation.
Classes for Elliptic Curves over prime fields.
#define NAMESPACE_BEGIN(x)
Definition: config.h:200
std::hash for asio::adress
Definition: Common.h:323
std::new_handler(CRYPTOPP_API * PSetNewHandler)(std::new_handler)
Definition: dll.h:68
Classes for CBC MAC.
Classes for multiple named channels.
Classes for CMAC message authentication code.
Classes for Elliptic Curves over binary fields.
Classes for PKCS padding schemes.
Classes for HMAC message authentication codes.
Classes for Rabin-Williams signature scheme.
Classes for the SKIPJACK block cipher.
Classes for Diffie-Hellman key exchange.
Classes for HexEncoder and HexDecoder.
Class file for the AES cipher (Rijndael)
void *(CRYPTOPP_API * PNew)(size_t)
Definition: dll.h:65
void(CRYPTOPP_API * PDelete)(void *)
Definition: dll.h:66
#define CRYPTOPP_API
Definition: config.h:705
Classes for the DSA signature algorithm.
void(CRYPTOPP_API * PGetNewAndDelete)(PNew &, PDelete &)
Definition: dll.h:67
Classes for DES, 2-key Triple-DES, 3-key Triple-DES and DESX.
Classes for SHA-1 and SHA-2 family of message digests.
Classes and functions for number theoretic operations.
Classes for the RSA cryptosystem.
Classes and functions for the FIPS 140-2 validated library.
GCM block cipher mode of operation.
#define NAMESPACE_END
Definition: config.h:201
Classes providing file-based library services.
Classes and functions for Elliptic Curves over prime and binary fields.
Classes for probablistic signature schemes.
Classes for access to the operating system&#39;s random number generators.
CCM block cipher mode of operation.