This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author jlacoline
Recipients jlacoline, yselivanov
Date 2017-09-29.08:59:33
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1506675573.99.0.213398074469.issue31632@psf.upfronthosting.co.za>
In-reply-to
Content
The bug was encountered when using the HTTPS client of the aiohttp package. 

Calling the method set_protocol() on a SSL transport (_SSLProtocolTransport) does not have the expected result: the new protocol will never be used (i.e. its data_received() method won't be called). The previous one keeps receiving data.

The problem comes from asyncio/ssl_proto.py:308. In my understanding, _SSLProtocolTransport is modifying its local reference to the protocol but does not modify the reference in SSLProtocol, which is the one that is actually called.
So imo this line should look like "self.ssl_protocol._app_protocol = protocol"

I'll submit a github PR soon to fix this issue.
History
Date User Action Args
2017-09-29 08:59:34jlacolinesetrecipients: + jlacoline, yselivanov
2017-09-29 08:59:33jlacolinesetmessageid: <1506675573.99.0.213398074469.issue31632@psf.upfronthosting.co.za>
2017-09-29 08:59:33jlacolinelinkissue31632 messages
2017-09-29 08:59:33jlacolinecreate