mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-30 01:29:42 -06:00
General: Migrate from deprecated mbedTLS functions
As indicated by mbedTLS' documentation, all of the relevant functions have been superseded by _ret-suffixed variants in mbedTLS version 2.7.0.
This commit is contained in:
@ -652,13 +652,13 @@ void VolumeVerifier::SetUpHashing()
|
||||
if (m_hashes_to_calculate.md5)
|
||||
{
|
||||
mbedtls_md5_init(&m_md5_context);
|
||||
mbedtls_md5_starts(&m_md5_context);
|
||||
mbedtls_md5_starts_ret(&m_md5_context);
|
||||
}
|
||||
|
||||
if (m_hashes_to_calculate.sha1)
|
||||
{
|
||||
mbedtls_sha1_init(&m_sha1_context);
|
||||
mbedtls_sha1_starts(&m_sha1_context);
|
||||
mbedtls_sha1_starts_ret(&m_sha1_context);
|
||||
}
|
||||
}
|
||||
|
||||
@ -712,10 +712,10 @@ void VolumeVerifier::Process()
|
||||
}
|
||||
|
||||
if (m_hashes_to_calculate.md5)
|
||||
mbedtls_md5_update(&m_md5_context, data.data(), bytes_to_read);
|
||||
mbedtls_md5_update_ret(&m_md5_context, data.data(), bytes_to_read);
|
||||
|
||||
if (m_hashes_to_calculate.sha1)
|
||||
mbedtls_sha1_update(&m_sha1_context, data.data(), bytes_to_read);
|
||||
mbedtls_sha1_update_ret(&m_sha1_context, data.data(), bytes_to_read);
|
||||
}
|
||||
}
|
||||
|
||||
@ -773,7 +773,7 @@ bool VolumeVerifier::CheckContentIntegrity(const IOS::ES::Content& content)
|
||||
encrypted_data.data(), decrypted_data.data());
|
||||
|
||||
std::array<u8, 20> sha1;
|
||||
mbedtls_sha1(decrypted_data.data(), content.size, sha1.data());
|
||||
mbedtls_sha1_ret(decrypted_data.data(), content.size, sha1.data());
|
||||
return sha1 == content.sha1;
|
||||
}
|
||||
|
||||
@ -806,13 +806,13 @@ void VolumeVerifier::Finish()
|
||||
if (m_hashes_to_calculate.md5)
|
||||
{
|
||||
m_result.hashes.md5 = std::vector<u8>(16);
|
||||
mbedtls_md5_finish(&m_md5_context, m_result.hashes.md5.data());
|
||||
mbedtls_md5_finish_ret(&m_md5_context, m_result.hashes.md5.data());
|
||||
}
|
||||
|
||||
if (m_hashes_to_calculate.sha1)
|
||||
{
|
||||
m_result.hashes.sha1 = std::vector<u8>(20);
|
||||
mbedtls_sha1_finish(&m_sha1_context, m_result.hashes.sha1.data());
|
||||
mbedtls_sha1_finish_ret(&m_sha1_context, m_result.hashes.sha1.data());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -443,7 +443,7 @@ bool VolumeWii::CheckH3TableIntegrity(const Partition& partition) const
|
||||
return false;
|
||||
|
||||
std::array<u8, 20> h3_table_sha1;
|
||||
mbedtls_sha1(h3_table.data(), h3_table.size(), h3_table_sha1.data());
|
||||
mbedtls_sha1_ret(h3_table.data(), h3_table.size(), h3_table_sha1.data());
|
||||
return h3_table_sha1 == contents[0].sha1;
|
||||
}
|
||||
|
||||
@ -481,23 +481,23 @@ bool VolumeWii::CheckBlockIntegrity(u64 block_index, const Partition& partition)
|
||||
for (u32 hash_index = 0; hash_index < 31; ++hash_index)
|
||||
{
|
||||
u8 h0_hash[SHA1_SIZE];
|
||||
mbedtls_sha1(cluster_data + hash_index * 0x400, 0x400, h0_hash);
|
||||
mbedtls_sha1_ret(cluster_data + hash_index * 0x400, 0x400, h0_hash);
|
||||
if (memcmp(h0_hash, cluster_metadata + hash_index * SHA1_SIZE, SHA1_SIZE))
|
||||
return false;
|
||||
}
|
||||
|
||||
u8 h1_hash[SHA1_SIZE];
|
||||
mbedtls_sha1(cluster_metadata, SHA1_SIZE * 31, h1_hash);
|
||||
mbedtls_sha1_ret(cluster_metadata, SHA1_SIZE * 31, h1_hash);
|
||||
if (memcmp(h1_hash, cluster_metadata + 0x280 + (block_index % 8) * SHA1_SIZE, SHA1_SIZE))
|
||||
return false;
|
||||
|
||||
u8 h2_hash[SHA1_SIZE];
|
||||
mbedtls_sha1(cluster_metadata + 0x280, SHA1_SIZE * 8, h2_hash);
|
||||
mbedtls_sha1_ret(cluster_metadata + 0x280, SHA1_SIZE * 8, h2_hash);
|
||||
if (memcmp(h2_hash, cluster_metadata + 0x340 + (block_index / 8 % 8) * SHA1_SIZE, SHA1_SIZE))
|
||||
return false;
|
||||
|
||||
u8 h3_hash[SHA1_SIZE];
|
||||
mbedtls_sha1(cluster_metadata + 0x340, SHA1_SIZE * 8, h3_hash);
|
||||
mbedtls_sha1_ret(cluster_metadata + 0x340, SHA1_SIZE * 8, h3_hash);
|
||||
if (memcmp(h3_hash, partition_details.h3_table->data() + block_index / 64 * SHA1_SIZE, SHA1_SIZE))
|
||||
return false;
|
||||
|
||||
|
Reference in New Issue
Block a user