Disable key request dialogs with cross-signing
Cross-signing verification is meant to replace the old key share between devices flow. This disables it when the cross-signing lab is enabled. Fixes https://github.com/vector-im/riot-web/issues/11904pull/21833/head
							parent
							
								
									e88f062f01
								
							
						
					
					
						commit
						fb9962b08e
					
				|  | @ -1,5 +1,6 @@ | |||
| /* | ||||
| Copyright 2017 Vector Creations Ltd | ||||
| Copyright 2020 The Matrix.org Foundation C.I.C. | ||||
| 
 | ||||
| Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| you may not use this file except in compliance with the License. | ||||
|  | @ -17,6 +18,8 @@ limitations under the License. | |||
| import * as sdk from './index'; | ||||
| import Modal from './Modal'; | ||||
| 
 | ||||
| // TODO: We can remove this once cross-signing is the only way.
 | ||||
| // https://github.com/vector-im/riot-web/issues/11908
 | ||||
| export default class KeyRequestHandler { | ||||
|     constructor(matrixClient) { | ||||
|         this._matrixClient = matrixClient; | ||||
|  | @ -30,6 +33,11 @@ export default class KeyRequestHandler { | |||
|     } | ||||
| 
 | ||||
|     handleKeyRequest(keyRequest) { | ||||
|         // Ignore own device key requests if cross-signing lab enabled
 | ||||
|         if (SettingsStore.isFeatureEnabled("feature_cross_signing")) { | ||||
|             return; | ||||
|         } | ||||
| 
 | ||||
|         const userId = keyRequest.userId; | ||||
|         const deviceId = keyRequest.deviceId; | ||||
|         const requestId = keyRequest.requestId; | ||||
|  | @ -60,6 +68,11 @@ export default class KeyRequestHandler { | |||
|     } | ||||
| 
 | ||||
|     handleKeyRequestCancellation(cancellation) { | ||||
|         // Ignore own device key requests if cross-signing lab enabled
 | ||||
|         if (SettingsStore.isFeatureEnabled("feature_cross_signing")) { | ||||
|             return; | ||||
|         } | ||||
| 
 | ||||
|         // see if we can find the request in the queue
 | ||||
|         const userId = cancellation.userId; | ||||
|         const deviceId = cancellation.deviceId; | ||||
|  |  | |||
|  | @ -1383,6 +1383,8 @@ export default createReactClass({ | |||
|         cli.on("Session.logged_out", () => dft.stop()); | ||||
|         cli.on("Event.decrypted", (e, err) => dft.eventDecrypted(e, err)); | ||||
| 
 | ||||
|         // TODO: We can remove this once cross-signing is the only way.
 | ||||
|         // https://github.com/vector-im/riot-web/issues/11908
 | ||||
|         const krh = new KeyRequestHandler(cli); | ||||
|         cli.on("crypto.roomKeyRequest", (req) => { | ||||
|             krh.handleKeyRequest(req); | ||||
|  |  | |||
|  | @ -22,6 +22,9 @@ import * as sdk from '../../../index'; | |||
| 
 | ||||
| import { _t, _td } from '../../../languageHandler'; | ||||
| 
 | ||||
| // TODO: We can remove this once cross-signing is the only way.
 | ||||
| // https://github.com/vector-im/riot-web/issues/11908
 | ||||
| 
 | ||||
| /** | ||||
|  * Dialog which asks the user whether they want to share their keys with | ||||
|  * an unverified device. | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 J. Ryan Stinnett
						J. Ryan Stinnett