From 55e2dc6a900f7c1a35880ab7d0ce698b66f928fb Mon Sep 17 00:00:00 2001 From: Sean Hagstrom Date: Thu, 18 Apr 2024 09:34:00 +0200 Subject: [PATCH] Allow for timestamps to be saved with accounts (#5049) * fix_: allow for saving timestamp when saving account * fix_: associate timestamp to restored account --- api/geth_backend.go | 1 + multiaccounts/database.go | 2 +- multiaccounts/database_test.go | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/api/geth_backend.go b/api/geth_backend.go index ea9a2883f..adef81778 100644 --- a/api/geth_backend.go +++ b/api/geth_backend.go @@ -1358,6 +1358,7 @@ func (b *GethStatusBackend) generateOrImportAccount(mnemonic string, customizati CustomizationColor: multiacccommon.CustomizationColor(request.CustomizationColor), CustomizationColorClock: customizationColorClock, KDFIterations: request.KdfIterations, + Timestamp: time.Now().Unix(), } if account.KDFIterations == 0 { diff --git a/multiaccounts/database.go b/multiaccounts/database.go index 86cfef4a3..3891290be 100644 --- a/multiaccounts/database.go +++ b/multiaccounts/database.go @@ -323,7 +323,7 @@ func (db *Database) SaveAccount(account Account) error { account.KDFIterations = dbsetup.ReducedKDFIterationsNumber } - _, err = db.db.Exec("INSERT OR REPLACE INTO accounts (name, identicon, colorHash, colorId, customizationColor, customizationColorClock, keycardPairing, keyUid, kdfIterations) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)", account.Name, account.Identicon, colorHash, account.ColorID, account.CustomizationColor, account.CustomizationColorClock, account.KeycardPairing, account.KeyUID, account.KDFIterations) + _, err = db.db.Exec("INSERT OR REPLACE INTO accounts (name, identicon, colorHash, colorId, customizationColor, customizationColorClock, keycardPairing, keyUid, kdfIterations, loginTimestamp) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", account.Name, account.Identicon, colorHash, account.ColorID, account.CustomizationColor, account.CustomizationColorClock, account.KeycardPairing, account.KeyUID, account.KDFIterations, account.Timestamp) if err != nil { return err } diff --git a/multiaccounts/database_test.go b/multiaccounts/database_test.go index c8c409be5..a4cdce33d 100644 --- a/multiaccounts/database_test.go +++ b/multiaccounts/database_test.go @@ -28,7 +28,7 @@ func setupTestDB(t *testing.T) (*Database, func()) { func TestAccounts(t *testing.T) { db, stop := setupTestDB(t) defer stop() - expected := Account{Name: "string", KeyUID: "string", CustomizationColor: common.CustomizationColorBlue, ColorHash: ColorHash{{4, 3}, {4, 0}, {4, 3}, {4, 0}}, ColorID: 10, KDFIterations: dbsetup.ReducedKDFIterationsNumber} + expected := Account{Name: "string", KeyUID: "string", CustomizationColor: common.CustomizationColorBlue, ColorHash: ColorHash{{4, 3}, {4, 0}, {4, 3}, {4, 0}}, ColorID: 10, KDFIterations: dbsetup.ReducedKDFIterationsNumber, Timestamp: 1712856359} require.NoError(t, db.SaveAccount(expected)) accounts, err := db.GetAccounts() require.NoError(t, err)