diff --git a/chacha.h b/chacha.h index f62606b7..462003d9 100644 --- a/chacha.h +++ b/chacha.h @@ -49,7 +49,7 @@ protected: struct ChaCha8 : public ChaCha_Info<8>, public SymmetricCipherDocumentation { typedef SymmetricCipherFinal, AdditiveCipherTemplate<> >, ChaCha_Info<8> > Encryption; - typedef SymmetricCipherFinal, AdditiveCipherTemplate<> >, ChaCha_Info<8> > Decryption; + typedef Encryption Decryption; }; //! \class ChaCha12 @@ -58,7 +58,7 @@ struct ChaCha8 : public ChaCha_Info<8>, public SymmetricCipherDocumentation struct ChaCha12 : public ChaCha_Info<12>, public SymmetricCipherDocumentation { typedef SymmetricCipherFinal, AdditiveCipherTemplate<> >, ChaCha_Info<12> > Encryption; - typedef SymmetricCipherFinal, AdditiveCipherTemplate<> >, ChaCha_Info<12> > Decryption; + typedef Encryption Decryption; }; //! \class ChaCha20 @@ -67,7 +67,7 @@ struct ChaCha12 : public ChaCha_Info<12>, public SymmetricCipherDocumentation struct ChaCha20 : public ChaCha_Info<20>, public SymmetricCipherDocumentation { typedef SymmetricCipherFinal, AdditiveCipherTemplate<> >, ChaCha_Info<20> > Encryption; - typedef SymmetricCipherFinal, AdditiveCipherTemplate<> >, ChaCha_Info<20> > Decryption; + typedef Encryption Decryption; }; NAMESPACE_END diff --git a/integer.cpp b/integer.cpp index 206a6238..671852dd 100644 --- a/integer.cpp +++ b/integer.cpp @@ -67,16 +67,6 @@ # define CRYPTOPP_INTEGER_SSE2 (CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE && CRYPTOPP_BOOL_X86) #endif -// Debian QEMU/ARMEL issue in MultiplyTop; see http://github.com/weidai11/cryptopp/issues/31. -#if __ARMEL__ && (CRYPTOPP_GCC_VERSION >= 40900) && (CRYPTOPP_GCC_VERSION < 70000) && __OPTIMIZE__ -# define WORKAROUND_ARMEL_BUG 1 -#endif - -#if WORKAROUND_ARMEL_BUG -# pragma GCC push_options -# pragma GCC optimize("O1") -#endif - NAMESPACE_BEGIN(CryptoPP) bool AssignIntToInteger(const std::type_info &valueType, void *pInteger, const void *pInt) @@ -4559,8 +4549,4 @@ std::string IntToString(word64 value, unsigned int base) NAMESPACE_END -#if WORKAROUND_ARMEL_BUG -# pragma GCC pop_options -#endif - #endif diff --git a/integer.h b/integer.h index 30cf9f87..28a50352 100644 --- a/integer.h +++ b/integer.h @@ -107,7 +107,7 @@ public: //! \details Byte order was added at Crypto++ 5.7 to allow use of little-endian //! integers with curve25519, Poly1305 and Microsoft CAPI. explicit Integer(const char *str, ByteOrder order = BIG_ENDIAN_ORDER); - + //! \brief Convert from a wide C-string //! \param str wide C-string value //! \param order byte order @@ -225,8 +225,8 @@ public: //! \details OpenPGPEncode places result into a BufferedTransformation object and returns the //! number of bytes used for the encoding size_t OpenPGPEncode(byte *output, size_t bufferSize) const; - - //! \brief Encode absolute value in OpenPGP format + + //! \brief Encode absolute value in OpenPGP format //! \param bt BufferedTransformation object //! \returns length of the output //! \details OpenPGPEncode places result into a BufferedTransformation object and returns the @@ -238,7 +238,7 @@ public: //! \param inputLen length of the byte array //! \param sign enumeration indicating Signedness void Decode(const byte *input, size_t inputLen, Signedness sign=UNSIGNED); - + //! \brief Decode nonnegative value from big-endian byte array //! \param bt BufferedTransformation object //! \param inputLen length of the byte array @@ -263,7 +263,7 @@ public: //! \brief Exception thrown when an error is encountered decoding an OpenPGP integer class OpenPGPDecodeErr : public Exception { - public: + public: OpenPGPDecodeErr() : Exception(INVALID_DATA_FORMAT, "OpenPGP decode error") {} }; @@ -409,10 +409,10 @@ public: //! \brief Reverse the Sign of the Integer void Negate(); - + //! \brief Sets the Integer to positive void SetPositive() {sign = POSITIVE;} - + //! \brief Sets the Integer to negative void SetNegative() {if (!!(*this)) sign = NEGATIVE;} @@ -528,7 +528,7 @@ public: //! \sa IntToString friend CRYPTOPP_DLL std::ostream& CRYPTOPP_API operator<<(std::ostream& out, const Integer &a); //@} - + #ifndef CRYPTOPP_DOXYGEN_PROCESSING //! modular multiplication CRYPTOPP_DLL friend Integer CRYPTOPP_API a_times_b_mod_c(const Integer &x, const Integer& y, const Integer& m); @@ -537,13 +537,13 @@ public: #endif private: - + Integer(word value, size_t length); int PositiveCompare(const Integer &t) const; - + IntegerSecBlock reg; Sign sign; - + #ifndef CRYPTOPP_DOXYGEN_PROCESSING friend class ModularArithmetic; friend class MontgomeryRepresentation;