diff options
author | Arch Librarian <arch@canonical.com> | 2004-09-20 16:57:09 +0000 |
---|---|---|
committer | Arch Librarian <arch@canonical.com> | 2004-09-20 16:57:09 +0000 |
commit | 63b1700fd93787682eedc95546a0364f449f036d (patch) | |
tree | 169f8b47dc4c88d3fbcaf8ae996e6ca08350dc2d /apt-pkg/contrib/hashes.cc | |
parent | 784202a271ae7e303aacbe226bb87fed50a16f81 (diff) |
More SHA-1 prep
Author: jgg
Date: 2001-03-06 07:15:29 GMT
More SHA-1 prep
Diffstat (limited to 'apt-pkg/contrib/hashes.cc')
-rw-r--r-- | apt-pkg/contrib/hashes.cc | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/apt-pkg/contrib/hashes.cc b/apt-pkg/contrib/hashes.cc new file mode 100644 index 000000000..af741b672 --- /dev/null +++ b/apt-pkg/contrib/hashes.cc @@ -0,0 +1,43 @@ +// -*- mode: cpp; mode: fold -*- +// Description /*{{{*/ +// $Id: hashes.cc,v 1.1 2001/03/06 07:15:29 jgg Exp $ +/* ###################################################################### + + Hashes - Simple wrapper around the hash functions + + This is just used to make building the methods simpler, this is the + only interface required.. + + ##################################################################### */ + /*}}}*/ +// Include Files /*{{{*/ +#ifdef __GNUG__ +#pragma implementation "apt-pkg/hashes.h" +#endif + +#include <apt-pkg/hashes.h> + +#include <unistd.h> +#include <system.h> + /*}}}*/ + +// Hashes::AddFD - Add the contents of the FD /*{{{*/ +// --------------------------------------------------------------------- +/* */ +bool Hashes::AddFD(int Fd,unsigned long Size) +{ + unsigned char Buf[64*64]; + int Res = 0; + while (Size != 0) + { + Res = read(Fd,Buf,MIN(Size,sizeof(Buf))); + if (Res < 0 || (unsigned)Res != MIN(Size,sizeof(Buf))) + return false; + Size -= Res; + MD5.Add(Buf,Res); + SHA1.Add(Buf,Res); + } + return true; +} + /*}}}*/ + |