Message7734

Author amak
Recipients amak, t-8ch
Date 2013-02-23.18:27:01
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1361644022.09.0.917367346065.issue2016@psf.upfronthosting.co.za>
In-reply-to
Content
> "According to the documentation of ssl.wrap_socket() SSLSockets are a subtype of socket.socket which defines rcv() and send()."

I see that now: The documentation says

"""
ssl.wrap_socket(sock, keyfile=None, certfile=None, server_side=False, cert_reqs=CERT_NONE, ssl_version={see docs}, ca_certs=None, do_handshake_on_connect=True, suppress_ragged_eofs=True, ciphers=None)

    Takes an instance sock of socket.socket, and returns an instance of ssl.SSLSocket, a subtype of socket.socket, which wraps the underlying socket in an SSL context
"""

The cpython 2.7 httplib also makes use of the send() and sendall() methods for transmitting data over SSLSockets.

But recv() is not used: instead the read() method of the makefile wrapper is used. An asymmetry in its design.

It's also the case that jython 2.5 never supported the makefile() method on ssl sockets. Which never affected httplib in 2.5, because it used a FakeSocket wrapper for ssl sockets.

In summary, the whole ssl support situation, including makefle, needs thorough revision jython 2.7, in the light of cpython 2.7 API and library changes.

Thanks for taking the time to report this issue: a fix will be forthcoming soon.
History
Date User Action Args
2013-02-23 18:27:02amaksetmessageid: <1361644022.09.0.917367346065.issue2016@psf.upfronthosting.co.za>
2013-02-23 18:27:02amaksetrecipients: + amak, t-8ch
2013-02-23 18:27:02amaklinkissue2016 messages
2013-02-23 18:27:01amakcreate