diff --git a/app/build.gradle.kts b/app/build.gradle.kts index e9502e4210..0f32abd2eb 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -203,6 +203,7 @@ android { buildConfigField("String", "SIGNAL_CAPTCHA_URL", "\"https://signalcaptchas.org/registration/generate.html\"") buildConfigField("String", "RECAPTCHA_PROOF_URL", "\"https://signalcaptchas.org/challenge/generate.html\"") buildConfigField("org.signal.libsignal.net.Network.Environment", "LIBSIGNAL_NET_ENV", "org.signal.libsignal.net.Network.Environment.PRODUCTION") + buildConfigField("int", "LIBSIGNAL_LOG_LEVEL", "org.signal.libsignal.protocol.logging.SignalProtocolLogger.INFO") buildConfigField("String", "BUILD_DISTRIBUTION_TYPE", "\"unset\"") buildConfigField("String", "BUILD_ENVIRONMENT_TYPE", "\"unset\"") @@ -381,6 +382,7 @@ android { buildConfigField("String", "SIGNAL_CAPTCHA_URL", "\"https://signalcaptchas.org/staging/registration/generate.html\"") buildConfigField("String", "RECAPTCHA_PROOF_URL", "\"https://signalcaptchas.org/staging/challenge/generate.html\"") buildConfigField("org.signal.libsignal.net.Network.Environment", "LIBSIGNAL_NET_ENV", "org.signal.libsignal.net.Network.Environment.STAGING") + buildConfigField("int", "LIBSIGNAL_LOG_LEVEL", "org.signal.libsignal.protocol.logging.SignalProtocolLogger.DEBUG") buildConfigField("String", "BUILD_ENVIRONMENT_TYPE", "\"Staging\"") buildConfigField("String", "STRIPE_PUBLISHABLE_KEY", "\"pk_test_sngOd8FnXNkpce9nPXawKrJD00kIDngZkD\"") diff --git a/app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java b/app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java index 0b71b50bd9..171a1a2a73 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java +++ b/app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java @@ -317,6 +317,7 @@ public class ApplicationContext extends MultiDexApplication implements AppForegr Log.initialize(RemoteConfig::internalUser, new AndroidLogger(), new PersistentLogger(this)); SignalProtocolLoggerProvider.setProvider(new CustomSignalProtocolLogger()); + SignalProtocolLoggerProvider.initializeLogging(BuildConfig.LIBSIGNAL_LOG_LEVEL); SignalExecutors.UNBOUNDED.execute(() -> { Log.blockUntilAllWritesFinished(); diff --git a/app/src/test/java/org/thoughtcrime/securesms/groups/GroupManagerV2Test_edit.kt b/app/src/test/java/org/thoughtcrime/securesms/groups/GroupManagerV2Test_edit.kt index 28ccd6f85e..ab35a825da 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/groups/GroupManagerV2Test_edit.kt +++ b/app/src/test/java/org/thoughtcrime/securesms/groups/GroupManagerV2Test_edit.kt @@ -20,6 +20,7 @@ import org.robolectric.annotation.Config import org.signal.core.util.Hex import org.signal.core.util.ThreadUtil import org.signal.core.util.logging.Log +import org.signal.libsignal.protocol.logging.SignalProtocolLogger import org.signal.libsignal.protocol.logging.SignalProtocolLoggerProvider import org.signal.libsignal.zkgroup.groups.GroupMasterKey import org.signal.libsignal.zkgroup.groups.GroupSecretParams @@ -80,6 +81,7 @@ class GroupManagerV2Test_edit { ThreadUtil.enforceAssertions = false Log.initialize(SystemOutLogger()) SignalProtocolLoggerProvider.setProvider(CustomSignalProtocolLogger()) + SignalProtocolLoggerProvider.initializeLogging(SignalProtocolLogger.INFO) val clientZkOperations = ClientZkOperations(server.getServerPublicParams()) diff --git a/dependencies.gradle.kts b/dependencies.gradle.kts index 95df25e5c3..6410aedbfc 100644 --- a/dependencies.gradle.kts +++ b/dependencies.gradle.kts @@ -15,7 +15,7 @@ dependencyResolutionManagement { version("exoplayer", "2.19.0") version("glide", "4.15.1") version("kotlin", "1.9.20") - version("libsignal-client", "0.47.0") + version("libsignal-client", "0.51.1") version("mp4parser", "1.9.39") version("android-gradle-plugin", "8.4.0") version("accompanist", "0.28.0") diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index f93fb2de80..39bc28c03d 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -8288,20 +8288,20 @@ https://docs.gradle.org/current/userguide/dependency_verification.html - - - + + + - - + + - - - + + + - - + + diff --git a/libsignal-service/src/main/java/org/whispersystems/signalservice/api/services/CdsiSocket.java b/libsignal-service/src/main/java/org/whispersystems/signalservice/api/services/CdsiSocket.java index dfa3975a6c..b54c63bd8f 100644 --- a/libsignal-service/src/main/java/org/whispersystems/signalservice/api/services/CdsiSocket.java +++ b/libsignal-service/src/main/java/org/whispersystems/signalservice/api/services/CdsiSocket.java @@ -3,6 +3,7 @@ package org.whispersystems.signalservice.api.services; import org.signal.cdsi.proto.ClientRequest; import org.signal.cdsi.proto.ClientResponse; import org.signal.libsignal.attest.AttestationDataException; +import org.signal.libsignal.attest.AttestationFailedException; import org.signal.libsignal.cds2.Cds2Client; import org.signal.libsignal.protocol.logging.Log; import org.signal.libsignal.protocol.util.Pair; @@ -165,8 +166,7 @@ final class CdsiSocket { webSocket.close(1000, "OK"); break; } - } catch (IOException | AttestationDataException | SgxCommunicationFailureException | AssertionError e) { - // TODO only catching AssertionError because of libsignal bug. Remove when bug is fixed. + } catch (IOException | AttestationDataException | AttestationFailedException | SgxCommunicationFailureException e) { Log.w(TAG, e); webSocket.close(1000, "OK"); emitter.tryOnError(e);