Skip to content
Snippets Groups Projects
Commit 159faa1e authored by Mark Haines's avatar Mark Haines
Browse files

Make the internal functions static, remove some unused internal functions

parent c35d1d42
No related branches found
No related tags found
No related merge requests found
......@@ -69,26 +69,11 @@ std::size_t olm::Account::new_account(
namespace {
namespace {
uint8_t KEY_JSON_ED25519[] = "\"ed25519\":";
uint8_t KEY_JSON_CURVE25519[] = "\"curve25519\":";
}
std::size_t count_digits(
std::uint64_t value
) {
std::size_t digits = 0;
do {
digits++;
value /= 10;
} while (value);
return digits;
}
template<typename T>
std::uint8_t * write_string(
static std::uint8_t * write_string(
std::uint8_t * pos,
T const & value
) {
......@@ -96,27 +81,6 @@ std::uint8_t * write_string(
return pos + (sizeof(T) - 1);
}
std::uint8_t * write_string(
std::uint8_t * pos,
std::uint8_t const * value, std::size_t value_length
) {
std::memcpy(pos, value, value_length);
return pos + value_length;
}
std::uint8_t * write_digits(
std::uint8_t * pos,
std::uint64_t value
) {
size_t digits = count_digits(value);
pos += digits;
do {
*(--pos) = '0' + (value % 10);
value /= 10;
} while (value);
return pos + digits;
}
}
......@@ -196,19 +160,20 @@ std::size_t olm::Account::sign(
std::size_t olm::Account::get_one_time_keys_json_length(
) {
std::size_t length = 0;
bool is_empty = true;
for (auto const & key : one_time_keys) {
if (key.published) {
continue;
}
is_empty = false;
length += 2; /* {" */
length += olm::encode_base64_length(olm::pickle_length(key.id));
length += 3; /* ":" */
length += olm::encode_base64_length(sizeof(key.key.public_key));
length += 1; /* " */
}
if (length == 0) {
/* The list was empty. Add a byte for the opening '{' */
length = 1;
if (is_empty) {
length += 1; /* { */
}
length += 3; /* }{} */
length += sizeof(KEY_JSON_CURVE25519) - 1;
......@@ -244,6 +209,7 @@ std::size_t olm::Account::get_one_time_keys_json(
sep = ',';
}
if (sep != ',') {
/* The list was empty */
*(pos++) = sep;
}
*(pos++) = '}';
......
......@@ -99,7 +99,7 @@ inline static void hmac_sha256_key(
}
inline void hmac_sha256_init(
inline static void hmac_sha256_init(
::SHA256_CTX * context,
std::uint8_t const * hmac_key
) {
......@@ -114,7 +114,7 @@ inline void hmac_sha256_init(
}
inline void hmac_sha256_final(
inline static void hmac_sha256_final(
::SHA256_CTX * context,
std::uint8_t const * hmac_key,
std::uint8_t * output
......
......@@ -17,7 +17,7 @@
namespace {
template<typename T>
std::size_t varint_length(
static std::size_t varint_length(
T value
) {
std::size_t result = 1;
......@@ -30,7 +30,7 @@ std::size_t varint_length(
template<typename T>
std::uint8_t * varint_encode(
static std::uint8_t * varint_encode(
std::uint8_t * output,
T value
) {
......@@ -44,7 +44,7 @@ std::uint8_t * varint_encode(
template<typename T>
T varint_decode(
static T varint_decode(
std::uint8_t const * varint_start,
std::uint8_t const * varint_end
) {
......@@ -60,7 +60,7 @@ T varint_decode(
}
std::uint8_t const * varint_skip(
static std::uint8_t const * varint_skip(
std::uint8_t const * input,
std::uint8_t const * input_end
) {
......@@ -74,7 +74,7 @@ std::uint8_t const * varint_skip(
}
std::size_t varstring_length(
static std::size_t varstring_length(
std::size_t string_length
) {
return varint_length(string_length) + string_length;
......@@ -85,7 +85,7 @@ static std::uint8_t const RATCHET_KEY_TAG = 012;
static std::uint8_t const COUNTER_TAG = 020;
static std::uint8_t const CIPHERTEXT_TAG = 042;
std::uint8_t * encode(
static std::uint8_t * encode(
std::uint8_t * pos,
std::uint8_t tag,
std::uint32_t value
......@@ -94,7 +94,7 @@ std::uint8_t * encode(
return varint_encode(pos, value);
}
std::uint8_t * encode(
static std::uint8_t * encode(
std::uint8_t * pos,
std::uint8_t tag,
std::uint8_t * & value, std::size_t value_length
......@@ -105,7 +105,7 @@ std::uint8_t * encode(
return pos + value_length;
}
std::uint8_t const * decode(
static std::uint8_t const * decode(
std::uint8_t const * pos, std::uint8_t const * end,
std::uint8_t tag,
std::uint32_t & value, bool & has_value
......@@ -121,7 +121,7 @@ std::uint8_t const * decode(
}
std::uint8_t const * decode(
static std::uint8_t const * decode(
std::uint8_t const * pos, std::uint8_t const * end,
std::uint8_t tag,
std::uint8_t const * & value, std::size_t & value_length
......@@ -139,7 +139,7 @@ std::uint8_t const * decode(
return pos;
}
std::uint8_t const * skip_unknown(
static std::uint8_t const * skip_unknown(
std::uint8_t const * pos, std::uint8_t const * end
) {
if (pos != end) {
......
......@@ -29,7 +29,7 @@ std::uint8_t MESSAGE_KEY_SEED[1] = {0x01};
std::uint8_t CHAIN_KEY_SEED[1] = {0x02};
std::size_t MAX_MESSAGE_GAP = 2000;
void create_chain_key(
static void create_chain_key(
olm::SharedKey const & root_key,
olm::Curve25519KeyPair const & our_key,
olm::Curve25519PublicKey const & their_key,
......@@ -54,7 +54,7 @@ void create_chain_key(
}
void advance_chain_key(
static void advance_chain_key(
olm::ChainKey const & chain_key,
olm::ChainKey & new_chain_key
) {
......@@ -67,7 +67,7 @@ void advance_chain_key(
}
void create_message_keys(
static void create_message_keys(
olm::ChainKey const & chain_key,
olm::KdfInfo const & info,
olm::MessageKey & message_key
......@@ -81,7 +81,7 @@ void create_message_keys(
}
std::size_t verify_mac_and_decrypt(
static std::size_t verify_mac_and_decrypt(
olm::Cipher const & cipher,
olm::MessageKey const & message_key,
olm::MessageReader const & reader,
......@@ -96,7 +96,7 @@ std::size_t verify_mac_and_decrypt(
}
std::size_t verify_mac_and_decrypt_for_existing_chain(
static std::size_t verify_mac_and_decrypt_for_existing_chain(
olm::Ratchet const & session,
olm::ChainKey const & chain,
olm::MessageReader const & reader,
......@@ -130,7 +130,7 @@ std::size_t verify_mac_and_decrypt_for_existing_chain(
}
std::size_t verify_mac_and_decrypt_for_new_chain(
static std::size_t verify_mac_and_decrypt_for_new_chain(
olm::Ratchet const & session,
olm::MessageReader const & reader,
std::uint8_t * plaintext, std::size_t max_plaintext_length
......
......@@ -101,7 +101,7 @@ std::size_t olm::Session::new_outbound_session(
namespace {
bool check_message_fields(
static bool check_message_fields(
olm::PreKeyMessageReader & reader, bool have_their_identity_key
) {
bool ok = true;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment