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 [EMAIL PROTECTED] http://bugzilla.ximian.com/show_bug.cgi?id=76254 --- shadow/76254 2006-01-18 09:19:21.000000000 -0500 +++ shadow/76254.tmp.13776 2006-01-18 09:40:20.000000000 -0500 @@ -1,12 +1,12 @@ Bug#: 76254 Product: Mono: Class Libraries Version: 1.1 OS: unknown OS Details: Mandrake 9.2 and a realtime linux based on kernel 2.4 -Status: REOPENED +Status: ASSIGNED Resolution: Severity: Unknown Priority: Normal Component: Mono.Security AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] @@ -197,6 +197,49 @@ this.protocol.ReceiveRecord(this.innerStream); } if (certRequested && (this.context.ClientSettings.ClientCertificate == null)) + +------- Additional Comments From [EMAIL PROTECTED] 2006-01-18 09:40 ------- +Thanks, I'll try it - but I don't see how closing the socket will get +it out the loop (more than the actual code). I guess LastHandshakeMsg +is updated elsewhere in this case... + +I've been "playing" with a similar patch (not something I wanted to +put in SVN) just to see where else it could "hang"... + + +Index: Mono.Security.Protocol.Tls/SslServerStream.cs +=================================================================== +--- Mono.Security.Protocol.Tls/SslServerStream.cs (revision 55716) ++++ Mono.Security.Protocol.Tls/SslServerStream.cs (working copy) +@@ -226,10 +226,18 @@ + +this.protocol.SendRecord(HandshakeType.ServerHelloDone); + + // Receive client response, until the Client +Finished message +- // is received ++ // is received. IE can be interrupted at this +stage and never ++ // complete the handshake ++ DateTime complete = DateTime.Now.AddSeconds (10); + while (this.context.LastHandshakeMsg != +HandshakeType.Finished) + { + +this.protocol.ReceiveRecord(this.innerStream); ++ if (DateTime.Now > complete) ++ { ++ throw new TlsException( ++ +AlertDescription.HandshakeFailiure, ++ "The client stopped +the handshake."); ++ } + } + + if (certRequested && +(this.context.ClientSettings.ClientCertificate == null)) + _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
