X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/f5b622ed48fdbe235d81b61b3edd8dbb84d9cc9c..032bd56ff86166fd4b6a8f69bd9d5d1bc57b886e:/apt-pkg/contrib/sha2.h

diff --git a/apt-pkg/contrib/sha2.h b/apt-pkg/contrib/sha2.h
index bd5472527..51c921dbd 100644
--- a/apt-pkg/contrib/sha2.h
+++ b/apt-pkg/contrib/sha2.h
@@ -22,31 +22,16 @@
 #include "sha2_internal.h"
 #include "hashsum_template.h"
 
-using std::string;
-using std::min;
-
-class SHA512Summation;
-class SHA256Summation;
-
 typedef HashSumValue<512> SHA512SumValue;
 typedef HashSumValue<256> SHA256SumValue;
 
-class SHA2SummationBase
+class SHA2SummationBase : public SummationImplementation
 {
  protected:
    bool Done;
  public:
-   virtual bool Add(const unsigned char *inbuf,unsigned long inlen) = 0;
-   virtual bool AddFD(int Fd,unsigned long Size);
+   bool Add(const unsigned char *inbuf, unsigned long long len) = 0;
 
-   inline bool Add(const char *Data) 
-   {
-      return Add((unsigned char *)Data,strlen(Data));
-   };
-   inline bool Add(const unsigned char *Beg,const unsigned char *End) 
-   {
-      return Add(Beg,End-Beg);
-   };
    void Result();
 };
 
@@ -56,13 +41,15 @@ class SHA256Summation : public SHA2SummationBase
    unsigned char Sum[32];
 
    public:
-   virtual bool Add(const unsigned char *inbuf, unsigned long len)
+   bool Add(const unsigned char *inbuf, unsigned long long len)
    {
       if (Done) 
          return false;
       SHA256_Update(&ctx, inbuf, len);
       return true;
    };
+   using SummationImplementation::Add;
+
    SHA256SumValue Result()
    {
       if (!Done) {
@@ -86,13 +73,15 @@ class SHA512Summation : public SHA2SummationBase
    unsigned char Sum[64];
 
    public:
-   virtual bool Add(const unsigned char *inbuf, unsigned long len)
+   bool Add(const unsigned char *inbuf, unsigned long long len)
    {
       if (Done) 
          return false;
       SHA512_Update(&ctx, inbuf, len);
       return true;
    };
+   using SummationImplementation::Add;
+
    SHA512SumValue Result()
    {
       if (!Done) {