import org.signal.libsignal.protocol.util.KeyHelper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.whispersystems.signalservice.api.push.exceptions.DeprecatedVersionException;
import java.io.File;
import java.io.IOException;
try {
manager.checkAccountState();
+ } catch (DeprecatedVersionException e) {
+ manager.close();
+ throw new AccountCheckException("signal-cli version is too old for the Signal-Server, please update.");
} catch (IOException e) {
manager.close();
throw new AccountCheckException("Error while checking account " + number + ": " + e.getMessage(), e);
import org.whispersystems.signalservice.api.push.PNI;
import org.whispersystems.signalservice.api.push.SignedPreKeyEntity;
import org.whispersystems.signalservice.api.push.exceptions.AuthorizationFailedException;
+import org.whispersystems.signalservice.api.push.exceptions.DeprecatedVersionException;
import org.whispersystems.signalservice.api.util.DeviceNameUtil;
import org.whispersystems.signalservice.internal.push.OutgoingPushMessage;
&& account.getRegistrationLockPin() != null) {
migrateRegistrationPin();
}
+ } catch (DeprecatedVersionException e) {
+ logger.debug("Signal-Server returned deprecated version exception", e);
+ throw e;
} catch (AuthorizationFailedException e) {
account.setRegistered(false);
throw e;