diff --git a/app/src/main/java/org/thoughtcrime/securesms/linkdevice/LinkDeviceRepository.kt b/app/src/main/java/org/thoughtcrime/securesms/linkdevice/LinkDeviceRepository.kt index 0bee66e448..ea1ee5fcdb 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/linkdevice/LinkDeviceRepository.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/linkdevice/LinkDeviceRepository.kt @@ -156,7 +156,8 @@ object LinkDeviceRepository { profileKey = ProfileKeyUtil.getSelfProfileKey(), masterKey = SignalStore.svr.masterKey, code = verificationCodeResult.verificationCode, - ephemeralMessageBackupKey = ephemeralMessageBackupKey + ephemeralMessageBackupKey = ephemeralMessageBackupKey, + mediaRootBackupKey = SignalStore.backup.mediaRootBackupKey ) return when (deviceLinkResult) { diff --git a/libsignal-service/src/main/java/org/whispersystems/signalservice/api/link/LinkDeviceApi.kt b/libsignal-service/src/main/java/org/whispersystems/signalservice/api/link/LinkDeviceApi.kt index 7dfa25b218..2460c3b3d3 100644 --- a/libsignal-service/src/main/java/org/whispersystems/signalservice/api/link/LinkDeviceApi.kt +++ b/libsignal-service/src/main/java/org/whispersystems/signalservice/api/link/LinkDeviceApi.kt @@ -10,6 +10,7 @@ import org.signal.libsignal.protocol.IdentityKeyPair import org.signal.libsignal.protocol.ecc.ECPublicKey import org.signal.libsignal.zkgroup.profiles.ProfileKey import org.whispersystems.signalservice.api.NetworkResult +import org.whispersystems.signalservice.api.backup.MediaRootBackupKey import org.whispersystems.signalservice.api.backup.MessageBackupKey import org.whispersystems.signalservice.api.kbs.MasterKey import org.whispersystems.signalservice.api.push.ServiceId.ACI @@ -62,6 +63,7 @@ class LinkDeviceApi(private val pushServiceSocket: PushServiceSocket) { pniIdentityKeyPair: IdentityKeyPair, profileKey: ProfileKey, masterKey: MasterKey, + mediaRootBackupKey: MediaRootBackupKey, code: String, ephemeralMessageBackupKey: MessageBackupKey? ): NetworkResult { @@ -79,6 +81,7 @@ class LinkDeviceApi(private val pushServiceSocket: PushServiceSocket) { provisioningCode = code, provisioningVersion = ProvisioningVersion.CURRENT.value, masterKey = masterKey.serialize().toByteString(), + mediaRootBackupKey = mediaRootBackupKey.value.toByteString(), ephemeralBackupKey = ephemeralMessageBackupKey?.value?.toByteString() ) val ciphertext = cipher.encrypt(message)