mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-02 12:07:55 +00:00
Set trust requirement even if setEncryption is false. (#4823)
* fix: Set trust requirement even if `setEncryption` is `false`. - Calls `builder.decryptionSettings` with sender trust requirement, even if `setEncryption` is false`. - Fixes https://github.com/element-hq/element-x-ios/issues/4702 * docs: Add doc comment explaining necessity of fix. * feat: Set `roomKeyRecipientStrategy` alongside trust requirement.
This commit is contained in:
@@ -43,16 +43,19 @@ extension ClientBuilder {
|
||||
.backupDownloadStrategy(backupDownloadStrategy: .afterDecryptionFailure)
|
||||
.enableShareHistoryOnInvite(enableShareHistoryOnInvite: enableKeyShareOnInvite)
|
||||
.autoEnableBackups(autoEnableBackups: true)
|
||||
|
||||
if enableOnlySignedDeviceIsolationMode {
|
||||
builder = builder
|
||||
.roomKeyRecipientStrategy(strategy: .identityBasedStrategy)
|
||||
.decryptionSettings(decryptionSettings: .init(senderDeviceTrustRequirement: .crossSignedOrLegacy))
|
||||
} else {
|
||||
builder = builder
|
||||
.roomKeyRecipientStrategy(strategy: .errorOnVerifiedUserProblem)
|
||||
.decryptionSettings(decryptionSettings: .init(senderDeviceTrustRequirement: .untrusted))
|
||||
}
|
||||
}
|
||||
|
||||
// Set recipient strategy and trust requirement even if `setupEncryption` is false to ensure messages
|
||||
// from insecure devices aren't displayed in push notifications.
|
||||
// See https://github.com/element-hq/element-x-ios/issues/4702.
|
||||
if enableOnlySignedDeviceIsolationMode {
|
||||
builder = builder
|
||||
.roomKeyRecipientStrategy(strategy: .identityBasedStrategy)
|
||||
.decryptionSettings(decryptionSettings: .init(senderDeviceTrustRequirement: .crossSignedOrLegacy))
|
||||
} else {
|
||||
builder = builder
|
||||
.roomKeyRecipientStrategy(strategy: .errorOnVerifiedUserProblem)
|
||||
.decryptionSettings(decryptionSettings: .init(senderDeviceTrustRequirement: .untrusted))
|
||||
}
|
||||
|
||||
if let httpProxy {
|
||||
|
||||
Reference in New Issue
Block a user