AppleTLS: Fix MessageDigestImpl

pull/104/head
Nils Maier 2013-07-05 20:12:53 +02:00
parent 59ba3c99f6
commit d4044306f3
2 changed files with 12 additions and 12 deletions

View File

@ -108,31 +108,31 @@ typedef MessageDigestBase<CC_SHA512_DIGEST_LENGTH,
CC_SHA512_Final>
MessageDigestSHA512;
std::shared_ptr<MessageDigestImpl> MessageDigestImpl::sha1()
std::unique_ptr<MessageDigestImpl> MessageDigestImpl::sha1()
{
return std::shared_ptr<MessageDigestImpl>(new MessageDigestSHA1());
return std::unique_ptr<MessageDigestImpl>(new MessageDigestSHA1());
}
std::shared_ptr<MessageDigestImpl> MessageDigestImpl::create
std::unique_ptr<MessageDigestImpl> MessageDigestImpl::create
(const std::string& hashType)
{
if (hashType == "sha-1") {
return std::shared_ptr<MessageDigestImpl>(new MessageDigestSHA1());
return std::unique_ptr<MessageDigestImpl>(new MessageDigestSHA1());
}
if (hashType == "sha-224") {
return std::shared_ptr<MessageDigestImpl>(new MessageDigestSHA224());
return std::unique_ptr<MessageDigestImpl>(new MessageDigestSHA224());
}
if (hashType == "sha-256") {
return std::shared_ptr<MessageDigestImpl>(new MessageDigestSHA256());
return std::unique_ptr<MessageDigestImpl>(new MessageDigestSHA256());
}
if (hashType == "sha-384") {
return std::shared_ptr<MessageDigestImpl>(new MessageDigestSHA384());
return std::unique_ptr<MessageDigestImpl>(new MessageDigestSHA384());
}
if (hashType == "sha-512") {
return std::shared_ptr<MessageDigestImpl>(new MessageDigestSHA512());
return std::unique_ptr<MessageDigestImpl>(new MessageDigestSHA512());
}
if (hashType == "md5") {
return std::shared_ptr<MessageDigestImpl>(new MessageDigestMD5());
return std::unique_ptr<MessageDigestImpl>(new MessageDigestMD5());
}
return nullptr;
}
@ -144,7 +144,7 @@ bool MessageDigestImpl::supports(const std::string& hashType)
size_t MessageDigestImpl::getDigestLength(const std::string& hashType)
{
std::shared_ptr<MessageDigestImpl> impl = create(hashType);
std::unique_ptr<MessageDigestImpl> impl = create(hashType);
if (!impl) {
return 0;
}

View File

@ -45,8 +45,8 @@ namespace aria2 {
class MessageDigestImpl {
public:
virtual ~MessageDigestImpl() {}
static std::shared_ptr<MessageDigestImpl> sha1();
static std::shared_ptr<MessageDigestImpl> create(const std::string& hashType);
static std::unique_ptr<MessageDigestImpl> sha1();
static std::unique_ptr<MessageDigestImpl> create(const std::string& hashType);
static bool supports(const std::string& hashType);
static size_t getDigestLength(const std::string& hashType);