Commit 0d041f08 authored by Richard van der Hoff's avatar Richard van der Hoff
Browse files

Revert "Remove functions which return strings"

We need these functions for the logging_enabled branch.

This reverts commit acae4e84.
parent 4a74fd92
......@@ -17,6 +17,7 @@
#include <cstdint>
#include <cstddef>
#include <string>
namespace olm {
......@@ -26,6 +27,7 @@ static const std::size_t IV_LENGTH = 16;
struct Curve25519PublicKey {
std::uint8_t public_key[KEY_LENGTH];
std::string to_string() const;
};
......
......@@ -87,4 +87,23 @@ std::uint8_t * store_array(
return destination + sizeof(T);
}
/** convert an array of bytes to a string representation */
template<typename T>
std::string bytes_to_string(T start, T end) {
std::ostringstream ss;
ss << std::hex << std::setfill('0');
while (start != end) {
ss << std::setw(2) << static_cast<int>(*start++);
if (start != end) {
ss << ":";
}
}
return ss.str();
}
template<typename T>
std::string bytes_to_string(T start, size_t len) {
return bytes_to_string(start, start+len);
}
} // namespace olm
......@@ -101,6 +101,11 @@ inline static void hmac_sha256_final(
} // namespace
std::string olm::Curve25519PublicKey::to_string() const {
return olm::bytes_to_string(std::begin(public_key),
std::end(public_key));
};
void olm::curve25519_generate_key(
std::uint8_t const * random_32_bytes,
olm::Curve25519KeyPair & key_pair
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment