The unified diff between revisions [92f17752..] and [4e40e885..] is displayed below. It can also be downloaded as a raw diff.
This diff has been restricted to the following files: 'include/numthry.h'
#
#
# patch "include/numthry.h"
# from [28f9880e0625b4df81960c9596a80ebed49ff0ae]
# to [4577607d6acbf159d1506c22fb73c47a6b237338]
#
============================================================
--- include/numthry.h 28f9880e0625b4df81960c9596a80ebed49ff0ae
+++ include/numthry.h 4577607d6acbf159d1506c22fb73c47a6b237338
@@ -1,6 +1,6 @@
/*************************************************
* Number Theory Header File *
-* (C) 1999-2006 The Botan Project *
+* (C) 1999-2007 Jack Lloyd *
*************************************************/
#ifndef BOTAN_NUMBTHRY_H__
@@ -15,52 +15,50 @@ namespace Botan {
/*************************************************
* Fused Arithmetic Operations *
*************************************************/
-BigInt mul_add(const BigInt&, const BigInt&, const BigInt&);
-BigInt sub_mul(const BigInt&, const BigInt&, const BigInt&);
+BigInt BOTAN_DLL mul_add(const BigInt&, const BigInt&, const BigInt&);
+BigInt BOTAN_DLL sub_mul(const BigInt&, const BigInt&, const BigInt&);
/*************************************************
* Number Theory Functions *
*************************************************/
inline BigInt abs(const BigInt& n) { return n.abs(); }
-void divide(const BigInt&, const BigInt&, BigInt&, BigInt&);
+void BOTAN_DLL divide(const BigInt&, const BigInt&, BigInt&, BigInt&);
-BigInt gcd(const BigInt&, const BigInt&);
-BigInt lcm(const BigInt&, const BigInt&);
+BigInt BOTAN_DLL gcd(const BigInt&, const BigInt&);
+BigInt BOTAN_DLL lcm(const BigInt&, const BigInt&);
-BigInt square(const BigInt&);
-BigInt inverse_mod(const BigInt&, const BigInt&);
-s32bit jacobi(const BigInt&, const BigInt&);
+BigInt BOTAN_DLL square(const BigInt&);
+BigInt BOTAN_DLL inverse_mod(const BigInt&, const BigInt&);
+s32bit BOTAN_DLL jacobi(const BigInt&, const BigInt&);
-BigInt power_mod(const BigInt&, const BigInt&, const BigInt&);
+BigInt BOTAN_DLL power_mod(const BigInt&, const BigInt&, const BigInt&);
/*************************************************
* Utility Functions *
*************************************************/
-u32bit low_zero_bits(const BigInt&);
+u32bit BOTAN_DLL low_zero_bits(const BigInt&);
/*************************************************
* Primality Testing *
*************************************************/
-bool check_prime(const BigInt&);
-bool is_prime(const BigInt&);
-bool verify_prime(const BigInt&);
+bool BOTAN_DLL check_prime(const BigInt&);
+bool BOTAN_DLL is_prime(const BigInt&);
+bool BOTAN_DLL verify_prime(const BigInt&);
-s32bit simple_primality_tests(const BigInt&);
-bool passes_mr_tests(const BigInt&, u32bit = 1);
-bool run_primality_tests(const BigInt&, u32bit = 1);
+s32bit BOTAN_DLL simple_primality_tests(const BigInt&);
+bool BOTAN_DLL passes_mr_tests(const BigInt&, u32bit = 1);
+bool BOTAN_DLL run_primality_tests(const BigInt&, u32bit = 1);
/*************************************************
* Random Number Generation *
*************************************************/
-BigInt random_integer(u32bit);
-BigInt random_integer(const BigInt&, const BigInt&);
-BigInt random_prime(u32bit, const BigInt& = 1, u32bit = 1, u32bit = 2);
-BigInt random_safe_prime(u32bit);
+BigInt BOTAN_DLL random_integer(u32bit);
+BigInt BOTAN_DLL random_integer(const BigInt&, const BigInt&);
+BigInt BOTAN_DLL random_prime(u32bit, const BigInt& = 1,
+ u32bit = 1, u32bit = 2);
-SecureVector<byte> generate_dsa_primes(BigInt&, BigInt&, u32bit);
-bool generate_dsa_primes(BigInt&, BigInt&, const byte[], u32bit, u32bit,
- u32bit = 0);
+BigInt BOTAN_DLL random_safe_prime(u32bit);
/*************************************************
* Prime Numbers *
@@ -68,13 +66,13 @@ const u32bit PRIME_PRODUCTS_TABLE_SIZE =
const u32bit PRIME_TABLE_SIZE = 6541;
const u32bit PRIME_PRODUCTS_TABLE_SIZE = 256;
-extern const u16bit PRIMES[];
+extern const u16bit BOTAN_DLL PRIMES[];
extern const u64bit PRIME_PRODUCTS[];
/*************************************************
* Miller-Rabin Primality Tester *
*************************************************/
-class MillerRabin_Test
+class BOTAN_DLL MillerRabin_Test
{
public:
bool passes_test(const BigInt&);