Upgrade to rustls-platform-verifier:0.2.0 (#7791)

* Upgrade to `rustls-platform-verifier:0.2.0`.

This re-enables certificate revocation checks, but v0.2.0 contains a list of CRL servers that can be accessed using clear text requests to check the validity of certain certificates, which should fix the issue that prevented us from using certificate revocation and at the same time strengthening the security of the client app.

Since we already had some network configuration in Element X, and `network_security_config.xml` files can't be merged, what we can do is manually download and merge the XML contents using `tools/dependencies/update_rustls_platform_verifier.py` like this:

```sh
./update_rustls_platform_verifier.py 0.2.0
```

It will automatically bump the Gradle dependency and merge the security config entries.

* Bump SDK bindings to `v26.09.28`, containing the rustls bump on the SDK side

* Fix unused resources caused by `app/src/main/res/xml/network_security_config_element.xml`
This commit is contained in:
Jorge Martin Espinosa
2026-09-28 17:35:33 +02:00
committed by GitHub
parent 0f98c5c0e0
commit 03fd288c47
16 changed files with 595 additions and 441 deletions
+1 -1
View File
@@ -28,7 +28,7 @@ dependencies {
} else {
debugImplementation(libs.matrix.sdk)
}
implementation(projects.libraries.rustlsTls)
implementation(variantOf(libs.rustls.platform.verifier) { artifactType("aar") })
implementation(projects.appconfig)
implementation(projects.features.enterprise.api)
@@ -0,0 +1,22 @@
/*
* Copyright (c) 2026 Element Creations Ltd.
*
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
* Please see LICENSE files in the repository root for full details.
*/
package org.matrix.rustsdk
import android.content.Context
/**
* This class is used to initialize the Rust SDK on Android and give it access to an Android [Context].
*/
object Android {
init {
System.loadLibrary("matrix_sdk_ffi")
}
@JvmStatic
external fun init(context: Context)
}
@@ -40,6 +40,8 @@ internal fun aRustEventTimelineItem(
canBeRepliedTo: Boolean = true,
reactions: List<Reaction> = emptyList(),
lazyProvider: LazyTimelineItemProvider = FakeFfiLazyTimelineItemProvider(),
editSendState: EventSendState? = null,
redactionSendState: EventSendState? = null,
) = EventTimelineItem(
isRemote = isRemote,
eventOrTransactionId = eventOrTransactionId,
@@ -59,4 +61,6 @@ internal fun aRustEventTimelineItem(
canBeRepliedTo = canBeRepliedTo,
reactions = reactions,
lazyProvider = lazyProvider,
editSendState = editSendState,
redactionSendState = redactionSendState,
)