Nailathalang source
I-download ang source ZIP
CH-J SM Mobile
I-browse ang mga direktoryo at file ng isang partikular na release ng application.
CH-J / SM Mobile
175 file
sm-mobile-20261016T185235Z-8e93ecc1b59a
Idinagdag: · Binuo:
1
import '../core/failure.dart';2
import 'vault.dart';4
typedef TrustPrompt =5
Future<bool> Function(String endpoint, String type, String fingerprint);7
class HostVerifier {8
final Vault vault;9
HostVerifier(this.vault);10
Future<bool> verify(11
String endpoint,12
String type,13
String fingerprint,14
TrustPrompt prompt,15
) async {16
if (!RegExp(r'^SHA256:[A-Za-z0-9+/]{43}$').hasMatch(fingerprint)) {17
throw const Failure('hostRejected');18
}19
final epoch = vault.generation;20
final previous = vault.fingerprint(endpoint);21
if (previous != null) {22
if (previous != fingerprint) throw const Failure('hostChanged');23
return true;24
}25
if (!await prompt(endpoint, type, fingerprint)) {26
throw const Failure('hostRejected');27
}28
if (epoch != vault.generation) throw const Failure('locked');29
await vault.trust(endpoint, fingerprint);30
return true;31
}32
}SHA-256
abd25d6bc94824a18c99bac9cd4646d347dd37a381d02b27b852b44f69b2117dCH-J Proprietary Software License 1.14 · Ibinibigay ang source sa ilalim ng CH-J Proprietary Software License 1.14. Hindi binabago ng pagiging available nito ang mga tuntunin ng lisensya at hindi ito nagbibigay ng karagdagang karapatan.
SHA-256 ng archive
46e427a43e87af091004f36145590bda8fe90086dfb0f631afeb5029fb0b5655