]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/contrib/hashes.h
* add --dsc-only option, thanks to K. Richard Pixley
[apt.git] / apt-pkg / contrib / hashes.h
index e00eaeb2d1877b295fe93665a602f43c279fd792..eefa7bf4147dd670e21df66eeb32e3353c0563ea 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: hashes.h,v 1.1 2001/03/06 07:15:29 jgg Exp $
+// $Id: hashes.h,v 1.2 2001/03/11 05:30:20 jgg Exp $
 /* ######################################################################
 
    Hashes - Simple wrapper around the hash functions
 /* ######################################################################
 
    Hashes - Simple wrapper around the hash functions
 #define APTPKG_HASHES_H
 
 #ifdef __GNUG__
 #define APTPKG_HASHES_H
 
 #ifdef __GNUG__
-#pragma interface "apt-pkg/hashesh.h"
+#pragma interface "apt-pkg/hashes.h"
 #endif 
 
 #include <apt-pkg/md5.h>
 #include <apt-pkg/sha1.h>
 #endif 
 
 #include <apt-pkg/md5.h>
 #include <apt-pkg/sha1.h>
+#include <apt-pkg/sha256.h>
+
+#include <algorithm>
+
+using std::min;
 
 class Hashes
 {
 
 class Hashes
 {
@@ -26,11 +31,11 @@ class Hashes
 
    MD5Summation MD5;
    SHA1Summation SHA1;
 
    MD5Summation MD5;
    SHA1Summation SHA1;
+   SHA256Summation SHA256;
    
    inline bool Add(const unsigned char *Data,unsigned long Size)
    {
    
    inline bool Add(const unsigned char *Data,unsigned long Size)
    {
-      MD5.Add(Data,Size);
-      SHA1.Add(Data,Size);
+      return MD5.Add(Data,Size) && SHA1.Add(Data,Size) && SHA256.Add(Data,Size);
    };
    inline bool Add(const char *Data) {return Add((unsigned char *)Data,strlen(Data));};
    bool AddFD(int Fd,unsigned long Size);
    };
    inline bool Add(const char *Data) {return Add((unsigned char *)Data,strlen(Data));};
    bool AddFD(int Fd,unsigned long Size);