aboutsummaryrefslogtreecommitdiffstats
path: root/include/x509_key.h
diff options
context:
space:
mode:
authorlloyd <[email protected]>2008-04-21 15:53:32 +0000
committerlloyd <[email protected]>2008-04-21 15:53:32 +0000
commit90224856d6cc454eba6d5eacf4439b2d732acd65 (patch)
tree284a7afe5ede70c79878dad222891fa155f60512 /include/x509_key.h
parent272a8523e3c19e1c297b335a316a335db6c7128d (diff)
Add BOTAN_DLL macro in all needed spots for working DLL export. Based
on a patch from Joel Low for MSVC, modified and tested with GCC using -fvisibility=hidden and the visibility attribute. Getting this working completely requires making the shared object and static lib builds completely distinct (which is also a win since it allows avoiding -fPIC usage, etc in the static lib). Currently too many things are being exported, though it is an improvement as internal-only code like the bigint_* functions are hidden.
Diffstat (limited to 'include/x509_key.h')
-rw-r--r--include/x509_key.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/include/x509_key.h b/include/x509_key.h
index a07268e53..6f45887ca 100644
--- a/include/x509_key.h
+++ b/include/x509_key.h
@@ -15,7 +15,7 @@ namespace Botan {
/*************************************************
* X.509 Public Key Encoder *
*************************************************/
-class X509_Encoder
+class BOTAN_DLL X509_Encoder
{
public:
virtual AlgorithmIdentifier alg_id() const = 0;
@@ -26,7 +26,7 @@ class X509_Encoder
/*************************************************
* X.509 Public Key Decoder *
*************************************************/
-class X509_Decoder
+class BOTAN_DLL X509_Decoder
{
public:
virtual void alg_id(const AlgorithmIdentifier&) = 0;
@@ -39,16 +39,16 @@ namespace X509 {
/*************************************************
* X.509 Public Key Encoding/Decoding *
*************************************************/
-void encode(const Public_Key&, Pipe&, X509_Encoding = PEM);
-std::string PEM_encode(const Public_Key&);
+BOTAN_DLL void encode(const Public_Key&, Pipe&, X509_Encoding = PEM);
+BOTAN_DLL std::string PEM_encode(const Public_Key&);
-Public_Key* load_key(DataSource&);
-Public_Key* load_key(const std::string&);
-Public_Key* load_key(const MemoryRegion<byte>&);
+BOTAN_DLL Public_Key* load_key(DataSource&);
+BOTAN_DLL Public_Key* load_key(const std::string&);
+BOTAN_DLL Public_Key* load_key(const MemoryRegion<byte>&);
-Public_Key* copy_key(const Public_Key&);
+BOTAN_DLL Public_Key* copy_key(const Public_Key&);
-Key_Constraints find_constraints(const Public_Key&, Key_Constraints);
+BOTAN_DLL Key_Constraints find_constraints(const Public_Key&, Key_Constraints);
}