Add call to ThrowIfInvalidTruncatedSize in SipHash Final
parent
ba00b9e46b
commit
fa99ece0c5
|
|
@ -165,6 +165,7 @@ void Poly1305_Base<T>::HashBlocks(const byte *input, size_t length, word32 padbi
|
||||||
template <class T>
|
template <class T>
|
||||||
void Poly1305_Base<T>::TruncatedFinal(byte *mac, size_t size)
|
void Poly1305_Base<T>::TruncatedFinal(byte *mac, size_t size)
|
||||||
{
|
{
|
||||||
|
CRYPTOPP_ASSERT(mac); // Pointer is valid
|
||||||
CRYPTOPP_ASSERT(!m_used); // Nonce is fresh
|
CRYPTOPP_ASSERT(!m_used); // Nonce is fresh
|
||||||
|
|
||||||
ThrowIfInvalidTruncatedSize(size);
|
ThrowIfInvalidTruncatedSize(size);
|
||||||
|
|
|
||||||
|
|
@ -203,6 +203,10 @@ void SipHash_Base<C,D,T_128bit>::Update(const byte *input, size_t length)
|
||||||
template <unsigned int C, unsigned int D, bool T_128bit>
|
template <unsigned int C, unsigned int D, bool T_128bit>
|
||||||
void SipHash_Base<C,D,T_128bit>::TruncatedFinal(byte *digest, size_t digestSize)
|
void SipHash_Base<C,D,T_128bit>::TruncatedFinal(byte *digest, size_t digestSize)
|
||||||
{
|
{
|
||||||
|
CRYPTOPP_ASSERT(digest); // Pointer is valid
|
||||||
|
|
||||||
|
ThrowIfInvalidTruncatedSize(digestSize);
|
||||||
|
|
||||||
// The high octet holds length and is digested mod 256
|
// The high octet holds length and is digested mod 256
|
||||||
m_b[0] += m_idx; m_b[0] <<= 56U;
|
m_b[0] += m_idx; m_b[0] <<= 56U;
|
||||||
switch (m_idx)
|
switch (m_idx)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue