[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Monotone-commits-diffs] net.venge.monotone.issue-182: 754a7a4e12aafce0c
From: |
code |
Subject: |
[Monotone-commits-diffs] net.venge.monotone.issue-182: 754a7a4e12aafce0cf45ab00329f0b6513502066 |
Date: |
Mon, 12 Sep 2011 13:09:11 +0200 (CEST) |
revision: 754a7a4e12aafce0cf45ab00329f0b6513502066
date: 2011-09-07T17:19:40
author: address@hidden
branch: net.venge.monotone.issue-182
changelog:
Make monotone compile against botan 1.10.1.
manifest:
format_version "1"
new_manifest [d6ed932d3a40541dbf2860968d5c17433e08e6f6]
old_revision [7cbb20501714be7f25f30734da82d41c7ac427ca]
patch "src/database.cc"
from [4c259f963c440fc95564dfec99b2f832f0bad643]
to [87efeeff2d3263ba98af684a4022f1897434ed2d]
patch "src/gzip.cc"
from [e7c19bee910e3d421fd073933810ec52092b1d9b]
to [bab290412cff6031b2d3bf9d1439a08499d39640]
patch "src/gzip.hh"
from [649dfc0b250954f39c0f73870f8bec3f32f7fa43]
to [f462dfc1df71ae1e9a8203606fd29d9e0eda9b2a]
patch "src/key_packet.cc"
from [d1306df89dd684badac02c03744cd446381c07d3]
to [c97262d161b23c9640972188979669b3e95afe7b]
patch "src/key_store.cc"
from [64c4c4bed1fadc26b51207b9f61343f9dd7d3c6e]
to [6f2f1e0a60f5ee7d322539ca7a3c0acdc69617d7]
patch "src/packet.cc"
from [f61360ed2524fdf53411bd24d022a2a3c9e6e9c7]
to [58e2b3070821fb540fc8fe8db92564579a25ce88]
patch "src/sha1.cc"
from [5e1aa972d7c7d66e06320b039989652b830dcd75]
to [42e48b22fd88b25e0d38d4f91e1f13f8a83c7120]
patch "src/ssh_agent.cc"
from [6d188e7012a0b82f782563b09bbd7adf3f70cf75]
to [4a0dcab873559e934e41c5f220b5434d35600d9b]
============================================================
--- src/database.cc 4c259f963c440fc95564dfec99b2f832f0bad643
+++ src/database.cc 87efeeff2d3263ba98af684a4022f1897434ed2d
@@ -3425,9 +3425,8 @@ database::encrypt_rsa(key_id const & pub
rsa_pub_key pub;
get_key(pub_id, pub);
- SecureVector<Botan::byte> pub_block;
- pub_block.set(reinterpret_cast<Botan::byte const *>(pub().data()),
- pub().size());
+ SecureVector<Botan::byte> pub_block
+ (reinterpret_cast<Botan::byte const *>(pub().data()), pub().size());
shared_ptr<X509_PublicKey> x509_key(Botan::X509::load_key(pub_block));
shared_ptr<RSA_PublicKey> pub_key
@@ -3471,14 +3470,13 @@ database::check_signature(key_id const &
else
{
rsa_pub_key pub;
- SecureVector<Botan::byte> pub_block;
if (!public_key_exists(id))
return cert_unknown;
get_key(id, pub);
- pub_block.set(reinterpret_cast<Botan::byte const *>(pub().data()),
- pub().size());
+ SecureVector<Botan::byte> pub_block
+ (reinterpret_cast<Botan::byte const *>(pub().data()), pub().size());
L(FL("building verifier for %d-byte pub key") % pub_block.size());
shared_ptr<X509_PublicKey> x509_key(Botan::X509::load_key(pub_block));
============================================================
--- src/packet.cc f61360ed2524fdf53411bd24d022a2a3c9e6e9c7
+++ src/packet.cc 58e2b3070821fb540fc8fe8db92564579a25ce88
@@ -156,8 +156,8 @@ namespace
void validate_public_key_data(string const & name, string const & keydata) const
{
string decoded = decode_base64_as<string>(keydata, origin::user);
- Botan::SecureVector<Botan::byte> key_block;
- key_block.set(reinterpret_cast<Botan::byte const *>(decoded.c_str()), decoded.size());
+ Botan::SecureVector<Botan::byte> key_block
+ (reinterpret_cast<Botan::byte const *>(decoded.c_str()), decoded.size());
try
{
Botan::X509::load_key(key_block);
============================================================
--- src/key_store.cc 64c4c4bed1fadc26b51207b9f61343f9dd7d3c6e
+++ src/key_store.cc 6f2f1e0a60f5ee7d322539ca7a3c0acdc69617d7
@@ -856,9 +856,9 @@ key_store::make_signature(database & db,
{
if (agent.connected()) {
//grab the monotone public key as an RSA_PublicKey
- SecureVector<Botan::byte> pub_block;
- pub_block.set(reinterpret_cast<Botan::byte const *>(key.pub().data()),
- key.pub().size());
+ SecureVector<Botan::byte> pub_block
+ (reinterpret_cast<Botan::byte const *>(key.pub().data()),
+ key.pub().size());
L(FL("make_signature: building %d-byte pub key") % pub_block.size());
shared_ptr<X509_PublicKey> x509_key =
shared_ptr<X509_PublicKey>(Botan::X509::load_key(pub_block));
@@ -1031,8 +1031,14 @@ key_store_state::migrate_old_key_pair
for (;;)
try
{
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,9,11)
+ arc4_key.resize(phrase().size());
+ arc4_key.copy(reinterpret_cast<Botan::byte const *>(phrase().data()),
+ phrase().size());
+#else
arc4_key.set(reinterpret_cast<Botan::byte const *>(phrase().data()),
phrase().size());
+#endif
Pipe arc4_decryptor(get_cipher("ARC4", arc4_key, Botan::DECRYPTION));
============================================================
--- src/sha1.cc 5e1aa972d7c7d66e06320b039989652b830dcd75
+++ src/sha1.cc 42e48b22fd88b25e0d38d4f91e1f13f8a83c7120
@@ -50,9 +50,12 @@ CMD_HIDDEN(benchmark_sha1, "benchmark_sh
Botan::Default_Benchmark_Timer timer;
std::map<std::string, double> results =
Botan::algorithm_benchmark("SHA-1", milliseconds, timer, rng, af);
+#elif BOTAN_VERSION_CODE < BOTAN_VERSION_CODE_FOR(1,9,11)
+ std::map<std::string, double> results =
+ Botan::algorithm_benchmark("SHA-1", milliseconds, rng, af);
#else
std::map<std::string, double> results =
- Botan::algorithm_benchmark("SHA-1", milliseconds, rng, af);
+ Botan::algorithm_benchmark("SHA-1", af, rng, milliseconds, 16);
#endif
for(std::map<std::string, double>::const_iterator i = results.begin();
============================================================
--- src/ssh_agent.cc 6d188e7012a0b82f782563b09bbd7adf3f70cf75
+++ src/ssh_agent.cc 4a0dcab873559e934e41c5f220b5434d35600d9b
@@ -385,9 +385,9 @@ ssh_agent::has_key(const keypair & key)
ssh_agent::has_key(const keypair & key)
{
//grab the monotone public key as an RSA_PublicKey
- SecureVector<Botan::byte> pub_block;
- pub_block.set(reinterpret_cast<Botan::byte const *>((key.pub)().data()),
- (key.pub)().size());
+ SecureVector<Botan::byte> pub_block
+ (reinterpret_cast<Botan::byte const *>((key.pub)().data()),
+ (key.pub)().size());
L(FL("has_key: building %d-byte pub key") % pub_block.size());
shared_ptr<X509_PublicKey> x509_key =
shared_ptr<X509_PublicKey>(Botan::X509::load_key(pub_block));
============================================================
--- src/gzip.cc e7c19bee910e3d421fd073933810ec52092b1d9b
+++ src/gzip.cc bab290412cff6031b2d3bf9d1439a08499d39640
@@ -137,7 +137,7 @@ void Gzip_Compression::start_msg()
/*************************************************
* Compress Input with Gzip *
*************************************************/
-void Gzip_Compression::write(const byte input[], u32bit length)
+void Gzip_Compression::write(const byte input[], filter_length_t length)
{
count += length;
@@ -267,7 +267,7 @@ void Gzip_Decompression::start_msg()
/*************************************************
* Decompress Input with Gzip *
*************************************************/
-void Gzip_Decompression::write(const byte input[], u32bit length)
+void Gzip_Decompression::write(const byte input[], filter_length_t length)
{
if(length) no_writes = false;
@@ -284,8 +284,8 @@ void Gzip_Decompression::write(const byt
// Check the gzip header
if (pos < sizeof(GZIP::GZIP_HEADER))
{
- u32bit len = std::min((u32bit)sizeof(GZIP::GZIP_HEADER)-pos, length);
- u32bit cmplen = len;
+ filter_length_t len = std::min((filter_length_t)sizeof(GZIP::GZIP_HEADER)-pos, length);
+ filter_length_t cmplen = len;
// The last byte is the OS flag - we don't care about that
if (pos + len - 1 >= GZIP::HEADER_POS_OS)
cmplen--;
@@ -346,8 +346,14 @@ u32bit Gzip_Decompression::eat_footer(co
if (footer.size() >= GZIP::FOOTER_LENGTH)
throw Decoding_Error("Gzip_Decompression: Data integrity error in footer");
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,9,11)
+ size_t eat_len = std::min(GZIP::FOOTER_LENGTH-footer.size(),
+ static_cast<size_t>(length));
+ footer += std::make_pair(input, eat_len);
+#else
u32bit eat_len = std::min(GZIP::FOOTER_LENGTH-footer.size(), length);
footer.append(input, eat_len);
+#endif
if (footer.size() == GZIP::FOOTER_LENGTH)
{
@@ -377,7 +383,12 @@ void Gzip_Decompression::check_footer()
for (int i = 0; i < 4; i++)
buf[3-i] = tmpbuf[i];
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,9,11)
+ tmpbuf.resize(4);
+ tmpbuf.copy(footer.begin(), 4);
+#else
tmpbuf.set(footer.begin(), 4);
+#endif
if (buf != tmpbuf)
throw Decoding_Error("Gzip_Decompression: Data integrity error - CRC32 error");
@@ -412,7 +423,11 @@ void Gzip_Decompression::clear()
no_writes = true;
inflateReset(&(zlib->stream));
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,9,11)
+ footer.clear();
+#else
footer.destroy();
+#endif
pos = 0;
datacount = 0;
}
============================================================
--- src/gzip.hh 649dfc0b250954f39c0f73870f8bec3f32f7fa43
+++ src/gzip.hh f462dfc1df71ae1e9a8203606fd29d9e0eda9b2a
@@ -7,6 +7,7 @@
#ifndef BOTAN_EXT_GZIP_H__
#define BOTAN_EXT_GZIP_H__
+#include <botan/version.h>
#include <botan/filter.h>
#include <botan/pipe.h>
@@ -30,13 +31,19 @@ namespace GZIP {
}
+#if BOTAN_VERSION_CODE >= BOTAN_VERSION_CODE_FOR(1,9,11)
+ typedef size_t filter_length_t;
+#else
+ typedef u32bit filter_length_t;
+#endif
+
/*************************************************
* Gzip Compression Filter *
*************************************************/
class Gzip_Compression : public Filter
{
public:
- void write(const byte input[], u32bit length);
+ void write(const byte input[], filter_length_t length);
void start_msg();
void end_msg();
std::string name() const { return "Gzip_Compression"; }
@@ -60,7 +67,7 @@ class Gzip_Decompression : public Filter
class Gzip_Decompression : public Filter
{
public:
- void write(const byte input[], u32bit length);
+ void write(const byte input[], filter_length_t length);
void start_msg();
void end_msg();
std::string name() const { return "Gzip_Decompression"; }
============================================================
--- src/key_packet.cc d1306df89dd684badac02c03744cd446381c07d3
+++ src/key_packet.cc c97262d161b23c9640972188979669b3e95afe7b
@@ -106,8 +106,8 @@ namespace
void validate_public_key_data(string const & name, string const & keydata) const
{
string decoded = decode_base64_as<string>(keydata, origin::user);
- Botan::SecureVector<Botan::byte> key_block;
- key_block.set(reinterpret_cast<Botan::byte const *>(decoded.c_str()), decoded.size());
+ Botan::SecureVector<Botan::byte> key_block
+ (reinterpret_cast<Botan::byte const *>(decoded.c_str()), decoded.size());
try
{
Botan::X509::load_key(key_block);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Monotone-commits-diffs] net.venge.monotone.issue-182: 754a7a4e12aafce0cf45ab00329f0b6513502066,
code <=