From 798018ec5a554a72627803b4bb5b932d3ac5034b Mon Sep 17 00:00:00 2001 From: frank Date: Mon, 24 Jul 2023 11:53:24 +0800 Subject: [PATCH] discard backup message when recovering account --- .../main/java/im/status/ethereum/module/StatusModule.java | 4 ++-- modules/react-native-status/ios/RCTStatus/RCTStatus.m | 5 +++-- src/native_module/core.cljs | 4 ++-- src/status_im/keycard/real_keycard.cljs | 2 +- src/status_im/keycard/recovery.cljs | 3 ++- status-go-version.json | 6 +++--- 6 files changed, 13 insertions(+), 11 deletions(-) diff --git a/modules/react-native-status/android/src/main/java/im/status/ethereum/module/StatusModule.java b/modules/react-native-status/android/src/main/java/im/status/ethereum/module/StatusModule.java index 9a2f02305f4b..95b48481bcd3 100644 --- a/modules/react-native-status/android/src/main/java/im/status/ethereum/module/StatusModule.java +++ b/modules/react-native-status/android/src/main/java/im/status/ethereum/module/StatusModule.java @@ -626,10 +626,10 @@ public void migrateKeyStoreDir(final String accountData, final String password) } @ReactMethod - public void loginWithKeycard(final String accountData, final String password, final String chatKey) { + public void loginWithKeycard(final String accountData, final String password, final String chatKey, final String nodeConfigJSON) { Log.d(TAG, "loginWithKeycard"); this.migrateKeyStoreDir(accountData, password); - String result = Statusgo.loginWithKeycard(accountData, password, chatKey); + String result = Statusgo.loginWithKeycard(accountData, password, chatKey, nodeConfigJSON); if (result.startsWith("{\"error\":\"\"")) { Log.d(TAG, "LoginWithKeycard result: " + result); } else { diff --git a/modules/react-native-status/ios/RCTStatus/RCTStatus.m b/modules/react-native-status/ios/RCTStatus/RCTStatus.m index 803c20afc5c0..4e1279ffba69 100644 --- a/modules/react-native-status/ios/RCTStatus/RCTStatus.m +++ b/modules/react-native-status/ios/RCTStatus/RCTStatus.m @@ -633,14 +633,15 @@ - (void) migrateKeystore:(NSString *)accountData RCT_EXPORT_METHOD(loginWithKeycard:(NSString *)accountData password:(NSString *)password - chatKey:(NSString *)chatKey) { + chatKey:(NSString *)chatKey + nodeConfigJSON:(NSString *)nodeConfigJSON) { #if DEBUG NSLog(@"LoginWithKeycard() method called"); #endif [self getExportDbFilePath]; [self migrateKeystore:accountData password:password]; - NSString *result = StatusgoLoginWithKeycard(accountData, password, chatKey); + NSString *result = StatusgoLoginWithKeycard(accountData, password, chatKey, nodeConfigJSON); NSLog(@"%@", result); } diff --git a/src/native_module/core.cljs b/src/native_module/core.cljs index 17b66f0b5c05..bc7ee9a8c28f 100644 --- a/src/native_module/core.cljs +++ b/src/native_module/core.cljs @@ -225,12 +225,12 @@ (.verifyDatabasePassword ^js (status) key-uid hashed-password callback)) (defn login-with-keycard - [{:keys [key-uid multiaccount-data password chat-key]}] + [{:keys [key-uid multiaccount-data password chat-key node-config]}] (log/debug "[native-module] login-with-keycard") (clear-web-data) (init-keystore key-uid - #(.loginWithKeycard ^js (status) multiaccount-data password chat-key))) + #(.loginWithKeycard ^js (status) multiaccount-data password chat-key (types/clj->json node-config)))) (defn set-soft-input-mode [mode] diff --git a/src/status_im/keycard/real_keycard.cljs b/src/status_im/keycard/real_keycard.cljs index 372e7c0a3469..1ab65938c460 100644 --- a/src/status_im/keycard/real_keycard.cljs +++ b/src/status_im/keycard/real_keycard.cljs @@ -307,7 +307,7 @@ (defn login [args] - (native-module/login-with-keycard args)) + (native-module/login-with-keycard (assoc args :node-config {:ProcessBackedupMessages false}))) (defn send-transaction-with-signature [{:keys [transaction signature on-completed]}] diff --git a/src/status_im/keycard/recovery.cljs b/src/status_im/keycard/recovery.cljs index 3f80ff3bf409..12a58f882a12 100644 --- a/src/status_im/keycard/recovery.cljs +++ b/src/status_im/keycard/recovery.cljs @@ -253,7 +253,8 @@ encryption-pass #(let [{:keys [error]} (types/json->clj %)] (if (string/blank? error) - (native-module/login-with-keycard login-params) + (native-module/login-with-keycard + (assoc login-params :node-config {:ProcessBackedupMessages true})) (throw (js/Error. "Please shake the phone to report this error and restart the app. Migration failed unexpectedly."))))))) diff --git a/status-go-version.json b/status-go-version.json index bcbee8c00ba1..1309a4e68c88 100644 --- a/status-go-version.json +++ b/status-go-version.json @@ -3,7 +3,7 @@ "_comment": "Instead use: scripts/update-status-go.sh ", "owner": "status-im", "repo": "status-go", - "version": "v0.162.5", - "commit-sha1": "cf2d72bfa83f094719a93b7b7fd5a68e3a68ab47", - "src-sha256": "0x79nm1n6gbgz2lzsky29laap7m0r0hggrb2fsn07bf0xw0364qn" + "version": "fix/discard-backedup-messages-if-not-acc-recover-flow", + "commit-sha1": "9cbbc5c078525dbc4c14e6228396910ef472d32d", + "src-sha256": "1b705s4hakd3ahp7arrakqa0kz7vkg3r55d0mzynygax4dpgmlsm" }