aboutsummaryrefslogtreecommitdiffstats
path: root/src/hash/hash.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/hash/hash.h')
-rw-r--r--src/hash/hash.h28
1 files changed, 4 insertions, 24 deletions
diff --git a/src/hash/hash.h b/src/hash/hash.h
index 881e23817..8143e8e90 100644
--- a/src/hash/hash.h
+++ b/src/hash/hash.h
@@ -9,47 +9,27 @@
#define BOTAN_HASH_FUNCTION_BASE_CLASS_H__
#include <botan/buf_comp.h>
+#include <botan/algo_base.h>
#include <string>
namespace Botan {
/**
-* This class represents hash function (message digest) objects.
+* This class represents hash function (message digest) objects
*/
-class BOTAN_DLL HashFunction : public BufferedComputation
+class BOTAN_DLL HashFunction : public Buffered_Computation,
+ public Algorithm
{
public:
/**
- * @param hash_len the output length
- * @param block_len the internal block size (if applicable)
- */
- HashFunction(size_t hash_len) : BufferedComputation(hash_len) {}
-
- virtual ~HashFunction() {}
-
- /**
* Get a new object representing the same algorithm as *this
*/
virtual HashFunction* clone() const = 0;
/**
- * Get the name of this algorithm.
- * @return name of this algorithm
- */
- virtual std::string name() const = 0;
-
- /**
* The hash block size as defined for this algorithm
*/
virtual size_t hash_block_size() const { return 0; }
-
- /**
- * Reset the internal state of this object.
- */
- virtual void clear() = 0;
-
- private:
- HashFunction& operator=(const HashFunction&);
};
}