From 45124582e3b964800f0be1f88773dd6f2cafc672 Mon Sep 17 00:00:00 2001 From: Jack Lloyd Date: Sun, 10 Jan 2016 00:51:48 -0500 Subject: Add final attribute to many classes In some cases this can offer better optimization, via devirtualization. And it lets the user know the class is not intended for derivation. Some discussion in GH #402 --- src/lib/hash/md4/md4.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/lib/hash/md4/md4.h') diff --git a/src/lib/hash/md4/md4.h b/src/lib/hash/md4/md4.h index a0e481773..8b7ab5d70 100644 --- a/src/lib/hash/md4/md4.h +++ b/src/lib/hash/md4/md4.h @@ -15,7 +15,7 @@ namespace Botan { /** * MD4 */ -class BOTAN_DLL MD4 : public MDx_HashFunction +class BOTAN_DLL MD4 final : public MDx_HashFunction { public: std::string name() const override { return "MD4"; } @@ -29,14 +29,15 @@ class BOTAN_DLL MD4 : public MDx_HashFunction protected: void compress_n(const byte input[], size_t blocks) override; void copy_out(byte[]) override; + private: /** - * The message buffer, exposed for use by subclasses (x86 asm) + * The message buffer */ secure_vector m_M; /** - * The digest value, exposed for use by subclasses (x86 asm) + * The digest value */ secure_vector m_digest; }; -- cgit v1.2.3