diff --git a/changelog.d/5115.bugfix b/changelog.d/5115.bugfix new file mode 100644 index 0000000000..6b3ca4a7b4 --- /dev/null +++ b/changelog.d/5115.bugfix @@ -0,0 +1 @@ +Stop using unstable names for withheld codes diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/EventType.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/EventType.kt index fa3a9f6acd..656a20a62e 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/EventType.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/EventType.kt @@ -87,7 +87,7 @@ object EventType { // Key share events const val ROOM_KEY_REQUEST = "m.room_key_request" const val FORWARDED_ROOM_KEY = "m.forwarded_room_key" - const val ROOM_KEY_WITHHELD = "org.matrix.room_key.withheld" + val ROOM_KEY_WITHHELD = listOf("m.room_key.withheld", "org.matrix.room_key.withheld") const val REQUEST_SECRET = "m.secret.request" const val SEND_SECRET = "m.secret.send" diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/DefaultCryptoService.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/DefaultCryptoService.kt index 850a4379ca..42783eb8a2 100755 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/DefaultCryptoService.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/DefaultCryptoService.kt @@ -820,7 +820,7 @@ internal class DefaultCryptoService @Inject constructor( EventType.SEND_SECRET -> { onSecretSendReceived(event) } - EventType.ROOM_KEY_WITHHELD -> { + in EventType.ROOM_KEY_WITHHELD -> { onKeyWithHeldReceived(event) } else -> { @@ -869,7 +869,7 @@ internal class DefaultCryptoService @Inject constructor( senderKey = withHeldContent.senderKey, fromDevice = withHeldContent.fromDevice, event = Event( - type = EventType.ROOM_KEY_WITHHELD, + type = EventType.ROOM_KEY_WITHHELD.first(), senderId = senderId, content = event.getClearContent() ) diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/IncomingKeyRequestManager.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/IncomingKeyRequestManager.kt index 7f36224dae..5eec293ac6 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/IncomingKeyRequestManager.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/IncomingKeyRequestManager.kt @@ -315,7 +315,7 @@ internal class IncomingKeyRequestManager @Inject constructor( ) val params = SendToDeviceTask.Params( - EventType.ROOM_KEY_WITHHELD, + EventType.ROOM_KEY_WITHHELD.first(), MXUsersDevicesMap().apply { setObject(request.requestingUserId, request.requestingDeviceId, withHeldContent) } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/algorithms/megolm/MXMegolmEncryption.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/algorithms/megolm/MXMegolmEncryption.kt index ceaee582c7..d524acbe81 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/algorithms/megolm/MXMegolmEncryption.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/algorithms/megolm/MXMegolmEncryption.kt @@ -365,7 +365,7 @@ internal class MXMegolmEncryption( fromDevice = myDeviceId ) val params = SendToDeviceTask.Params( - EventType.ROOM_KEY_WITHHELD, + EventType.ROOM_KEY_WITHHELD.first(), MXUsersDevicesMap().apply { targets.forEach { setObject(it.userId, it.deviceId, withHeldContent) diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/model/OutgoingKeyRequestEntity.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/model/OutgoingKeyRequestEntity.kt index 854d148b76..42cc5978cd 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/model/OutgoingKeyRequestEntity.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/model/OutgoingKeyRequestEntity.kt @@ -117,7 +117,7 @@ internal open class OutgoingKeyRequestEntity( private fun eventToResult(event: Event): RequestResult? { return when (event.getClearType()) { - EventType.ROOM_KEY_WITHHELD -> { + in EventType.ROOM_KEY_WITHHELD -> { event.content.toModel()?.code?.let { RequestResult.Failure(it) }