From fb4f5109090e26329d3a3e1402df3f977e9edbd2 Mon Sep 17 00:00:00 2001 From: Taloth Saldono Date: Fri, 30 Jun 2017 21:28:15 +0200 Subject: [PATCH] Revert "Fixed: Support for Mono 5.x with the newer BoringTLS provider." This reverts commit 5b722a3a48a03170f2ed451a379a4ed7c88cb4f5. --- .../Security/SecurityProtocolPolicy.cs | 7 -- .../HealthCheck/Checks/MonoTlsCheck.cs | 69 ------------------- src/NzbDrone.Core/NzbDrone.Core.csproj | 4 -- 3 files changed, 80 deletions(-) delete mode 100644 src/NzbDrone.Core/HealthCheck/Checks/MonoTlsCheck.cs diff --git a/src/NzbDrone.Common/Security/SecurityProtocolPolicy.cs b/src/NzbDrone.Common/Security/SecurityProtocolPolicy.cs index 17c625ef6..03fcb97d2 100644 --- a/src/NzbDrone.Common/Security/SecurityProtocolPolicy.cs +++ b/src/NzbDrone.Common/Security/SecurityProtocolPolicy.cs @@ -1,7 +1,6 @@ using System; using System.Net; using NLog; -using NzbDrone.Common.EnvironmentInfo; using NzbDrone.Common.Instrumentation; namespace NzbDrone.Common.Security @@ -15,12 +14,6 @@ namespace NzbDrone.Common.Security public static void Register() { - if (OsInfo.IsNotWindows) - { - // This was never meant to be used on mono, and will cause issues with mono 5 and higher if btls is enabled. - return; - } - try { // TODO: In v3 we should drop support for SSL3 because its very insecure. Only leaving it enabled because some people might rely on it. diff --git a/src/NzbDrone.Core/HealthCheck/Checks/MonoTlsCheck.cs b/src/NzbDrone.Core/HealthCheck/Checks/MonoTlsCheck.cs deleted file mode 100644 index 8389248b8..000000000 --- a/src/NzbDrone.Core/HealthCheck/Checks/MonoTlsCheck.cs +++ /dev/null @@ -1,69 +0,0 @@ -using System; -using System.Linq; -using System.Reflection; -using NLog; -using NzbDrone.Common.EnvironmentInfo; - -namespace NzbDrone.Core.HealthCheck.Checks -{ - public class MonoTlsCheck : HealthCheckBase - { - private readonly IPlatformInfo _platformInfo; - private readonly Logger _logger; - - public MonoTlsCheck(IPlatformInfo platformInfo, Logger logger) - { - _platformInfo = platformInfo; - _logger = logger; - } - - public override HealthCheck Check() - { - if (!PlatformInfo.IsMono) - { - return new HealthCheck(GetType()); - } - - var monoVersion = _platformInfo.Version; - - if (monoVersion >= new Version("5.0.0") && Environment.GetEnvironmentVariable("MONO_TLS_PROVIDER") == "legacy") - { - _logger.Debug("Mono version 5.0.0 or higher and legacy TLS provider is selected, recommending user to switch to btls."); - return new HealthCheck(GetType(), HealthCheckResult.Warning, "Sonarr now supports Mono 5.x with btls enabled, consider removing MONO_TLS_PROVIDER=legacy option"); - } - - return new HealthCheck(GetType()); - } - - public override bool CheckOnSchedule => false; - - private bool HasMonoBug18599() - { - _logger.Debug("mono version 3.4.0, checking for mono bug #18599."); - var numberFormatterType = Type.GetType("System.NumberFormatter"); - - if (numberFormatterType == null) - { - _logger.Debug("Couldn't find System.NumberFormatter. Aborting test."); - return false; - } - - var fieldInfo = numberFormatterType.GetField("userFormatProvider", - BindingFlags.Static | BindingFlags.NonPublic); - - if (fieldInfo == null) - { - _logger.Debug("userFormatProvider field not found, version likely preceeds the official v3.4.0."); - return false; - } - - if (fieldInfo.GetCustomAttributes(false).Any(v => v is ThreadStaticAttribute)) - { - _logger.Debug("userFormatProvider field doesn't contain the ThreadStatic Attribute, version is affected by the critical bug #18599."); - return true; - } - - return false; - } - } -} diff --git a/src/NzbDrone.Core/NzbDrone.Core.csproj b/src/NzbDrone.Core/NzbDrone.Core.csproj index b2d222e8e..a77da315c 100644 --- a/src/NzbDrone.Core/NzbDrone.Core.csproj +++ b/src/NzbDrone.Core/NzbDrone.Core.csproj @@ -619,10 +619,6 @@ - - - -