[Mono-bugs] [Bug 69805][Nor] Changed - SslClientStream - Server Certificate Validation
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Sat, 27 Nov 2004 08:08:54 -0500 (EST)
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by meddochat@zonnet.nl.
http://bugzilla.ximian.com/show_bug.cgi?id=69805
--- shadow/69805 2004-11-26 16:47:53.000000000 -0500
+++ shadow/69805.tmp.5731 2004-11-27 08:08:54.000000000 -0500
@@ -246,6 +246,60 @@
This is possible if you have some "bad" files in your certificate
store. A good way to be sure is to put a breakpoint in the
validateCertificates method and step into the chain building process.
If you don't have a debugger then remove the "try/catch" clause around
line 228. The exception thrown should give us some clues.
+
+------- Additional Comments From meddochat@zonnet.nl 2004-11-27 08:08 -------
+after editing SslClientStream.NegotiateHandshake, i get the following
+exception message:
+
+System.IO.IOException: The authentication or decryption has failed. --
+-> System.
+Security.Cryptography.CryptographicException: Specified key is not a
+valid size
+for this algorithm.
+ at System.Security.Cryptography.AsymmetricAlgorithm.set_KeySize
+(Int32 value)
+ at System.Security.Cryptography.RSACryptoServiceProvider..ctor
+(Int32 dwKeySize, CspParameters parameters, Boolean useDefaultKeySize)
+ at Mono.Security.X509.X509Certificate.get_RSA() in
+e:\mcs\class\Mono.Security\Mono.Security.X509\X509Certificate.cs:line
+334
+ at
+Mono.Security.Protocol.Tls.TlsServerSettings.UpdateCertificateRSA()
+in
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\TlsServerSetting
+s.cs:line 119
+ at
+Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.Updat
+e() in
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls.Handshake.Client
+\TlsServerCertificate.cs:line 62
+ at
+Mono.Security.Protocol.Tls.ClientRecordProtocol.ProcessHandshakeMessag
+e(TlsStream handMsg) in
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\ClientRecordProt
+ocol.cs:line 100
+ at Mono.Security.Protocol.Tls.RecordProtocol.ReceiveRecord() in
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\RecordProtocol.c
+s:line 133
+ at Mono.Security.Protocol.Tls.SslClientStream.NegotiateHandshake()
+in
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\SslClientStream.
+cs:line 706
+ --- End of inner exception stack trace ---
+ at Mono.Security.Protocol.Tls.SslClientStream.NegotiateHandshake()
+in
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\SslClientStream.
+cs:line 754
+ at Mono.Security.Protocol.Tls.SslClientStream.BeginRead(Byte[]
+buffer, Int32offset, Int32 count, AsyncCallback callback, Object
+state) in
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\SslClientStream.
+cs:line 429
+ at Mono.Security.Protocol.Tls.SslClientStream.Read(Byte[] buffer,
+Int32 offset, Int32 count) in
+e:\mcs\class\Mono.Security\Mono.Security.Protocol.Tls\SslClientStream.
+cs:line 615
+ at Indy.Sockets.Tls.IOHandlerTls.SetPassThrough(Boolean AValue)