[MonoDevelop] Recent gmail smtp RemoteCertificateChainErrors error

Guido Van Hoecke guivho at gmail.com
Mon Jul 1 17:34:06 UTC 2013


Recently I get following error when trying to send mail from my Mono
ASP.net app via Gmail SMTP:

] SSL authentication error: RemoteCertificateChainErrors
] Description: HTTP 500. Error processing request.
] Stack Trace:
] System.InvalidOperationException: SSL authentication error: RemoteCertificateChainErrors
] at System.Net.Mail.SmtpClient.<callback>m__4 (System.Object sender, System.Security.Cryptography.X509Certificates.X509Certificate certificate, System.Security.Cryptography.X509Certificates.X509Chain chain, SslPolicyErrors sslPolicyErrors) [0x00000] in <filename unknown>:0 
] at System.Net.Security.SslStream+<BeginAuthenticateAsClient>c__AnonStoreyC.<>m__A (System.Security.Cryptography.X509Certificates.X509Certificate cert, System.Int32[] certErrors) [0x00000] in <filename unknown>:0 
] at Mono.Security.Protocol.Tls.SslClientStream.OnRemoteCertificateValidation (System.Security.Cryptography.X509Certificates.X509Certificate certificate, System.Int32[] errors) [0x00000] in <filename unknown>:0 
] at Mono.Security.Protocol.Tls.SslStreamBase.RaiseRemoteCertificateValidation (System.Security.Cryptography.X509Certificates.X509Certificate certificate, System.Int32[] errors) [0x00000] in <filename unknown>:0 
] at Mono.Security.Protocol.Tls.SslClientStream.RaiseServerCertificateValidation (System.Security.Cryptography.X509Certificates.X509Certificate certificate, System.Int32[] certificateErrors) [0x00000] in <filename unknown>:0 
] at Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.validateCertificates (Mono.Security.X509.X509CertificateCollection certificates) [0x00000] in <filename unknown>:0 
] at Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.ProcessAsTls1 () [0x00000] in <filename unknown>:0 
] at Mono.Security.Protocol.Tls.Handshake.HandshakeMessage.Process () [0x00000] in <filename unknown>:0 
] at (wrapper remoting-invoke-with-check) Mono.Security.Protocol.Tls.Handshake.HandshakeMessage:Process ()
] at Mono.Security.Protocol.Tls.ClientRecordProtocol.ProcessHandshakeMessage (Mono.Security.Protocol.Tls.TlsStream handMsg) [0x00000] in <filename unknown>:0 
] at Mono.Security.Protocol.Tls.RecordProtocol.InternalReceiveRecordCallback (IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 

I get this error in a web page that's been working for a couple of years

Here's the method I use to create and send the mail:

        public static bool HtmlMail (string @from, string to, string bcc, string subject, IEnumerable<string> attachments, string htmlBody)
            var mail = new MailMessage { From = new MailAddress (@from) };
            mail.To.Add (to);
            if (bcc.Length > 0)
                mail.Bcc.Add (bcc);
            mail.Subject = subject;
            mail.Body = htmlBody;
            mail.IsBodyHtml = true;
            foreach (var attachment in attachments) {
                mail.Attachments.Add (new Attachment (attachment));
            var smtp = new SmtpClient {
                Host = SmtpServer, 
                Port = SmtpPort,
                EnableSsl = true,
                UseDefaultCredentials = false,
                Credentials = new NetworkCredential(id, pw)
            try {
                smtp.Send (mail);
                return true;
            catch (WebException) {
                return false;

Where SmtpServer:SmtpPort are "smtp.gmail.com:587", and the (id, pw)
credentials are correct.

I have tried to follow the suggested approach in the second part of

] mozroots --import --ask-remove
] certmgr -ssl smtps://smtp.gmail.com:465

But the latter is not for tls (port 587) but for plain ssl (port 465)

I have no idea why this app suddenly generates

Any help is most welcome and would be sincerely appreciated!

With kind regards,


Isn't it ironic that many men spend a great part of their lives
avoiding marriage while single-mindedly pursuing those things that
would make them better prospects?

More information about the Monodevelop-list mailing list