Handle PIN creation failure better.

This commit is contained in:
Greyson Parrelli
2020-05-09 12:02:18 -04:00
parent 14858adc88
commit 618b1b5ace
9 changed files with 52 additions and 14 deletions

View File

@@ -27,6 +27,7 @@ import org.whispersystems.signalservice.api.kbs.HashedPin;
import org.whispersystems.signalservice.api.kbs.MasterKey;
import org.whispersystems.signalservice.internal.contacts.crypto.UnauthenticatedResponseException;
import org.whispersystems.signalservice.internal.contacts.entities.TokenResponse;
import org.whispersystems.signalservice.internal.storage.protos.SignalStorage;
import java.io.IOException;
import java.util.Arrays;
@@ -175,6 +176,15 @@ public final class PinState {
updateState(buildInferredStateFromOtherFields());
}
/**
* Invoked when PIN creation fails.
*/
public static synchronized void onPinCreateFailure() {
if (getState() == State.NO_REGISTRATION_LOCK) {
SignalStore.kbsValues().onPinCreateFailure();
}
}
/**
* Invoked whenever a Signal PIN user enables registration lock.
*/