شائع شدہ سورس
سورس ZIP ڈاؤن لوڈ کریں
CH-J SM Mobile
ایپلیکیشن کی کسی مخصوص ریلیز کی ڈائریکٹریز اور فائلیں دیکھیں۔
CH-J / SM Mobile
175 فائلیں
sm-mobile-20261016T185235Z-8e93ecc1b59a
شامل کیا گیا: · بلڈ کیا گیا:
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 · سورس CH-J Proprietary Software License 1.14 کے تحت فراہم کیا جاتا ہے۔ اس کی دستیابی لائسنس کی شرائط نہیں بدلتی اور نہ ہی اضافی حقوق دیتی ہے۔
آرکائیو کا SHA-256
46e427a43e87af091004f36145590bda8fe90086dfb0f631afeb5029fb0b5655