summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authorNicolas "Pixel" Noble <pixel@nobis-crew.org>2014-05-30 01:42:36 -0700
committerNicolas "Pixel" Noble <pixel@nobis-crew.org>2014-05-30 01:42:36 -0700
commit15dfcf5abaacb3885859dcbe5fa2c29cf259cb0d (patch)
tree89624031de84d431b691a27290eda42163d68cb0 /includes
parentb101fbdf0d8b1153f7bea58bc97e773e1016b7cc (diff)
Hardened Base64, making tomcrypt to properly generate secure random numbers under windows, and ditched tomcryptmath for tommath.
Diffstat (limited to 'includes')
-rw-r--r--includes/Base64.h2
-rw-r--r--includes/BigInt.h10
2 files changed, 11 insertions, 1 deletions
diff --git a/includes/Base64.h b/includes/Base64.h
index d039c73..8d0b71d 100644
--- a/includes/Base64.h
+++ b/includes/Base64.h
@@ -7,7 +7,7 @@ namespace Balau {
class Base64 {
public:
static String encode(const uint8_t * data, int len);
- static int decode(const String & str_in, uint8_t * data_out);
+ static int decode(const String & str_in, uint8_t * data_out, size_t outLen = static_cast<size_t>(-1));
static const double ratio;
private:
diff --git a/includes/BigInt.h b/includes/BigInt.h
index ae5b0f7..3a31b2e 100644
--- a/includes/BigInt.h
+++ b/includes/BigInt.h
@@ -30,6 +30,9 @@ class BigInt {
uint32_t to_uint32() const throw (GeneralException);
int32_t to_int32() const throw (GeneralException);
+ BigInt operator^(const BigInt &) const throw (GeneralException);
+ BigInt operator|(const BigInt &) const throw (GeneralException);
+ BigInt operator&(const BigInt &) const throw (GeneralException);
BigInt operator+(unsigned int) const throw (GeneralException);
BigInt operator+(const BigInt &) const throw (GeneralException);
BigInt operator-(unsigned int) const throw (GeneralException);
@@ -41,6 +44,9 @@ class BigInt {
BigInt operator<<(unsigned int) const throw (GeneralException);
BigInt operator>>(unsigned int) const;
+ BigInt & operator^=(const BigInt &) throw (GeneralException);
+ BigInt & operator|=(const BigInt &) throw (GeneralException);
+ BigInt & operator&=(const BigInt &) throw (GeneralException);
BigInt & operator+=(unsigned int) throw (GeneralException);
BigInt & operator+=(const BigInt &) throw (GeneralException);
BigInt & operator-=(unsigned int) throw (GeneralException);
@@ -105,6 +111,10 @@ class BigInt {
void exportBin(void *) const throw (GeneralException);
void importBin(const void *, size_t) throw (GeneralException);
+ size_t exportUSize() const;
+ void exportUBin(void *) const throw (GeneralException);
+ void importUBin(const void *, size_t) throw (GeneralException);
+
String toString(int radix = 10) const;
char * makeString(int radix = 10) const;