Remove blockingApproval
// FREEBIE
This commit is contained in:
		
					parent
					
						
							
								53e7e1be3a
							
						
					
				
			
			
				commit
				
					
						c6bfdec84d
					
				
			
		
					 4 changed files with 8 additions and 44 deletions
				
			
		| 
						 | 
				
			
			@ -232,7 +232,6 @@
 | 
			
		|||
                    var attributes = cursor.value;
 | 
			
		||||
                    attributes.timestamp = 0;
 | 
			
		||||
                    attributes.firstUse = false;
 | 
			
		||||
                    attributes.blockingApproval = true;
 | 
			
		||||
                    attributes.nonblockingApproval = false;
 | 
			
		||||
                    attributes.seen = 0;
 | 
			
		||||
                    promises.push(new Promise(function(resolve, reject) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -355,7 +355,7 @@
 | 
			
		|||
            var identityKey = dcodeIO.ByteBuffer.wrap(profile.identityKey, 'base64').toArrayBuffer();
 | 
			
		||||
 | 
			
		||||
            return textsecure.storage.protocol.saveIdentity(
 | 
			
		||||
              id, identityKey, storage.get('safety-numbers-approval', true), false
 | 
			
		||||
              id, identityKey, false
 | 
			
		||||
            );
 | 
			
		||||
        });
 | 
			
		||||
    },
 | 
			
		||||
| 
						 | 
				
			
			@ -525,7 +525,7 @@
 | 
			
		|||
            throw 'No conflicts to resolve';
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return textsecure.storage.protocol.saveIdentity(number, identityKey, true, true).then(function() {
 | 
			
		||||
        return textsecure.storage.protocol.saveIdentity(number, identityKey, true).then(function() {
 | 
			
		||||
            var promise = Promise.resolve();
 | 
			
		||||
            var conflicts = this.messageCollection.filter(function(message) {
 | 
			
		||||
                return message.hasKeyConflict(number);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -319,10 +319,6 @@
 | 
			
		|||
                console.log("isTrustedForSending: Identity keys don't match...");
 | 
			
		||||
                return false;
 | 
			
		||||
            }
 | 
			
		||||
            if (this.isBlockingApprovalRequired(identityKey)) {
 | 
			
		||||
                console.log("isTrustedForSending: Needs blocking approval!");
 | 
			
		||||
                return false;
 | 
			
		||||
            }
 | 
			
		||||
            if (this.isNonBlockingApprovalRequired(identityKey)) {
 | 
			
		||||
                console.log("isTrustedForSending: Needs non-blocking approval!");
 | 
			
		||||
                return false;
 | 
			
		||||
| 
						 | 
				
			
			@ -342,7 +338,7 @@
 | 
			
		|||
                });
 | 
			
		||||
            });
 | 
			
		||||
        },
 | 
			
		||||
        saveIdentity: function(identifier, publicKey, blockingApproval, nonblockingApproval) {
 | 
			
		||||
        saveIdentity: function(identifier, publicKey, nonblockingApproval) {
 | 
			
		||||
            if (identifier === null || identifier === undefined) {
 | 
			
		||||
                throw new Error("Tried to put identity key for undefined/null key");
 | 
			
		||||
            }
 | 
			
		||||
| 
						 | 
				
			
			@ -361,7 +357,6 @@
 | 
			
		|||
                            publicKey           : publicKey,
 | 
			
		||||
                            firstUse            : true,
 | 
			
		||||
                            timestamp           : Date.now(),
 | 
			
		||||
                            blockingApproval    : blockingApproval,
 | 
			
		||||
                            nonblockingApproval : nonblockingApproval,
 | 
			
		||||
                        }).then(function() {
 | 
			
		||||
                            resolve(false);
 | 
			
		||||
| 
						 | 
				
			
			@ -372,16 +367,14 @@
 | 
			
		|||
                            publicKey           : publicKey,
 | 
			
		||||
                            firstUse            : false,
 | 
			
		||||
                            timestamp           : Date.now(),
 | 
			
		||||
                            blockingApproval    : blockingApproval,
 | 
			
		||||
                            nonblockingApproval : nonblockingApproval,
 | 
			
		||||
                        }).then(function() {
 | 
			
		||||
                            this.trigger('keychange', identifier);
 | 
			
		||||
                            resolve(true);
 | 
			
		||||
                        }.bind(this));
 | 
			
		||||
                    } else if (this.isBlockingApprovalRequired(identityKey) || this.isNonBlockingApprovalRequired(identityKey)) {
 | 
			
		||||
                    } else if (this.isNonBlockingApprovalRequired(identityKey)) {
 | 
			
		||||
                        console.log("Setting approval status...");
 | 
			
		||||
                        identityKey.save({
 | 
			
		||||
                            blockingApproval    : blockingApproval,
 | 
			
		||||
                            nonblockingApproval : nonblockingApproval,
 | 
			
		||||
                        }).then(function() {
 | 
			
		||||
                            resolve(false);
 | 
			
		||||
| 
						 | 
				
			
			@ -392,11 +385,6 @@
 | 
			
		|||
                }.bind(this));
 | 
			
		||||
            }.bind(this));
 | 
			
		||||
        },
 | 
			
		||||
        isBlockingApprovalRequired: function(identityKey) {
 | 
			
		||||
            return (!identityKey.get('firstUse')
 | 
			
		||||
                    && storage.get('safety-numbers-approval', true)
 | 
			
		||||
                    && !identityKey.get('blockingApproval'));
 | 
			
		||||
        },
 | 
			
		||||
        isNonBlockingApprovalRequired: function(identityKey) {
 | 
			
		||||
          return (!identityKey.get('firstUse')
 | 
			
		||||
                  && Date.now() - identityKey.get('timestamp') < TIMESTAMP_THRESHOLD
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -81,7 +81,6 @@ describe("SignalProtocolStore", function() {
 | 
			
		|||
              publicKey           : testKey.pubKey,
 | 
			
		||||
              firstUse            : true,
 | 
			
		||||
              timestamp           : oldTimestamp,
 | 
			
		||||
              blockingApproval    : false,
 | 
			
		||||
              nonblockingApproval : false,
 | 
			
		||||
          }).then(function() {
 | 
			
		||||
            store.saveIdentity(identifier, newIdentity).then(function() {
 | 
			
		||||
| 
						 | 
				
			
			@ -102,7 +101,6 @@ describe("SignalProtocolStore", function() {
 | 
			
		|||
          record.save({
 | 
			
		||||
              publicKey           : testKey.pubKey,
 | 
			
		||||
              timestamp           : oldTimestamp,
 | 
			
		||||
              blockingApproval    : false,
 | 
			
		||||
              nonblockingApproval : false,
 | 
			
		||||
          }).then(function() { done(); });
 | 
			
		||||
        });
 | 
			
		||||
| 
						 | 
				
			
			@ -111,9 +109,8 @@ describe("SignalProtocolStore", function() {
 | 
			
		|||
            record.save({ firstUse: true }).then(function() { done(); });
 | 
			
		||||
          });
 | 
			
		||||
          it('nothing changes', function(done) {
 | 
			
		||||
            store.saveIdentity(identifier, testKey.pubKey, true, true).then(function() {
 | 
			
		||||
            store.saveIdentity(identifier, testKey.pubKey, true).then(function() {
 | 
			
		||||
              record.fetch().then(function() {
 | 
			
		||||
                assert(!record.get('blockingApproval'));
 | 
			
		||||
                assert(!record.get('nonblockingApproval'));
 | 
			
		||||
                assert.strictEqual(record.get('timestamp'), oldTimestamp);
 | 
			
		||||
                done();
 | 
			
		||||
| 
						 | 
				
			
			@ -125,30 +122,10 @@ describe("SignalProtocolStore", function() {
 | 
			
		|||
          before(function(done) {
 | 
			
		||||
            record.save({ firstUse: false }).then(function() { done(); });
 | 
			
		||||
          });
 | 
			
		||||
          describe('If blocking approval is required', function() {
 | 
			
		||||
            before(function() {
 | 
			
		||||
              storage.put('safety-numbers-approval', true);
 | 
			
		||||
            });
 | 
			
		||||
            it('updates blocking and non-blocking approval', function(done) {
 | 
			
		||||
              store.saveIdentity(identifier, testKey.pubKey, true, true).then(function() {
 | 
			
		||||
                record.fetch().then(function() {
 | 
			
		||||
                  assert(record.get('blockingApproval'));
 | 
			
		||||
                  assert(record.get('nonblockingApproval'));
 | 
			
		||||
                  assert.strictEqual(record.get('timestamp'), oldTimestamp);
 | 
			
		||||
                  assert.strictEqual(record.get('firstUse'), false);
 | 
			
		||||
                  done();
 | 
			
		||||
                });
 | 
			
		||||
              });
 | 
			
		||||
            });
 | 
			
		||||
          });
 | 
			
		||||
          describe('If nonblocking approval is required', function() {
 | 
			
		||||
            before(function() {
 | 
			
		||||
              storage.put('safety-numbers-approval', false);
 | 
			
		||||
            });
 | 
			
		||||
            it('updates blocking and non-blocking approval', function(done) {
 | 
			
		||||
              store.saveIdentity(identifier, testKey.pubKey, true, true).then(function() {
 | 
			
		||||
            it('updates non-blocking approval', function(done) {
 | 
			
		||||
              store.saveIdentity(identifier, testKey.pubKey, true).then(function() {
 | 
			
		||||
                record.fetch().then(function() {
 | 
			
		||||
                  assert(record.get('blockingApproval'));
 | 
			
		||||
                  assert(record.get('nonblockingApproval'));
 | 
			
		||||
                  assert.strictEqual(record.get('timestamp'), oldTimestamp);
 | 
			
		||||
                  assert.strictEqual(record.get('firstUse'), false);
 | 
			
		||||
| 
						 | 
				
			
			@ -249,7 +226,7 @@ describe("SignalProtocolStore", function() {
 | 
			
		|||
            });
 | 
			
		||||
            it('returns true if neither blocking nor nonblocking approval is required', function(done) {
 | 
			
		||||
                storage.put('safety-numbers-approval', false);
 | 
			
		||||
                store.saveIdentity(identifier, newIdentity, true, true).then(function() {
 | 
			
		||||
                store.saveIdentity(identifier, newIdentity, true).then(function() {
 | 
			
		||||
                    store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
 | 
			
		||||
                      if (trusted) {
 | 
			
		||||
                          done();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue