internal static void InitializeInternal() { lock (locker) { if (initialized) { return; } SystemDependencyProvider.Initialize(); InitializeProviderRegistration(); MobileTlsProvider provider; try { provider = CreateDefaultProviderImpl(); } catch (Exception ex) { throw new NotSupportedException("TLS Support not available.", ex); } if (provider == null) { throw new NotSupportedException("TLS Support not available."); } if (!providerCache.ContainsKey(provider.ID)) { providerCache.Add(provider.ID, provider); } defaultProvider = provider; initialized = true; } }
internal static void InitializeInternal(string provider) { lock (locker) { if (initialized) { throw new NotSupportedException("TLS Subsystem already initialized."); } SystemDependencyProvider.Initialize(); defaultProvider = LookupProvider(provider, true); initialized = true; } }
static AndroidPlatform() { var t = Type.GetType("Android.Runtime.AndroidEnvironment, Mono.Android", throwOnError: true); #if SECURITY_DEP trustEvaluateSsl = (Converter <List <byte[]>, bool>) Delegate.CreateDelegate(typeof(Converter <List <byte[]>, bool>), t, "TrustEvaluateSsl", ignoreCase: false, throwOnBindFailure: true); #if MONO_FEATURE_BTLS certStoreLookup = (Func <long, bool, byte[]>) Delegate.CreateDelegate(typeof(Func <long, bool, byte[]>), t, "CertStoreLookup", ignoreCase: false, throwOnBindFailure: true); #endif // MONO_FEATURE_BTLS SystemDependencyProvider.Initialize(); #endif // SECURITY_DEP getDefaultProxy = (Func <IWebProxy>)Delegate.CreateDelegate( typeof(Func <IWebProxy>), t, "GetDefaultProxy", ignoreCase: false, throwOnBindFailure: true); getInterfaceAddresses = (GetInterfaceAddressesDelegate)Delegate.CreateDelegate( typeof(GetInterfaceAddressesDelegate), t, "GetInterfaceAddresses", ignoreCase: false, throwOnBindFailure: false); freeInterfaceAddresses = (FreeInterfaceAddressesDelegate)Delegate.CreateDelegate( typeof(FreeInterfaceAddressesDelegate), t, "FreeInterfaceAddresses", ignoreCase: false, throwOnBindFailure: false); }