s/getEncodedNumber// (with XXXs)

This commit is contained in:
Matt Corallo 2014-05-22 01:14:46 -04:00
parent 9aae93fc99
commit d387cd22f5
2 changed files with 12 additions and 21 deletions

View file

@ -144,7 +144,7 @@ window.textsecure.crypto = new function() {
} }
crypto_storage.saveSession = function(encodedNumber, session) { crypto_storage.saveSession = function(encodedNumber, session) {
var sessions = textsecure.storage.getEncrypted("session" + getEncodedNumber(encodedNumber)); var sessions = textsecure.storage.getEncrypted("session" + encodedNumber);
if (sessions === undefined) if (sessions === undefined)
sessions = {}; sessions = {};
@ -171,11 +171,11 @@ window.textsecure.crypto = new function() {
else else
sessions[getString(session.indexInfo.baseKey)] = session; sessions[getString(session.indexInfo.baseKey)] = session;
textsecure.storage.putEncrypted("session" + getEncodedNumber(encodedNumber), sessions); textsecure.storage.putEncrypted("session" + encodedNumber, sessions);
} }
crypto_storage.getOpenSession = function(encodedNumber) { crypto_storage.getOpenSession = function(encodedNumber) {
var sessions = textsecure.storage.getEncrypted("session" + getEncodedNumber(encodedNumber)); var sessions = textsecure.storage.getEncrypted("session" + encodedNumber);
if (sessions === undefined) if (sessions === undefined)
return undefined; return undefined;
@ -190,7 +190,7 @@ window.textsecure.crypto = new function() {
} }
crypto_storage.getSessionByRemoteEphemeralKey = function(encodedNumber, remoteEphemeralKey) { crypto_storage.getSessionByRemoteEphemeralKey = function(encodedNumber, remoteEphemeralKey) {
var sessions = textsecure.storage.getEncrypted("session" + getEncodedNumber(encodedNumber)); var sessions = textsecure.storage.getEncrypted("session" + encodedNumber);
if (sessions === undefined) if (sessions === undefined)
return undefined; return undefined;
@ -217,7 +217,7 @@ window.textsecure.crypto = new function() {
crypto_storage.getSessionOrIdentityKeyByBaseKey = function(encodedNumber, baseKey) { crypto_storage.getSessionOrIdentityKeyByBaseKey = function(encodedNumber, baseKey) {
var sessions = textsecure.storage.getEncrypted("session" + getEncodedNumber(encodedNumber)); var sessions = textsecure.storage.getEncrypted("session" + encodedNumber);
if (sessions === undefined) if (sessions === undefined)
return undefined; return undefined;
@ -603,14 +603,15 @@ window.textsecure.crypto = new function() {
case 0: //TYPE_MESSAGE_PLAINTEXT case 0: //TYPE_MESSAGE_PLAINTEXT
return Promise.resolve(textsecure.protos.decodePushMessageContentProtobuf(getString(proto.message))); return Promise.resolve(textsecure.protos.decodePushMessageContentProtobuf(getString(proto.message)));
case 1: //TYPE_MESSAGE_CIPHERTEXT case 1: //TYPE_MESSAGE_CIPHERTEXT
return decryptWhisperMessage(proto.source, getString(proto.message)).then(function(result) { return decryptWhisperMessage(proto.source + "." + proto.sourceDevice, getString(proto.message)).then(function(result) {
return {message:result, pushMessage: proto}; return {message:result, pushMessage: proto};
}); });
case 3: //TYPE_MESSAGE_PREKEY_BUNDLE case 3: //TYPE_MESSAGE_PREKEY_BUNDLE
if (proto.message.readUint8() != (2 << 4 | 2)) if (proto.message.readUint8() != (2 << 4 | 2))
throw new Error("Bad version byte"); throw new Error("Bad version byte");
var preKeyProto = textsecure.protos.decodePreKeyWhisperMessageProtobuf(getString(proto.message)); var preKeyProto = textsecure.protos.decodePreKeyWhisperMessageProtobuf(getString(proto.message));
return initSessionFromPreKeyWhisperMessage(proto.source, preKeyProto).then(function(sessions) { //XXX: proto.sourceDevice == jsNumber??? (and above)
return initSessionFromPreKeyWhisperMessage(proto.source + "." + proto.sourceDevice, preKeyProto).then(function(sessions) {
return decryptWhisperMessage(proto.source, getString(preKeyProto.message), sessions[0]).then(function(result) { return decryptWhisperMessage(proto.source, getString(preKeyProto.message), sessions[0]).then(function(result) {
if (sessions[1] !== undefined) if (sessions[1] !== undefined)
crypto_storage.saveSession(proto.source, sessions[1]); crypto_storage.saveSession(proto.source, sessions[1]);

View file

@ -195,17 +195,6 @@ function getNumberFromString(string) {
return string.split(".")[0]; return string.split(".")[0];
} }
function getEncodedNumber(number) {
var split = number.split(".");
if (split.length > 1) {
if (split[1] == 1)
return split[0];
else
return number;
} else
return number;
}
function verifyNumber(string) { function verifyNumber(string) {
//TODO: fancy country-code guessing and number verification //TODO: fancy country-code guessing and number verification
return getEncodedNumber(string.trim()); return getEncodedNumber(string.trim());
@ -285,10 +274,11 @@ window.textsecure.storage = function() {
*** Device Storage *** *** Device Storage ***
**********************/ **********************/
self.devices = function() { self.devices = function() {
//TODO: Just store numbers with the device list in the object, not a list of pointers...
var self = {}; var self = {};
self.getDeviceObject = function(encodedNumber) { self.getDeviceObject = function(encodedNumber) {
return textsecure.storage.getEncrypted("deviceObject" + getEncodedNumber(encodedNumber)); return textsecure.storage.getEncrypted("deviceObject" + encodedNumber);
} }
self.getDeviceIdListFromNumber = function(number) { self.getDeviceIdListFromNumber = function(number) {
@ -316,7 +306,7 @@ window.textsecure.storage = function() {
self.saveDeviceObject = function(deviceObject) { self.saveDeviceObject = function(deviceObject) {
var existing = this.getDeviceObject(deviceObject.encodedNumber); var existing = this.getDeviceObject(deviceObject.encodedNumber);
if (existing === undefined) if (existing === undefined)
existing = {encodedNumber: getEncodedNumber(deviceObject.encodedNumber)}; existing = {encodedNumber: deviceObject.encodedNumber};
for (key in deviceObject) { for (key in deviceObject) {
if (key == "encodedNumber") if (key == "encodedNumber")
continue; continue;
@ -326,7 +316,7 @@ window.textsecure.storage = function() {
existing[key] = deviceObject[key]; existing[key] = deviceObject[key];
} }
textsecure.storage.putEncrypted("deviceObject" + getEncodedNumber(deviceObject.encodedNumber), existing); textsecure.storage.putEncrypted("deviceObject" + deviceObject.encodedNumber, existing);
this.addDeviceIdForNumber(deviceObject.encodedNumber, getDeviceId(deviceObject.encodedNumber)); this.addDeviceIdForNumber(deviceObject.encodedNumber, getDeviceId(deviceObject.encodedNumber));
} }