aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/log.txt2
-rwxr-xr-xdoc/scripts/configure.pl6
-rw-r--r--src/engine/openssl/ossl_md.cpp10
-rw-r--r--src/modes/xts/xts.cpp8
4 files changed, 19 insertions, 7 deletions
diff --git a/doc/log.txt b/doc/log.txt
index a84e72d62..e1b7a13c1 100644
--- a/doc/log.txt
+++ b/doc/log.txt
@@ -5,6 +5,8 @@
- Add Rivest's package transform (an all or nothing transform)
- Minor speedups to the Turing key schedule
+* 1.8.7-pre, 2009-??-??
+
* 1.8.6, 2009-08-13
- Add Cryptobox, a set of simple password-based encryption routines
- Only read world-readable files when walking /proc for entropy
diff --git a/doc/scripts/configure.pl b/doc/scripts/configure.pl
index 4859ede74..592eb2bff 100755
--- a/doc/scripts/configure.pl
+++ b/doc/scripts/configure.pl
@@ -12,12 +12,12 @@ use File::Find;
use Sys::Hostname;
my $MAJOR_VERSION = 1;
-my $MINOR_VERSION = 9;
-my $PATCH_VERSION = 0;
+my $MINOR_VERSION = 8;
+my $PATCH_VERSION = 7;
my $VERSION_SUFFIX = '-pre';
-my $SO_PATCH_VERSION = 0;
+my $SO_PATCH_VERSION = 7;
my $VERSION_STRING = "$MAJOR_VERSION.$MINOR_VERSION.$PATCH_VERSION$VERSION_SUFFIX";
my $SO_VERSION_STRING = "$MAJOR_VERSION.$MINOR_VERSION.$SO_PATCH_VERSION$VERSION_SUFFIX";
diff --git a/src/engine/openssl/ossl_md.cpp b/src/engine/openssl/ossl_md.cpp
index 08672cfc8..7c8fb678c 100644
--- a/src/engine/openssl/ossl_md.cpp
+++ b/src/engine/openssl/ossl_md.cpp
@@ -95,20 +95,30 @@ EVP_HashFunction::~EVP_HashFunction()
HashFunction* OpenSSL_Engine::find_hash(const SCAN_Name& request,
Algorithm_Factory&) const
{
+#ifndef OPENSSL_NO_SHA
if(request.algo_name() == "SHA-160")
return new EVP_HashFunction(EVP_sha1(), "SHA-160");
+#endif
+#ifndef OPENSSL_NO_MD2
if(request.algo_name() == "MD2")
return new EVP_HashFunction(EVP_md2(), "MD2");
+#endif
+#ifndef OPENSSL_NO_MD4
if(request.algo_name() == "MD4")
return new EVP_HashFunction(EVP_md4(), "MD4");
+#endif
+#ifndef OPENSSL_NO_MD5
if(request.algo_name() == "MD5")
return new EVP_HashFunction(EVP_md5(), "MD5");
+#endif
+#ifndef OPENSSL_NO_RIPEMD
if(request.algo_name() == "RIPEMD-160")
return new EVP_HashFunction(EVP_ripemd160(), "RIPEMD-160");
+#endif
return 0;
}
diff --git a/src/modes/xts/xts.cpp b/src/modes/xts/xts.cpp
index 8819c85dc..8780ae166 100644
--- a/src/modes/xts/xts.cpp
+++ b/src/modes/xts/xts.cpp
@@ -41,7 +41,6 @@ XTS_Encryption::XTS_Encryption(BlockCipher* ciph) : cipher(ciph)
throw std::invalid_argument("Bad cipher for XTS: " + cipher->name());
cipher2 = cipher->clone();
- buffer.create(cipher->BLOCK_SIZE);
tweak.create(cipher->BLOCK_SIZE);
buffer.create(2 * cipher->BLOCK_SIZE);
position = 0;
@@ -58,7 +57,6 @@ XTS_Encryption::XTS_Encryption(BlockCipher* ciph,
throw std::invalid_argument("Bad cipher for XTS: " + cipher->name());
cipher2 = cipher->clone();
- buffer.create(cipher->BLOCK_SIZE);
tweak.create(cipher->BLOCK_SIZE);
buffer.create(2 * cipher->BLOCK_SIZE);
position = 0;
@@ -188,6 +186,8 @@ void XTS_Encryption::end_msg()
send(buffer, position);
}
+
+ position = 0;
}
/*
@@ -197,7 +197,6 @@ XTS_Decryption::XTS_Decryption(BlockCipher* ciph)
{
cipher = ciph;
cipher2 = ciph->clone();
- buffer.create(cipher->BLOCK_SIZE);
tweak.create(cipher->BLOCK_SIZE);
buffer.create(2 * cipher->BLOCK_SIZE);
position = 0;
@@ -212,7 +211,6 @@ XTS_Decryption::XTS_Decryption(BlockCipher* ciph,
{
cipher = ciph;
cipher2 = ciph->clone();
- buffer.create(cipher->BLOCK_SIZE);
tweak.create(cipher->BLOCK_SIZE);
buffer.create(2 * cipher->BLOCK_SIZE);
position = 0;
@@ -339,6 +337,8 @@ void XTS_Decryption::end_msg()
send(buffer, position);
}
+
+ position = 0;
}
}