aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/utils
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2016-12-27 15:48:00 -0500
committerJack Lloyd <[email protected]>2017-09-19 22:30:41 -0400
commit12c4dfec24e999ab80ff3a45e0b837976d4c390c (patch)
tree7de91a2b86aec055800b8e046729fcc10a31d6d8 /src/lib/utils
parent0c6c4e058109791a9f17971ca782dc10af3eb9bc (diff)
Add API stability annotations.
Defined in build.h, all equal to BOTAN_DLL so ties into existing system for exporting symbols.
Diffstat (limited to 'src/lib/utils')
-rw-r--r--src/lib/utils/assert.h2
-rw-r--r--src/lib/utils/calendar.h4
-rw-r--r--src/lib/utils/charset.h12
-rw-r--r--src/lib/utils/data_src.h6
-rw-r--r--src/lib/utils/database.h6
-rw-r--r--src/lib/utils/dyn_load/dyn_load.h2
-rw-r--r--src/lib/utils/exceptn.h44
-rw-r--r--src/lib/utils/filesystem.h2
-rw-r--r--src/lib/utils/http_util/http_util.h14
-rw-r--r--src/lib/utils/locking_allocator/locking_allocator.h2
-rw-r--r--src/lib/utils/mem_ops.h2
-rw-r--r--src/lib/utils/parsing.h32
-rw-r--r--src/lib/utils/sqlite3/sqlite3.h2
-rw-r--r--src/lib/utils/version.h14
14 files changed, 72 insertions, 72 deletions
diff --git a/src/lib/utils/assert.h b/src/lib/utils/assert.h
index ab459464e..044e27637 100644
--- a/src/lib/utils/assert.h
+++ b/src/lib/utils/assert.h
@@ -16,7 +16,7 @@ namespace Botan {
/**
* Called when an assertion fails
*/
-BOTAN_NORETURN void BOTAN_DLL assertion_failure(const char* expr_str,
+BOTAN_NORETURN void BOTAN_PUBLIC_API(2,0) assertion_failure(const char* expr_str,
const char* assertion_made,
const char* func,
const char* file,
diff --git a/src/lib/utils/calendar.h b/src/lib/utils/calendar.h
index 91da9edc0..8c9d1f084 100644
--- a/src/lib/utils/calendar.h
+++ b/src/lib/utils/calendar.h
@@ -18,7 +18,7 @@ namespace Botan {
/**
* Struct representing a particular date and time
*/
-struct BOTAN_DLL calendar_point
+struct BOTAN_PUBLIC_API(2,0) calendar_point
{
/** The year */
uint32_t year;
@@ -69,7 +69,7 @@ struct BOTAN_DLL calendar_point
* @param time_point a time point from the system clock
* @return calendar_point object representing this time point
*/
-BOTAN_DLL calendar_point calendar_value(
+BOTAN_PUBLIC_API(2,0) calendar_point calendar_value(
const std::chrono::system_clock::time_point& time_point);
}
diff --git a/src/lib/utils/charset.h b/src/lib/utils/charset.h
index 5ab28661a..cffa8ebc5 100644
--- a/src/lib/utils/charset.h
+++ b/src/lib/utils/charset.h
@@ -28,16 +28,16 @@ namespace Charset {
/*
* Character Set Handling
*/
-std::string BOTAN_DLL transcode(const std::string& str,
+std::string BOTAN_PUBLIC_API(2,0) transcode(const std::string& str,
Character_Set to,
Character_Set from);
-bool BOTAN_DLL is_digit(char c);
-bool BOTAN_DLL is_space(char c);
-bool BOTAN_DLL caseless_cmp(char x, char y);
+bool BOTAN_PUBLIC_API(2,0) is_digit(char c);
+bool BOTAN_PUBLIC_API(2,0) is_space(char c);
+bool BOTAN_PUBLIC_API(2,0) caseless_cmp(char x, char y);
-uint8_t BOTAN_DLL char2digit(char c);
-char BOTAN_DLL digit2char(uint8_t b);
+uint8_t BOTAN_PUBLIC_API(2,0) char2digit(char c);
+char BOTAN_PUBLIC_API(2,0) digit2char(uint8_t b);
}
diff --git a/src/lib/utils/data_src.h b/src/lib/utils/data_src.h
index 81840e913..8a170fdff 100644
--- a/src/lib/utils/data_src.h
+++ b/src/lib/utils/data_src.h
@@ -18,7 +18,7 @@ namespace Botan {
/**
* This class represents an abstract data source object.
*/
-class BOTAN_DLL DataSource
+class BOTAN_PUBLIC_API(2,0) DataSource
{
public:
/**
@@ -95,7 +95,7 @@ class BOTAN_DLL DataSource
/**
* This class represents a Memory-Based DataSource
*/
-class BOTAN_DLL DataSource_Memory : public DataSource
+class BOTAN_PUBLIC_API(2,0) DataSource_Memory : public DataSource
{
public:
size_t read(uint8_t[], size_t) override;
@@ -140,7 +140,7 @@ class BOTAN_DLL DataSource_Memory : public DataSource
/**
* This class represents a Stream-Based DataSource.
*/
-class BOTAN_DLL DataSource_Stream : public DataSource
+class BOTAN_PUBLIC_API(2,0) DataSource_Stream : public DataSource
{
public:
size_t read(uint8_t[], size_t) override;
diff --git a/src/lib/utils/database.h b/src/lib/utils/database.h
index 6a1fa6b02..0aa72eaa1 100644
--- a/src/lib/utils/database.h
+++ b/src/lib/utils/database.h
@@ -16,17 +16,17 @@
namespace Botan {
-class BOTAN_DLL SQL_Database
+class BOTAN_PUBLIC_API(2,0) SQL_Database
{
public:
- class BOTAN_DLL SQL_DB_Error : public Exception
+ class BOTAN_PUBLIC_API(2,0) SQL_DB_Error : public Exception
{
public:
explicit SQL_DB_Error(const std::string& what) : Exception("SQL database", what) {}
};
- class BOTAN_DLL Statement
+ class BOTAN_PUBLIC_API(2,0) Statement
{
public:
/* Bind statement parameters */
diff --git a/src/lib/utils/dyn_load/dyn_load.h b/src/lib/utils/dyn_load/dyn_load.h
index 3a155f3de..f5c0e1b24 100644
--- a/src/lib/utils/dyn_load/dyn_load.h
+++ b/src/lib/utils/dyn_load/dyn_load.h
@@ -16,7 +16,7 @@ namespace Botan {
/**
* Represents a DLL or shared object
*/
-class BOTAN_DLL Dynamically_Loaded_Library
+class BOTAN_PUBLIC_API(2,0) Dynamically_Loaded_Library
{
public:
/**
diff --git a/src/lib/utils/exceptn.h b/src/lib/utils/exceptn.h
index 798f2240a..47f16e0b9 100644
--- a/src/lib/utils/exceptn.h
+++ b/src/lib/utils/exceptn.h
@@ -18,7 +18,7 @@ namespace Botan {
/**
* Base class for all exceptions thrown by the library
*/
-class BOTAN_DLL Exception : public std::exception
+class BOTAN_PUBLIC_API(2,0) Exception : public std::exception
{
public:
explicit Exception(const std::string& msg) : m_msg(msg) {}
@@ -31,7 +31,7 @@ class BOTAN_DLL Exception : public std::exception
/**
* An invalid argument
*/
-class BOTAN_DLL Invalid_Argument : public Exception
+class BOTAN_PUBLIC_API(2,0) Invalid_Argument : public Exception
{
public:
explicit Invalid_Argument(const std::string& msg) :
@@ -50,7 +50,7 @@ class BOTAN_DLL Invalid_Argument : public Exception
* An argument that is invalid because it is not supported by Botan.
* It might or might not be valid in another context like a standard.
*/
-struct BOTAN_DLL Unsupported_Argument : public Invalid_Argument
+struct BOTAN_PUBLIC_API(2,0) Unsupported_Argument : public Invalid_Argument
{
explicit Unsupported_Argument(const std::string& msg) : Invalid_Argument(msg) {}
};
@@ -58,7 +58,7 @@ struct BOTAN_DLL Unsupported_Argument : public Invalid_Argument
/**
* Invalid_State Exception
*/
-struct BOTAN_DLL Invalid_State : public Exception
+struct BOTAN_PUBLIC_API(2,0) Invalid_State : public Exception
{
explicit Invalid_State(const std::string& err) :
Exception(err)
@@ -68,7 +68,7 @@ struct BOTAN_DLL Invalid_State : public Exception
/**
* Lookup_Error Exception
*/
-struct BOTAN_DLL Lookup_Error : public Exception
+struct BOTAN_PUBLIC_API(2,0) Lookup_Error : public Exception
{
explicit Lookup_Error(const std::string& err) :
Exception(err)
@@ -85,7 +85,7 @@ struct BOTAN_DLL Lookup_Error : public Exception
/**
* Internal_Error Exception
*/
-struct BOTAN_DLL Internal_Error : public Exception
+struct BOTAN_PUBLIC_API(2,0) Internal_Error : public Exception
{
explicit Internal_Error(const std::string& err) :
Exception("Internal error: " + err)
@@ -95,7 +95,7 @@ struct BOTAN_DLL Internal_Error : public Exception
/**
* Invalid_Key_Length Exception
*/
-struct BOTAN_DLL Invalid_Key_Length : public Invalid_Argument
+struct BOTAN_PUBLIC_API(2,0) Invalid_Key_Length : public Invalid_Argument
{
Invalid_Key_Length(const std::string& name, size_t length) :
Invalid_Argument(name + " cannot accept a key of length " +
@@ -106,7 +106,7 @@ struct BOTAN_DLL Invalid_Key_Length : public Invalid_Argument
/**
* Invalid_IV_Length Exception
*/
-struct BOTAN_DLL Invalid_IV_Length : public Invalid_Argument
+struct BOTAN_PUBLIC_API(2,0) Invalid_IV_Length : public Invalid_Argument
{
Invalid_IV_Length(const std::string& mode, size_t bad_len) :
Invalid_Argument("IV length " + std::to_string(bad_len) +
@@ -117,7 +117,7 @@ struct BOTAN_DLL Invalid_IV_Length : public Invalid_Argument
/**
* PRNG_Unseeded Exception
*/
-struct BOTAN_DLL PRNG_Unseeded : public Invalid_State
+struct BOTAN_PUBLIC_API(2,0) PRNG_Unseeded : public Invalid_State
{
explicit PRNG_Unseeded(const std::string& algo) :
Invalid_State("PRNG not seeded: " + algo)
@@ -127,7 +127,7 @@ struct BOTAN_DLL PRNG_Unseeded : public Invalid_State
/**
* Policy_Violation Exception
*/
-struct BOTAN_DLL Policy_Violation : public Invalid_State
+struct BOTAN_PUBLIC_API(2,0) Policy_Violation : public Invalid_State
{
explicit Policy_Violation(const std::string& err) :
Invalid_State("Policy violation: " + err)
@@ -137,7 +137,7 @@ struct BOTAN_DLL Policy_Violation : public Invalid_State
/**
* Algorithm_Not_Found Exception
*/
-struct BOTAN_DLL Algorithm_Not_Found : public Lookup_Error
+struct BOTAN_PUBLIC_API(2,0) Algorithm_Not_Found : public Lookup_Error
{
explicit Algorithm_Not_Found(const std::string& name) :
Lookup_Error("Could not find any algorithm named \"" + name + "\"")
@@ -147,7 +147,7 @@ struct BOTAN_DLL Algorithm_Not_Found : public Lookup_Error
/**
* No_Provider_Found Exception
*/
-struct BOTAN_DLL No_Provider_Found : public Exception
+struct BOTAN_PUBLIC_API(2,0) No_Provider_Found : public Exception
{
explicit No_Provider_Found(const std::string& name) :
Exception("Could not find any provider for algorithm named \"" + name + "\"")
@@ -158,7 +158,7 @@ struct BOTAN_DLL No_Provider_Found : public Exception
* Provider_Not_Found is thrown when a specific provider was requested
* but that provider is not available.
*/
-struct BOTAN_DLL Provider_Not_Found : public Lookup_Error
+struct BOTAN_PUBLIC_API(2,0) Provider_Not_Found : public Lookup_Error
{
Provider_Not_Found(const std::string& algo, const std::string& provider) :
Lookup_Error("Could not find provider '" + provider + "' for " + algo) {}
@@ -167,7 +167,7 @@ struct BOTAN_DLL Provider_Not_Found : public Lookup_Error
/**
* Invalid_Algorithm_Name Exception
*/
-struct BOTAN_DLL Invalid_Algorithm_Name : public Invalid_Argument
+struct BOTAN_PUBLIC_API(2,0) Invalid_Algorithm_Name : public Invalid_Argument
{
explicit Invalid_Algorithm_Name(const std::string& name):
Invalid_Argument("Invalid algorithm name: " + name)
@@ -177,7 +177,7 @@ struct BOTAN_DLL Invalid_Algorithm_Name : public Invalid_Argument
/**
* Encoding_Error Exception
*/
-struct BOTAN_DLL Encoding_Error : public Invalid_Argument
+struct BOTAN_PUBLIC_API(2,0) Encoding_Error : public Invalid_Argument
{
explicit Encoding_Error(const std::string& name) :
Invalid_Argument("Encoding error: " + name) {}
@@ -186,7 +186,7 @@ struct BOTAN_DLL Encoding_Error : public Invalid_Argument
/**
* Decoding_Error Exception
*/
-struct BOTAN_DLL Decoding_Error : public Invalid_Argument
+struct BOTAN_PUBLIC_API(2,0) Decoding_Error : public Invalid_Argument
{
explicit Decoding_Error(const std::string& name) :
Invalid_Argument("Decoding error: " + name) {}
@@ -195,7 +195,7 @@ struct BOTAN_DLL Decoding_Error : public Invalid_Argument
/**
* Integrity_Failure Exception
*/
-struct BOTAN_DLL Integrity_Failure : public Exception
+struct BOTAN_PUBLIC_API(2,0) Integrity_Failure : public Exception
{
explicit Integrity_Failure(const std::string& msg) :
Exception("Integrity failure: " + msg) {}
@@ -204,7 +204,7 @@ struct BOTAN_DLL Integrity_Failure : public Exception
/**
* Invalid_OID Exception
*/
-struct BOTAN_DLL Invalid_OID : public Decoding_Error
+struct BOTAN_PUBLIC_API(2,0) Invalid_OID : public Decoding_Error
{
explicit Invalid_OID(const std::string& oid) :
Decoding_Error("Invalid ASN.1 OID: " + oid) {}
@@ -213,7 +213,7 @@ struct BOTAN_DLL Invalid_OID : public Decoding_Error
/**
* Stream_IO_Error Exception
*/
-struct BOTAN_DLL Stream_IO_Error : public Exception
+struct BOTAN_PUBLIC_API(2,0) Stream_IO_Error : public Exception
{
explicit Stream_IO_Error(const std::string& err) :
Exception("I/O error: " + err)
@@ -223,7 +223,7 @@ struct BOTAN_DLL Stream_IO_Error : public Exception
/**
* No_Filesystem_Access Exception
*/
-struct BOTAN_DLL No_Filesystem_Access : public Exception
+struct BOTAN_PUBLIC_API(2,0) No_Filesystem_Access : public Exception
{
No_Filesystem_Access() : Exception("No filesystem access enabled.") {}
};
@@ -231,7 +231,7 @@ struct BOTAN_DLL No_Filesystem_Access : public Exception
/**
* Self Test Failure Exception
*/
-struct BOTAN_DLL Self_Test_Failure : public Internal_Error
+struct BOTAN_PUBLIC_API(2,0) Self_Test_Failure : public Internal_Error
{
explicit Self_Test_Failure(const std::string& err) :
Internal_Error("Self test failed: " + err)
@@ -241,7 +241,7 @@ struct BOTAN_DLL Self_Test_Failure : public Internal_Error
/**
* Not Implemented Exception
*/
-struct BOTAN_DLL Not_Implemented : public Exception
+struct BOTAN_PUBLIC_API(2,0) Not_Implemented : public Exception
{
explicit Not_Implemented(const std::string& err) :
Exception("Not implemented", err)
diff --git a/src/lib/utils/filesystem.h b/src/lib/utils/filesystem.h
index 419f94b99..a3e1b8191 100644
--- a/src/lib/utils/filesystem.h
+++ b/src/lib/utils/filesystem.h
@@ -14,7 +14,7 @@
namespace Botan {
-BOTAN_DLL std::vector<std::string> get_files_recursive(const std::string& dir);
+BOTAN_TEST_API std::vector<std::string> get_files_recursive(const std::string& dir);
}
diff --git a/src/lib/utils/http_util/http_util.h b/src/lib/utils/http_util/http_util.h
index c1cef4542..2a3863951 100644
--- a/src/lib/utils/http_util/http_util.h
+++ b/src/lib/utils/http_util/http_util.h
@@ -56,39 +56,39 @@ struct Response
/**
* HTTP_Error Exception
*/
-struct BOTAN_DLL HTTP_Error : public Exception
+struct BOTAN_PUBLIC_API(2,0) HTTP_Error : public Exception
{
explicit HTTP_Error(const std::string& msg) :
Exception("HTTP error " + msg)
{}
};
-BOTAN_DLL std::ostream& operator<<(std::ostream& o, const Response& resp);
+BOTAN_PUBLIC_API(2,0) std::ostream& operator<<(std::ostream& o, const Response& resp);
typedef std::function<std::string (const std::string&, const std::string&)> http_exch_fn;
-BOTAN_DLL Response http_sync(http_exch_fn fn,
+BOTAN_PUBLIC_API(2,0) Response http_sync(http_exch_fn fn,
const std::string& verb,
const std::string& url,
const std::string& content_type,
const std::vector<uint8_t>& body,
size_t allowable_redirects);
-BOTAN_DLL Response http_sync(const std::string& verb,
+BOTAN_PUBLIC_API(2,0) Response http_sync(const std::string& verb,
const std::string& url,
const std::string& content_type,
const std::vector<uint8_t>& body,
size_t allowable_redirects);
-BOTAN_DLL Response GET_sync(const std::string& url,
+BOTAN_PUBLIC_API(2,0) Response GET_sync(const std::string& url,
size_t allowable_redirects = 1);
-BOTAN_DLL Response POST_sync(const std::string& url,
+BOTAN_PUBLIC_API(2,0) Response POST_sync(const std::string& url,
const std::string& content_type,
const std::vector<uint8_t>& body,
size_t allowable_redirects = 1);
-BOTAN_DLL std::string url_encode(const std::string& url);
+BOTAN_PUBLIC_API(2,0) std::string url_encode(const std::string& url);
}
diff --git a/src/lib/utils/locking_allocator/locking_allocator.h b/src/lib/utils/locking_allocator/locking_allocator.h
index 806f9fa86..81e9234dc 100644
--- a/src/lib/utils/locking_allocator/locking_allocator.h
+++ b/src/lib/utils/locking_allocator/locking_allocator.h
@@ -14,7 +14,7 @@
namespace Botan {
-class BOTAN_DLL mlock_allocator
+class BOTAN_PUBLIC_API(2,0) mlock_allocator
{
public:
static mlock_allocator& instance();
diff --git a/src/lib/utils/mem_ops.h b/src/lib/utils/mem_ops.h
index 2d575d35e..58b87b8c7 100644
--- a/src/lib/utils/mem_ops.h
+++ b/src/lib/utils/mem_ops.h
@@ -29,7 +29,7 @@ namespace Botan {
* @param ptr a pointer to memory to scrub
* @param n the number of bytes pointed to by ptr
*/
-BOTAN_DLL void secure_scrub_memory(void* ptr, size_t n);
+BOTAN_PUBLIC_API(2,0) void secure_scrub_memory(void* ptr, size_t n);
/**
* Memory comparison, input insensitive
diff --git a/src/lib/utils/parsing.h b/src/lib/utils/parsing.h
index f4936bd68..32236236e 100644
--- a/src/lib/utils/parsing.h
+++ b/src/lib/utils/parsing.h
@@ -24,7 +24,7 @@ namespace Botan {
* @param scan_name the name
* @return the name components
*/
-BOTAN_DLL std::vector<std::string>
+BOTAN_PUBLIC_API(2,0) std::vector<std::string>
parse_algorithm_name(const std::string& scan_name);
/**
@@ -33,7 +33,7 @@ parse_algorithm_name(const std::string& scan_name);
* @param delim the delimitor
* @return string split by delim
*/
-BOTAN_DLL std::vector<std::string> split_on(
+BOTAN_PUBLIC_API(2,0) std::vector<std::string> split_on(
const std::string& str, char delim);
/**
@@ -41,14 +41,14 @@ BOTAN_DLL std::vector<std::string> split_on(
* @param str the input string
* @param pred the predicate
*/
-BOTAN_DLL std::vector<std::string>
+BOTAN_PUBLIC_API(2,0) std::vector<std::string>
split_on_pred(const std::string& str,
std::function<bool (char)> pred);
/**
* Erase characters from a string
*/
-BOTAN_DLL std::string erase_chars(const std::string& str, const std::set<char>& chars);
+BOTAN_PUBLIC_API(2,0) std::string erase_chars(const std::string& str, const std::set<char>& chars);
/**
* Replace a character in a string
@@ -57,7 +57,7 @@ BOTAN_DLL std::string erase_chars(const std::string& str, const std::set<char>&
* @param to_char the character to replace it with
* @return str with all instances of from_char replaced by to_char
*/
-BOTAN_DLL std::string replace_char(const std::string& str,
+BOTAN_PUBLIC_API(2,0) std::string replace_char(const std::string& str,
char from_char,
char to_char);
@@ -68,7 +68,7 @@ BOTAN_DLL std::string replace_char(const std::string& str,
* @param to_char the character to replace it with
* @return str with all instances of from_chars replaced by to_char
*/
-BOTAN_DLL std::string replace_chars(const std::string& str,
+BOTAN_PUBLIC_API(2,0) std::string replace_chars(const std::string& str,
const std::set<char>& from_chars,
char to_char);
@@ -78,7 +78,7 @@ BOTAN_DLL std::string replace_chars(const std::string& str,
* @param delim the delimitor
* @return string joined by delim
*/
-BOTAN_DLL std::string string_join(const std::vector<std::string>& strs,
+BOTAN_PUBLIC_API(2,0) std::string string_join(const std::vector<std::string>& strs,
char delim);
/**
@@ -86,7 +86,7 @@ BOTAN_DLL std::string string_join(const std::vector<std::string>& strs,
* @param oid the OID in string form
* @return OID components
*/
-BOTAN_DLL std::vector<uint32_t> parse_asn1_oid(const std::string& oid);
+BOTAN_PUBLIC_API(2,0) std::vector<uint32_t> parse_asn1_oid(const std::string& oid);
/**
* Compare two names using the X.509 comparison algorithm
@@ -94,7 +94,7 @@ BOTAN_DLL std::vector<uint32_t> parse_asn1_oid(const std::string& oid);
* @param name2 the second name
* @return true if name1 is the same as name2 by the X.509 comparison rules
*/
-BOTAN_DLL bool x500_name_cmp(const std::string& name1,
+BOTAN_PUBLIC_API(2,0) bool x500_name_cmp(const std::string& name1,
const std::string& name2);
/**
@@ -102,7 +102,7 @@ BOTAN_DLL bool x500_name_cmp(const std::string& name1,
* @param str the string to convert
* @return number value of the string
*/
-BOTAN_DLL uint32_t to_u32bit(const std::string& str);
+BOTAN_PUBLIC_API(2,0) uint32_t to_u32bit(const std::string& str);
/**
* Convert a string to a number
@@ -116,27 +116,27 @@ BOTAN_DLL uint16_t to_uint16(const std::string& str);
* @param timespec the time specification
* @return number of seconds represented by timespec
*/
-BOTAN_DLL uint32_t timespec_to_u32bit(const std::string& timespec);
+BOTAN_PUBLIC_API(2,0) uint32_t timespec_to_u32bit(const std::string& timespec);
/**
* Convert a string representation of an IPv4 address to a number
* @param ip_str the string representation
* @return integer IPv4 address
*/
-BOTAN_DLL uint32_t string_to_ipv4(const std::string& ip_str);
+BOTAN_PUBLIC_API(2,0) uint32_t string_to_ipv4(const std::string& ip_str);
/**
* Convert an IPv4 address to a string
* @param ip_addr the IPv4 address to convert
* @return string representation of the IPv4 address
*/
-BOTAN_DLL std::string ipv4_to_string(uint32_t ip_addr);
+BOTAN_PUBLIC_API(2,0) std::string ipv4_to_string(uint32_t ip_addr);
-std::map<std::string, std::string> BOTAN_DLL read_cfg(std::istream& is);
+std::map<std::string, std::string> BOTAN_PUBLIC_API(2,0) read_cfg(std::istream& is);
-std::string BOTAN_DLL clean_ws(const std::string& s);
+std::string BOTAN_PUBLIC_API(2,0) clean_ws(const std::string& s);
-bool BOTAN_DLL host_wildcard_match(const std::string& wildcard, const std::string& host);
+bool BOTAN_PUBLIC_API(2,0) host_wildcard_match(const std::string& wildcard, const std::string& host);
}
diff --git a/src/lib/utils/sqlite3/sqlite3.h b/src/lib/utils/sqlite3/sqlite3.h
index 5f262d8e6..5715f07c8 100644
--- a/src/lib/utils/sqlite3/sqlite3.h
+++ b/src/lib/utils/sqlite3/sqlite3.h
@@ -15,7 +15,7 @@ class sqlite3_stmt;
namespace Botan {
-class BOTAN_DLL Sqlite3_Database : public SQL_Database
+class BOTAN_PUBLIC_API(2,0) Sqlite3_Database : public SQL_Database
{
public:
Sqlite3_Database(const std::string& file);
diff --git a/src/lib/utils/version.h b/src/lib/utils/version.h
index 834b719af..1f364f952 100644
--- a/src/lib/utils/version.h
+++ b/src/lib/utils/version.h
@@ -22,9 +22,9 @@ namespace Botan {
* No particular format should be assumed.
* @return version string
*/
-BOTAN_DLL std::string version_string();
+BOTAN_PUBLIC_API(2,0) std::string version_string();
-BOTAN_DLL const char* version_cstr();
+BOTAN_PUBLIC_API(2,0) const char* version_cstr();
/**
* Return the date this version of botan was released, in an integer of
@@ -34,25 +34,25 @@ BOTAN_DLL const char* version_cstr();
*
* @return release date, or zero if unreleased
*/
-BOTAN_DLL uint32_t version_datestamp();
+BOTAN_PUBLIC_API(2,0) uint32_t version_datestamp();
/**
* Get the major version number.
* @return major version number
*/
-BOTAN_DLL uint32_t version_major();
+BOTAN_PUBLIC_API(2,0) uint32_t version_major();
/**
* Get the minor version number.
* @return minor version number
*/
-BOTAN_DLL uint32_t version_minor();
+BOTAN_PUBLIC_API(2,0) uint32_t version_minor();
/**
* Get the patch number.
* @return patch number
*/
-BOTAN_DLL uint32_t version_patch();
+BOTAN_PUBLIC_API(2,0) uint32_t version_patch();
/**
* Usable for checking that the DLL version loaded at runtime exactly
@@ -60,7 +60,7 @@ BOTAN_DLL uint32_t version_patch();
* values. Returns the empty string if an exact match, otherwise an
* appropriate message. Added with 1.11.26.
*/
-BOTAN_DLL std::string
+BOTAN_PUBLIC_API(2,0) std::string
runtime_version_check(uint32_t major,
uint32_t minor,
uint32_t patch);