@@ -179,9 +179,9 @@ namespace hmac_hash {
179179 size_t block_nb;
180180 size_t new_len, rem_len, tmp_len;
181181 const uint8_t *shifted_message;
182- tmp_len = SHA384_512_BLOCK_SIZE - m_len;
182+ tmp_len = SHA384_512_BLOCK_SIZE - static_cast < size_t >( m_len) ;
183183 rem_len = length < tmp_len ? length : tmp_len;
184- memcpy (&m_block[m_len], message, rem_len);
184+ memcpy (&m_block[static_cast < size_t >( m_len) ], message, rem_len);
185185 if ((m_len + length) < SHA384_512_BLOCK_SIZE ) {
186186 m_len += length;
187187 return ;
@@ -194,7 +194,7 @@ namespace hmac_hash {
194194 rem_len = new_len % SHA384_512_BLOCK_SIZE ;
195195 memcpy (m_block, &shifted_message[block_nb << 7 ], rem_len);
196196 m_len = rem_len;
197- m_tot_len += (block_nb + 1 ) << 7 ;
197+ m_tot_len += static_cast < uint64_t > (block_nb + 1 ) << 7 ;
198198 }
199199
200200 void SHA512::finish (uint8_t *digest) {
@@ -203,11 +203,11 @@ namespace hmac_hash {
203203 uint64_t len_b; // message length in bits
204204 size_t i;
205205 block_nb = (1 + ((SHA384_512_BLOCK_SIZE - 9 )
206- < (m_len % SHA384_512_BLOCK_SIZE )));
206+ < (static_cast < size_t >( m_len) % SHA384_512_BLOCK_SIZE )));
207207 len_b = (m_tot_len + m_len) << 3 ;
208208 pm_len = block_nb << 7 ;
209- memset (m_block + m_len, 0 , pm_len - m_len);
210- m_block[m_len] = 0x80 ;
209+ memset (m_block + static_cast < size_t >( m_len) , 0 , pm_len - static_cast < size_t >( m_len) );
210+ m_block[static_cast < size_t >( m_len) ] = 0x80 ;
211211 SHA2_UNPACK64 (len_b, m_block + pm_len - 8 );
212212 transform (m_block, block_nb);
213213 for (i = 0 ; i < 8 ; ++i) {
0 commit comments