diff --git a/src/js/dao/devicestorage.js b/src/js/dao/devicestorage.js index 3eab838..9384119 100644 --- a/src/js/dao/devicestorage.js +++ b/src/js/dao/devicestorage.js @@ -43,13 +43,13 @@ app.dao.DeviceStorage = function(util, crypto, jsonDao, sqlcipherDao) { * @param offset [Number] The offset of items to fetch (0 is the last stored item) * @param num [Number] The number of items to fetch (null means fetch all) */ - this.listItems = function(type, offset, num, callback) { + this.listItems = function(type, offset, num, senderPubkeys, callback) { // fetch all items of a certain type from the data-store jsonDao.list(crypto.emailAddress + '_' + type, offset, num, function(encryptedList) { // decrypt list - crypto.decryptListForUser(encryptedList, null, function(err, decryptedList) { + crypto.decryptListForUser(encryptedList, senderPubkeys, function(err, decryptedList) { callback(err, decryptedList); }); }); diff --git a/test/unit/devicestorage-test.js b/test/unit/devicestorage-test.js index 4cc664e..1ea796c 100644 --- a/test/unit/devicestorage-test.js +++ b/test/unit/devicestorage-test.js @@ -39,7 +39,9 @@ asyncTest("Init", 3, function() { }); asyncTest("Encrypt list for user", 2, function() { - devicestorage_test.crypto.encryptListForUser(devicestorage_test.list, null, function(err, encryptedList) { + var receiverPubkeys = [devicestorage_test.crypto.getPublicKey()]; + + devicestorage_test.crypto.encryptListForUser(devicestorage_test.list, receiverPubkeys, function(err, encryptedList) { ok(!err); equal(encryptedList.length, devicestorage_test.list.length, 'Encrypt list'); @@ -58,11 +60,13 @@ asyncTest("Store encrypted list", 1, function() { asyncTest("List items", 3, function() { + var senderPubkeys = [devicestorage_test.crypto.getPublicKey()]; + var offset = 2, num = 6; // list items from storage (decrypted) - devicestorage_test.storage.listItems('email_inbox_5', offset, num, function(err, decryptedList) { + devicestorage_test.storage.listItems('email_inbox_5', offset, num, senderPubkeys, function(err, decryptedList) { ok(!err); equal(decryptedList.length, num, 'Found ' + decryptedList.length + ' items in store (and decrypted)');