Skip to content

Commit fca4d74

Browse files
committed
Clear verification sessionId after registration/changeNumber
Fixes #1882
1 parent ad2338b commit fca4d74

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

lib/src/main/java/org/asamk/signal/manager/helper/AccountHelper.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,7 @@ private void finishChangeNumberInternal(
315315
Utils.mapKeys(pniRegistrationIds, Object::toString))));
316316
});
317317

318+
account.clearSessionId();
318319
final var updatePni = PNI.parseOrThrow(result.first().getPni());
319320
if (updatePni.equals(account.getPni())) {
320321
logger.debug("PNI is unchanged after change number");

lib/src/main/java/org/asamk/signal/manager/storage/SignalAccount.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,7 @@ public void finishRegistration(
376376
trustSelfIdentity(ServiceIdType.ACI);
377377
trustSelfIdentity(ServiceIdType.PNI);
378378
getKeyValueStore().storeEntry(lastRecipientsRefresh, null);
379+
clearSessionId();
379380
}
380381

381382
public void initDatabase() {
@@ -1485,6 +1486,12 @@ public void setSessionId(final String sessionNumber, final String sessionId) {
14851486
keyValueStore.storeEntry(verificationSessionId, sessionId);
14861487
}
14871488

1489+
public void clearSessionId() {
1490+
final var keyValueStore = getKeyValueStore();
1491+
keyValueStore.storeEntry(verificationSessionNumber, null);
1492+
keyValueStore.storeEntry(verificationSessionId, null);
1493+
}
1494+
14881495
public void setEncryptedDeviceName(final String encryptedDeviceName) {
14891496
this.encryptedDeviceName = encryptedDeviceName;
14901497
save();

0 commit comments

Comments
 (0)