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

Remove the RemoteKey type since it wasn't being used

parent 5291ec78
No related branches found
No related tags found
No related merge requests found
......@@ -21,18 +21,11 @@ namespace olm {
class Account;
struct RemoteKey {
std::uint32_t id;
Curve25519PublicKey key;
};
enum struct MessageType {
PRE_KEY = 0,
MESSAGE = 1,
};
struct Session {
Session();
......@@ -42,7 +35,7 @@ struct Session {
bool received_message;
RemoteKey alice_identity_key;
Curve25519PublicKey alice_identity_key;
Curve25519PublicKey alice_base_key;
Curve25519PublicKey bob_one_time_key;
std::uint32_t bob_one_time_key_id;
......@@ -52,7 +45,7 @@ struct Session {
std::size_t new_outbound_session(
Account const & local_account,
Curve25519PublicKey const & identity_key,
RemoteKey const & one_time_key,
Curve25519PublicKey const & one_time_key,
std::uint8_t const * random, std::size_t random_length
);
......
......@@ -435,7 +435,7 @@ size_t olm_create_outbound_session(
return std::size_t(-1);
}
olm::Curve25519PublicKey identity_key;
olm::RemoteKey one_time_key;
olm::Curve25519PublicKey one_time_key;
olm::decode_base64(
from_c(their_identity_key), their_identity_key_length,
......@@ -443,7 +443,7 @@ size_t olm_create_outbound_session(
);
olm::decode_base64(
from_c(their_one_time_key), their_one_time_key_length,
one_time_key.key.public_key
one_time_key.public_key
);
return from_c(session)->new_outbound_session(
......
......@@ -59,7 +59,7 @@ std::size_t olm::Session::new_outbound_session_random_length() {
std::size_t olm::Session::new_outbound_session(
olm::Account const & local_account,
olm::Curve25519PublicKey const & identity_key,
olm::RemoteKey const & one_time_key,
olm::Curve25519PublicKey const & one_time_key,
std::uint8_t const * random, std::size_t random_length
) {
if (random_length < new_outbound_session_random_length()) {
......@@ -74,22 +74,21 @@ std::size_t olm::Session::new_outbound_session(
olm::curve25519_generate_key(random + 32, ratchet_key);
received_message = false;
alice_identity_key.id = 0;
alice_identity_key.key = local_account.identity_keys.curve25519_key;
alice_identity_key = local_account.identity_keys.curve25519_key;
alice_base_key = base_key;
bob_one_time_key = one_time_key.key;
bob_one_time_key = one_time_key;
std::uint8_t shared_secret[96];
olm::curve25519_shared_secret(
local_account.identity_keys.curve25519_key,
one_time_key.key, shared_secret
one_time_key, shared_secret
);
olm::curve25519_shared_secret(
base_key, identity_key, shared_secret + 32
);
olm::curve25519_shared_secret(
base_key, one_time_key.key, shared_secret + 64
base_key, one_time_key, shared_secret + 64
);
ratchet.initialise_as_alice(shared_secret, 96, ratchet_key);
......@@ -144,7 +143,7 @@ std::size_t olm::Session::new_inbound_session(
return std::size_t(-1);
}
std::memcpy(alice_identity_key.key.public_key, reader.identity_key, 32);
std::memcpy(alice_identity_key.public_key, reader.identity_key, 32);
std::memcpy(alice_base_key.public_key, reader.base_key, 32);
std::memcpy(bob_one_time_key.public_key, reader.one_time_key, 32);
olm::Curve25519PublicKey ratchet_key;
......@@ -162,7 +161,7 @@ std::size_t olm::Session::new_inbound_session(
std::uint8_t shared_secret[96];
olm::curve25519_shared_secret(
our_one_time_key->key, alice_identity_key.key, shared_secret
our_one_time_key->key, alice_identity_key, shared_secret
);
olm::curve25519_shared_secret(
local_account.identity_keys.curve25519_key,
......@@ -190,7 +189,7 @@ bool olm::Session::matches_inbound_session(
bool same = true;
same = same && 0 == std::memcmp(
reader.identity_key, alice_identity_key.key.public_key, KEY_LENGTH
reader.identity_key, alice_identity_key.public_key, KEY_LENGTH
);
same = same && 0 == std::memcmp(
reader.base_key, alice_base_key.public_key, KEY_LENGTH
......@@ -267,7 +266,7 @@ std::size_t olm::Session::encrypt(
writer.one_time_key, bob_one_time_key.public_key, KEY_LENGTH
);
std::memcpy(
writer.identity_key, alice_identity_key.key.public_key, KEY_LENGTH
writer.identity_key, alice_identity_key.public_key, KEY_LENGTH
);
std::memcpy(
writer.base_key, alice_base_key.public_key, KEY_LENGTH
......@@ -361,8 +360,7 @@ std::size_t olm::pickle_length(
) {
std::size_t length = 0;
length += olm::pickle_length(value.received_message);
length += olm::pickle_length(value.alice_identity_key.id);
length += olm::pickle_length(value.alice_identity_key.key);
length += olm::pickle_length(value.alice_identity_key);
length += olm::pickle_length(value.alice_base_key);
length += olm::pickle_length(value.bob_one_time_key);
length += olm::pickle_length(value.bob_one_time_key_id);
......@@ -376,8 +374,7 @@ std::uint8_t * olm::pickle(
Session const & value
) {
pos = olm::pickle(pos, value.received_message);
pos = olm::pickle(pos, value.alice_identity_key.id);
pos = olm::pickle(pos, value.alice_identity_key.key);
pos = olm::pickle(pos, value.alice_identity_key);
pos = olm::pickle(pos, value.alice_base_key);
pos = olm::pickle(pos, value.bob_one_time_key);
pos = olm::pickle(pos, value.bob_one_time_key_id);
......@@ -391,8 +388,7 @@ std::uint8_t const * olm::unpickle(
Session & value
) {
pos = olm::unpickle(pos, end, value.received_message);
pos = olm::unpickle(pos, end, value.alice_identity_key.id);
pos = olm::unpickle(pos, end, value.alice_identity_key.key);
pos = olm::unpickle(pos, end, value.alice_identity_key);
pos = olm::unpickle(pos, end, value.alice_base_key);
pos = olm::unpickle(pos, end, value.bob_one_time_key);
pos = olm::unpickle(pos, end, value.bob_one_time_key_id);
......
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