My guess is that the exception we’re reporting is either of the wrong type or 
doesn’t have the right information.  ssl.SSLSocket.read is catching SSLError 
and it looks like we’d probably throw a socket.SocketError instead.

I’ve opened this bug: 
http://ironpython.codeplex.com/WorkItem/View.aspx?WorkItemId=26778

Thanks for beating on ssl – it obviously still has a few rough edges but 
hopefully we can collect them all and get them fixed.

From: users-boun...@lists.ironpython.com 
[mailto:users-boun...@lists.ironpython.com] On Behalf Of qiuyin...@sohu.com
Sent: Wednesday, April 14, 2010 3:04 AM
To: Discussion of IronPython
Subject: Re: [IronPython] 2.6.1 implements ssl module, but it crash...

I noticed that there is a wrap_socket() argument: suppress_ragged_eofs

The parameter suppress_ragged_eofs specifies how the SSLSocket.read() method 
should signal unexpected EOF from the other end of the connection. If specified 
as True<constants.html#True> (the default), it returns a normal EOF in response 
to unexpected EOF errors raised from the underlying socket; if 
False<constants.html#False>, it will raise the exceptions back to the caller.

But not working

----- 原文 -----

发件人: qiuyin...@sohu.com
主 题: Re: [IronPython] 2.6.1 implements ssl module, but it crash...
时 间: 2010年4月14日 11:48:07

I traced the bug and found it occurred when our imap server close connection 
after imap authentication.

It seems that SSLSocket.read() cannot raise exception in this situation. It 
return 0.

Then IMAP4_SSL.readline() go into infiniteloop:

        def readline(self):
            """Read line from remote."""
            line = []
            while 1:
                char = self.sslobj.read(1)
                line.append(char)
                if char == "\n": return ''.join(line)

I would modify imaplib.py to resolve the problem. But I think it's a bug of 
SSLSocket.read(), right?
_______________________________________________
Users mailing list
Users@lists.ironpython.com
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

Reply via email to