X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/aaa6412469c0af93a226ba805e6dbe74b4ea9773..fea19c9e20ed07228420dae93399911a659e51b1:/src/main/java/org/asamk/signal/App.java diff --git a/src/main/java/org/asamk/signal/App.java b/src/main/java/org/asamk/signal/App.java index 91af270d..058ae6bb 100644 --- a/src/main/java/org/asamk/signal/App.java +++ b/src/main/java/org/asamk/signal/App.java @@ -23,6 +23,7 @@ import org.asamk.signal.dbus.DbusProvisioningManagerImpl; import org.asamk.signal.dbus.DbusRegistrationManagerImpl; import org.asamk.signal.manager.Manager; import org.asamk.signal.manager.RegistrationManager; +import org.asamk.signal.manager.Settings; import org.asamk.signal.manager.SignalAccountFiles; import org.asamk.signal.manager.api.AccountCheckException; import org.asamk.signal.manager.api.NotRegisteredException; @@ -64,13 +65,16 @@ public class App { .description("Commandline interface for Signal.") .version(BaseConfig.PROJECT_NAME + " " + BaseConfig.PROJECT_VERSION); - parser.addArgument("-v", "--version").help("Show package version.").action(Arguments.version()); - parser.addArgument("--verbose") + parser.addArgument("--version").help("Show package version.").action(Arguments.version()); + parser.addArgument("-v", "--verbose") .help("Raise log level and include lib signal logs. Specify multiple times for even more logs.") .action(Arguments.count()); parser.addArgument("--log-file") .type(File.class) .help("Write log output to the given file. If --verbose is also given, the detailed logs will only be written to the log file."); + parser.addArgument("--scrub-log") + .action(Arguments.storeTrue()) + .help("Scrub possibly sensitive information from the log, like phone numbers and UUIDs."); parser.addArgument("-c", "--config") .help("Set the path, where to store the config (Default: $XDG_DATA_HOME/signal-cli , $HOME/.local/share/signal-cli)."); @@ -98,6 +102,10 @@ public class App { .type(Arguments.enumStringType(TrustNewIdentityCli.class)) .setDefault(TrustNewIdentityCli.ON_FIRST_USE); + parser.addArgument("--disable-send-log") + .help("Disable message send log (for resending messages that recipient couldn't decrypt)") + .action(Arguments.storeTrue()); + var subparsers = parser.addSubparsers().title("subcommands").dest("command"); Commands.getCommandSubparserAttachers().forEach((key, value) -> { @@ -164,12 +172,14 @@ public class App { ? TrustNewIdentity.ON_FIRST_USE : trustNewIdentityCli == TrustNewIdentityCli.ALWAYS ? TrustNewIdentity.ALWAYS : TrustNewIdentity.NEVER; + final var disableSendLog = Boolean.TRUE.equals(ns.getBoolean("disable-send-log")); + final SignalAccountFiles signalAccountFiles; try { signalAccountFiles = new SignalAccountFiles(configPath, serviceEnvironment, BaseConfig.USER_AGENT, - trustNewIdentity); + new Settings(trustNewIdentity, disableSendLog)); } catch (IOException e) { throw new IOErrorException("Failed to read local accounts list", e); }