|
|
|
@ -7,6 +7,7 @@
|
|
|
|
window.Whisper = window.Whisper || {};
|
|
|
|
window.Whisper = window.Whisper || {};
|
|
|
|
var ROTATION_INTERVAL = 48 * 60 * 60 * 1000;
|
|
|
|
var ROTATION_INTERVAL = 48 * 60 * 60 * 1000;
|
|
|
|
var timeout;
|
|
|
|
var timeout;
|
|
|
|
|
|
|
|
var scheduledTime;
|
|
|
|
|
|
|
|
|
|
|
|
function scheduleNextRotation() {
|
|
|
|
function scheduleNextRotation() {
|
|
|
|
var now = Date.now();
|
|
|
|
var now = Date.now();
|
|
|
|
@ -35,15 +36,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
function setTimeoutForNextRun() {
|
|
|
|
function setTimeoutForNextRun() {
|
|
|
|
var now = Date.now();
|
|
|
|
var now = Date.now();
|
|
|
|
var scheduledTime = storage.get('nextSignedKeyRotationTime', now);
|
|
|
|
var time = storage.get('nextSignedKeyRotationTime', now);
|
|
|
|
console.log('Next signed key rotation scheduled for', new Date(scheduledTime));
|
|
|
|
|
|
|
|
var waitTime = scheduledTime - now;
|
|
|
|
if (scheduledTime !== time || !timeout) {
|
|
|
|
|
|
|
|
scheduledTime = time;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
console.log('Next signed key rotation scheduled for', new Date(time));
|
|
|
|
|
|
|
|
var waitTime = time - now;
|
|
|
|
if (waitTime < 0) {
|
|
|
|
if (waitTime < 0) {
|
|
|
|
waitTime = 0;
|
|
|
|
waitTime = 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
clearTimeout(timeout);
|
|
|
|
clearTimeout(timeout);
|
|
|
|
timeout = setTimeout(runWhenOnline, waitTime);
|
|
|
|
timeout = setTimeout(runWhenOnline, waitTime);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
Whisper.RotateSignedPreKeyListener = {
|
|
|
|
Whisper.RotateSignedPreKeyListener = {
|
|
|
|
init: function(events) {
|
|
|
|
init: function(events) {
|
|
|
|
|