CH-J SM MobileSSH کے ذریعے سرور کا انتظام
مینو
شائع شدہ سورس

CH-J SM Mobile

ایپلیکیشن کی کسی مخصوص ریلیز کی ڈائریکٹریز اور فائلیں دیکھیں۔

سورس ZIP ڈاؤن لوڈ کریں
CH-J / SM Mobile 175 فائلیں
sm-mobile-20261016T185235Z-8e93ecc1b59a شامل کیا گیا: · بلڈ کیا گیا:
host_verifier.dart شامل کیا گیا: تاریخ درج نہیں 913 B · 32 لائنیں
کوڈ فائل ڈاؤن لوڈ کریں
1import '../core/failure.dart';
2import 'vault.dart';
4typedef TrustPrompt =
5 Future<bool> Function(String endpoint, String type, String fingerprint);
7class 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 }
SHA-256abd25d6bc94824a18c99bac9cd4646d347dd37a381d02b27b852b44f69b2117d

CH-J Proprietary Software License 1.14 · سورس CH-J Proprietary Software License 1.14 کے تحت فراہم کیا جاتا ہے۔ اس کی دستیابی لائسنس کی شرائط نہیں بدلتی اور نہ ہی اضافی حقوق دیتی ہے۔

آرکائیو کا SHA-25646e427a43e87af091004f36145590bda8fe90086dfb0f631afeb5029fb0b5655
فائلیں