build: fix build with Boost 1.85 and remove instances of viewkey logging [RELEASE]

1. Use std::is_standard_layout and std::is_trivially_copyable instead of std::is_pod for KV byte-wise serialization, which fixes compile issue for Boost UUIDs
2. Removed reimplementation of std::hash for boost::uuids::uuid
3. Removed << operator overload for crypto::secret_key
4. Removed instances in code where private view key was dumped to the log in plaintext

Release version of #9450, containing C++14 modified assertions
This commit is contained in:
jeffro256
2024-09-10 16:07:36 -05:00
parent b089f9ee69
commit 65568d3a88
20 changed files with 80 additions and 69 deletions
+1 -1
View File
@@ -109,7 +109,7 @@ namespace
template<typename T>
bool compare(const T& lhs, const T& rhs) noexcept
{
static_assert(!epee::has_padding<T>(), "type might have padding");
static_assert(std::is_standard_layout<T>() && alignof(T) == 1, "type might have padding");
return std::memcmp(std::addressof(lhs), std::addressof(rhs), sizeof(T)) == 0;
}