BIND 10 trac781, updated. 05c6223cf7f145ec6e96cffed0561a03387b7367 [trac781] use shared_ptr with deleter instead of scoped_ptr
BIND 10 source code commits
bind10-changes at lists.isc.org
Wed Apr 27 07:37:09 UTC 2011
The branch, trac781 has been updated
via 05c6223cf7f145ec6e96cffed0561a03387b7367 (commit)
from 7be4a7e7f859881a3e5a3f4268dbdbc3468b7214 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 05c6223cf7f145ec6e96cffed0561a03387b7367
Author: Jelte Jansen <jelte at isc.org>
Date: Wed Apr 27 09:36:59 2011 +0200
[trac781] use shared_ptr with deleter instead of scoped_ptr
-----------------------------------------------------------------------
Summary of changes:
src/lib/cryptolink/cryptolink.h | 1 +
src/lib/cryptolink/tests/crypto_unittests.cc | 44 ++++++++++++++-----------
2 files changed, 26 insertions(+), 19 deletions(-)
-----------------------------------------------------------------------
diff --git a/src/lib/cryptolink/cryptolink.h b/src/lib/cryptolink/cryptolink.h
index 0436edb..2a946d7 100644
--- a/src/lib/cryptolink/cryptolink.h
+++ b/src/lib/cryptolink/cryptolink.h
@@ -27,6 +27,7 @@
namespace isc {
namespace cryptolink {
+/// \brief Hash algorithm identifiers
enum HashAlgorithm {
MD5 = 0, ///< MD5
SHA1 = 1, ///< SHA-1
diff --git a/src/lib/cryptolink/tests/crypto_unittests.cc b/src/lib/cryptolink/tests/crypto_unittests.cc
index cf40270..07130bd 100644
--- a/src/lib/cryptolink/tests/crypto_unittests.cc
+++ b/src/lib/cryptolink/tests/crypto_unittests.cc
@@ -21,7 +21,7 @@
#include <dns/buffer.h>
#include <exceptions/exceptions.h>
-#include <boost/scoped_ptr.hpp>
+#include <boost/shared_ptr.hpp>
using namespace isc::dns;
using namespace isc::cryptolink;
@@ -88,9 +88,10 @@ namespace {
CryptoLink& crypto = CryptoLink::getCryptoLink();
// Sign it
- boost::scoped_ptr<HMAC> hmac_sign(crypto.createHMAC(secret,
+ boost::shared_ptr<HMAC> hmac_sign(crypto.createHMAC(secret,
secret_len,
- hash_algorithm));
+ hash_algorithm),
+ deleteHMAC);
hmac_sign->update(data_buf.getData(), data_buf.getLength());
hmac_sign->sign(hmac_sig, hmac_len);
@@ -98,9 +99,10 @@ namespace {
checkBuffer(hmac_sig, expected_hmac, hmac_len);
// Check whether we can verify it ourselves
- boost::scoped_ptr<HMAC> hmac_verify(crypto.createHMAC(secret,
+ boost::shared_ptr<HMAC> hmac_verify(crypto.createHMAC(secret,
secret_len,
- hash_algorithm));
+ hash_algorithm),
+ deleteHMAC);
hmac_verify->update(data_buf.getData(), data_buf.getLength());
EXPECT_TRUE(hmac_verify->verify(hmac_sig.getData(),
hmac_sig.getLength()));
@@ -119,17 +121,19 @@ namespace {
const uint8_t* expected_hmac,
size_t hmac_len) {
CryptoLink& crypto = CryptoLink::getCryptoLink();
- boost::scoped_ptr<HMAC> hmac_sign(crypto.createHMAC(secret,
+ boost::shared_ptr<HMAC> hmac_sign(crypto.createHMAC(secret,
secret_len,
- hash_algorithm));
+ hash_algorithm),
+ deleteHMAC);
hmac_sign->update(data.c_str(), data.size());
std::vector<uint8_t> sig = hmac_sign->sign(hmac_len);
ASSERT_EQ(hmac_len, sig.size());
checkData(&sig[0], expected_hmac, hmac_len);
- boost::scoped_ptr<HMAC> hmac_verify(crypto.createHMAC(secret,
+ boost::shared_ptr<HMAC> hmac_verify(crypto.createHMAC(secret,
secret_len,
- hash_algorithm));
+ hash_algorithm),
+ deleteHMAC);
hmac_verify->update(data.c_str(), data.size());
EXPECT_TRUE(hmac_verify->verify(&sig[0], sig.size()));
@@ -144,9 +148,10 @@ namespace {
const uint8_t* expected_hmac,
size_t hmac_len) {
CryptoLink& crypto = CryptoLink::getCryptoLink();
- boost::scoped_ptr<HMAC> hmac_sign(crypto.createHMAC(secret,
+ boost::shared_ptr<HMAC> hmac_sign(crypto.createHMAC(secret,
secret_len,
- hash_algorithm));
+ hash_algorithm),
+ deleteHMAC);
hmac_sign->update(data.c_str(), data.size());
// note: this is not exception-safe, and can leak, but
@@ -157,9 +162,10 @@ namespace {
hmac_sign->sign(sig, hmac_len);
checkData(sig, expected_hmac, hmac_len);
- boost::scoped_ptr<HMAC> hmac_verify(crypto.createHMAC(secret,
+ boost::shared_ptr<HMAC> hmac_verify(crypto.createHMAC(secret,
secret_len,
- hash_algorithm));
+ hash_algorithm),
+ deleteHMAC);
hmac_verify->update(data.c_str(), data.size());
EXPECT_TRUE(hmac_verify->verify(sig, hmac_len));
@@ -415,10 +421,9 @@ TEST(CryptoLinkTest, HMAC_SHA256_RFC2202_SIGN) {
namespace {
size_t
sigVectorLength(HashAlgorithm alg, size_t len) {
- std::auto_ptr<HMAC> hmac_sign(
- CryptoLink::getCryptoLink().createHMAC("asdf", 4, alg));
- //boost::scoped_ptr<HMAC> hmac_sign(
- // CryptoLink::getCryptoLink().createHMAC("asdf", 4, alg));
+ boost::shared_ptr<HMAC> hmac_sign(
+ CryptoLink::getCryptoLink().createHMAC("asdf", 4, alg),
+ deleteHMAC);
hmac_sign->update("asdf", 4);
const std::vector<uint8_t> sig = hmac_sign->sign(len);
return (sig.size());
@@ -426,8 +431,9 @@ namespace {
size_t
sigBufferLength(HashAlgorithm alg, size_t len) {
- boost::scoped_ptr<HMAC> hmac_sign(
- CryptoLink::getCryptoLink().createHMAC("asdf", 4, alg));
+ boost::shared_ptr<HMAC> hmac_sign(
+ CryptoLink::getCryptoLink().createHMAC("asdf", 4, alg),
+ deleteHMAC);
hmac_sign->update("asdf", 4);
OutputBuffer sig(0);
hmac_sign->sign(sig, len);
More information about the bind10-changes
mailing list