diff --git a/MediaBrowser.Server.Implementations/Configuration/ServerConfigurationManager.cs b/MediaBrowser.Server.Implementations/Configuration/ServerConfigurationManager.cs index f8266a43f4..2f4c3f5eed 100644 --- a/MediaBrowser.Server.Implementations/Configuration/ServerConfigurationManager.cs +++ b/MediaBrowser.Server.Implementations/Configuration/ServerConfigurationManager.cs @@ -188,28 +188,15 @@ namespace MediaBrowser.Server.Implementations.Configuration { var serverConfig = (ServerConfiguration)newConfig; - var certPath = serverConfig.CertificatePath; + var newPath = serverConfig.CertificatePath; - if (!string.IsNullOrWhiteSpace(certPath)) + if (!string.IsNullOrWhiteSpace(newPath) + && !string.Equals(Configuration.CertificatePath ?? string.Empty, newPath)) { // Validate - if (!File.Exists(certPath)) + if (!FileSystem.FileExists(newPath)) { - throw new FileNotFoundException(string.Format("Certificate file '{0}' does not exist.", certPath)); - } - - try - { - var cert = new System.Security.Cryptography.X509Certificates.X509Certificate2(certPath); - - if (cert.PrivateKey == null) - { - throw new ArgumentException("Certificate does not contain a private key!"); - } - } - catch (Exception ex) - { - throw new ArgumentException(string.Format("Exception loading certificate: '{0}' - {1}", certPath, ex.Message)); + throw new FileNotFoundException(string.Format("Certificate file '{0}' does not exist.", newPath)); } } }