diff --git a/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs b/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs index 4c8424d7cc..43672d114d 100644 --- a/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs +++ b/OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs @@ -118,7 +118,15 @@ namespace OpenSim.Region.CoreModules.Scripting.HttpRequest return true; } - return chain.Build(new X509Certificate2(certificate)); + if ((((int)sslPolicyErrors) & ~4) != 0) + return false; + + if (ServicePointManager.CertificatePolicy != null) + { + ServicePoint sp = Request.ServicePoint; + return ServicePointManager.CertificatePolicy.CheckValidationResult (sp, certificate, Request, 0); + } + return true; } #region IHttpRequestModule Members @@ -464,4 +472,4 @@ namespace OpenSim.Region.CoreModules.Scripting.HttpRequest } } } -} \ No newline at end of file +}