summaryrefslogtreecommitdiff
path: root/apt-pkg/contrib/hashes.cc
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2011-02-25 13:47:09 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2011-02-25 13:47:09 +0100
commitd9b9e9e2495fa4cfd9f555cd51a394bad2f98894 (patch)
tree99b415b32f88e35e3aae398d5ad1890f861a1097 /apt-pkg/contrib/hashes.cc
parent54ce88fd2669a729c89c940be3abc9456d19d542 (diff)
parent9a961efc5cedeb2b7439114df18e8d0201c83fcf (diff)
add sha512 support in the client now as well
Diffstat (limited to 'apt-pkg/contrib/hashes.cc')
-rw-r--r--apt-pkg/contrib/hashes.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/apt-pkg/contrib/hashes.cc b/apt-pkg/contrib/hashes.cc
index 985d89d90..66ae33146 100644
--- a/apt-pkg/contrib/hashes.cc
+++ b/apt-pkg/contrib/hashes.cc
@@ -23,7 +23,7 @@
const char* HashString::_SupportedHashes[] =
{
- "SHA256", "SHA1", "MD5Sum", NULL
+ "SHA512", "SHA256", "SHA1", "MD5Sum", NULL
};
HashString::HashString()
@@ -57,6 +57,7 @@ bool HashString::VerifyFile(string filename) const /*{{{*/
MD5Summation MD5;
SHA1Summation SHA1;
SHA256Summation SHA256;
+ SHA256Summation SHA512;
string fileHash;
FileFd Fd(filename, FileFd::ReadOnly);
@@ -75,6 +76,11 @@ bool HashString::VerifyFile(string filename) const /*{{{*/
SHA256.AddFD(Fd.Fd(), Fd.Size());
fileHash = (string)SHA256.Result();
}
+ else if (Type == "SHA512")
+ {
+ SHA512.AddFD(Fd.Fd(), Fd.Size());
+ fileHash = (string)SHA512.Result();
+ }
Fd.Close();
if(_config->FindB("Debug::Hashes",false) == true)
@@ -119,6 +125,7 @@ bool Hashes::AddFD(int Fd,unsigned long Size)
MD5.Add(Buf,Res);
SHA1.Add(Buf,Res);
SHA256.Add(Buf,Res);
+ SHA512.Add(Buf,Res);
}
return true;
}